Changeset 152 for trunk/src/SDMath.h


Ignore:
Timestamp:
12/26/04 20:51:14 (19 years ago)
Author:
kil064
Message:

function 'add' and 'multiply' now take arg. doAll to
indicate whether operation to be applied to
all spectral or cursor selection only.

Combine functions 'localMultiply' and 'localAdd' into
'localOperate'

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/SDMath.h

    r146 r152  
    4242
    4343namespace SDMath {
    44   //public:
     44
     45// Quotient
     46
    4547  casa::CountedPtr<SDMemTable> quotient(const casa::CountedPtr<SDMemTable>& on,
    4648                                         const casa::CountedPtr<SDMemTable>& off);
    47 //
    48   void multiplyInSitu(SDMemTable* in, casa::Float factor);
     49
     50// Multiply
     51
     52  void multiplyInSitu(SDMemTable* in, casa::Float factor, casa::Bool all);
    4953  casa::CountedPtr<SDMemTable> multiply(const casa::CountedPtr<SDMemTable>& in,
    50                                         casa::Float factor);
    51 //
     54                                        casa::Float factor, casa::Bool all);
     55
     56// Addition
     57
     58  void addInSitu (SDMemTable* in, casa::Float offset, casa::Bool all);
    5259  casa::CountedPtr<SDMemTable> add(const casa::CountedPtr<SDMemTable>& in,
    53                              casa::Float offset);
    54  
     60                                   casa::Float offset, casa::Bool all);
     61
     62//  Hanning
     63
    5564  casa::CountedPtr<SDMemTable> hanning(const casa::CountedPtr<SDMemTable>& in);
     65
     66// Bin up
     67
     68  casa::CountedPtr<SDMemTable> bin(const casa::CountedPtr<SDMemTable>& in,
     69                             casa::Int width);
     70
     71// Average in time
    5672
    5773  casa::CountedPtr<SDMemTable>
     
    6076           bool scanAverage, const std::string& weightStr);
    6177
     78// Average polarizations
     79
    6280  casa::CountedPtr<SDMemTable>
    6381  averagePol(const casa::CountedPtr<SDMemTable>& in, const casa::Vector<casa::Bool>& mask);
    6482
     83// Statistics
     84
    6585  std::vector<float> statistic(const casa::CountedPtr<SDMemTable>& in,
    6686                                const std::vector<bool>& mask, const std::string& which);
    67  
    68   casa::CountedPtr<SDMemTable> bin(const casa::CountedPtr<SDMemTable>& in,
    69                              casa::Int width);
    7087
    7188// private (not actually...)
    7289
     90// Weighting type for time averaging
     91
    7392  enum weightType {NONE,VAR,TSYS};
     93
     94// Function to use accumulate data during time averaging
    7495
    7596  void accumulate (casa::Double& timeSum, casa::Double& intSum, casa::Int& nAccum,
     
    82103                   casa::Bool useMask, weightType wtType);
    83104
     105// Function to fill Scan Container when averaging in time
     106
    84107  void fillSDC (SDContainer& sc, const casa::Array<casa::Bool>& mask,
    85108                const casa::Array<casa::Float>& data,
     
    89112                const casa::Vector<casa::uInt>& freqID);
    90113
    91   SDMemTable* localMultiply (const SDMemTable& in, casa::Float factor);
     114// Function to normalize data when averaging in time
    92115
    93116  void normalize (casa::MaskedArray<casa::Float>& data,
     
    95118                  const casa::Array<casa::Float>& nPts,
    96119                  weightType wtType, casa::Int axis, casa::Int nAxes);
     120
     121// Functions for simple mathematical operations.  what=0 (mul) or 1 (add)
     122
     123  SDMemTable* localOperate (const SDMemTable& in, casa::Float offset,
     124                            casa::Bool doAll, casa::uInt what);
     125
     126// Function to get the current cursor location
     127   void getCursorLocation (casa::IPosition& start, casa::IPosition& end,
     128                           const SDMemTable& in);
    97129};
    98130
Note: See TracChangeset for help on using the changeset viewer.