casa::PlotMSVBAverager Class Reference

A class to average VisBuffers for PlotMS. More...

#include <PlotMSVBAverager.h>

List of all members.

Public Member Functions

 PlotMSVBAverager (Int nAnt)
 Construct from the number of antennas, the averaging interval and the pre-normalization flag.
 ~PlotMSVBAverager ()
 Null destructor.
void setBlnAveraging (Bool doBln)
 Set up baseline averaging.
void setAntAveraging (Bool doAnt)
 Set up antenna averaging.
void setScalarAve (Bool doScalar)
 Set scalar averaging flag.
void setNoData ()
 Control which data column to average.
void setDoVC ()
void setDoMVC ()
void setDoCVC ()
void setDoFC ()
void setDoUVW ()
void accumulate (vi::VisBuffer2 &vb)
 Accumulate a VisBuffer.
void finalizeAverage ()
 Finalize averaging.
vi::VisBuffer2aveVisBuff ()
 Return a reference to the result.

Private Member Functions

 PlotMSVBAverager ()
 Prohibit null constructor, copy constructor and assignment for now.
PlotMSVBAverageroperator= (const PlotMSVBAverager &)
 PlotMSVBAverager (const PlotMSVBAverager &)
Int & prtlev ()
 Diagnostic printing level.
void initialize (vi::VisBuffer2 &vb)
 Initialize the next accumulation interval.
void simpAccumulate (vi::VisBuffer2 &vb)
 Different accumulate versions.
void antAccumulate (vi::VisBuffer2 &vb)
void verifyCrosshands (vi::VisBuffer2 &vb)
 Verify zero or two crosshands present (if antAve_p).
Int baseline (const Int &ant1, const Int &ant2)
 Hash function to return the row offset for an interferometer (ant1, ant2).
void convertToAP (Cube< Complex > &d)
 Convert r/i to a/p.
void fillIds (Int nrows)
 fill vector that is resized larger

Private Attributes

Int nAnt_p
 Number of antennas, correlations, and channels.
Int nCorr_p
Int nChan_p
Int nBlnMax_p
Bool chanIndepWt_p
 Weights in input VBs are chan-independent.
Vector< Bool > blnOK_p
 Validation by baseline (if False, no attempt to accumulate this baseline).
Bool blnAve_p
 Are we averaging baselines together?
Bool antAve_p
 Are we averaging antennas together?
Bool inCoh_p
 Are we incoherently (scalar) averaging?
Double timeRef_p
 Accumulation helpers.
Double minTime_p
Double maxTime_p
Double aveTime_p
Double aveInterval_p
Vector< Double > blnWtSum_p
Double vbWtSum_p
Int aveScan_p
Bool doVC_p
 Optional averaging triggers.
Bool doMVC_p
Bool doCVC_p
Bool doFC_p
Bool doUVW_p
Bool doWC_p
vi::VisBuffer2avBuf_p
 Accumulation buffer.
Bool initialized_p
 Keep track of initialization state.
Vector< Int > jcor_p
 Correlation list for cross-hand swapping.
Int prtlev_
 Diagnostic print level.
Cube< Complex > avgVisCube_
 Mutable arrays, set in avBuf_p when finalized.
Cube< Complex > avgModelCube_
Cube< Complex > avgCorrectedCube_
Cube< Float > avgFloatCube_
Cube< Bool > avgFlagCube_
Vector< Bool > avgFlagRow_
Cube< Float > avgWeight_
Matrix< Double > avgUvw_
Vector< Int > avgAntenna1_
Vector< Int > avgAntenna2_
Vector< Double > avgTime_
Vector< Double > avgTimeInterval_
Vector< Int > avgScan_
Vector< Int > fieldid_
 Need to resize these in final avBuf.
Vector< Int > spw_
Vector< Int > obsid_
Vector< Int > stateid_

Detailed Description

A class to average VisBuffers for PlotMS.

Intended use:

Public interface

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

Synopsis

This class averages VisBuffers together for PlotMS

Example

Motivation

Thrown Exceptions

To Do

Definition at line 74 of file PlotMSVBAverager.h.


Constructor & Destructor Documentation

casa::PlotMSVBAverager::PlotMSVBAverager ( Int  nAnt  ) 

Construct from the number of antennas, the averaging interval and the pre-normalization flag.

casa::PlotMSVBAverager::~PlotMSVBAverager (  ) 

Null destructor.

casa::PlotMSVBAverager::PlotMSVBAverager (  )  [private]

Prohibit null constructor, copy constructor and assignment for now.

casa::PlotMSVBAverager::PlotMSVBAverager ( const PlotMSVBAverager  )  [private]

Member Function Documentation

void casa::PlotMSVBAverager::accumulate ( vi::VisBuffer2 vb  )  [inline]

Accumulate a VisBuffer.

Definition at line 105 of file PlotMSVBAverager.h.

References antAccumulate(), antAve_p, and simpAccumulate().

void casa::PlotMSVBAverager::antAccumulate ( vi::VisBuffer2 vb  )  [private]

Referenced by accumulate().

vi::VisBuffer2& casa::PlotMSVBAverager::aveVisBuff (  )  [inline]

Return a reference to the result.

Definition at line 111 of file PlotMSVBAverager.h.

References avBuf_p.

Int casa::PlotMSVBAverager::baseline ( const Int &  ant1,
const Int &  ant2 
) [private]

Hash function to return the row offset for an interferometer (ant1, ant2).

void casa::PlotMSVBAverager::convertToAP ( Cube< Complex > &  d  )  [private]

Convert r/i to a/p.

void casa::PlotMSVBAverager::fillIds ( Int  nrows  )  [private]

fill vector that is resized larger

void casa::PlotMSVBAverager::finalizeAverage (  ) 

Finalize averaging.

void casa::PlotMSVBAverager::initialize ( vi::VisBuffer2 vb  )  [private]

Initialize the next accumulation interval.

PlotMSVBAverager& casa::PlotMSVBAverager::operator= ( const PlotMSVBAverager  )  [private]
Int& casa::PlotMSVBAverager::prtlev (  )  [inline, private]

Diagnostic printing level.

Definition at line 120 of file PlotMSVBAverager.h.

References prtlev_.

void casa::PlotMSVBAverager::setAntAveraging ( Bool  doAnt  )  [inline]

Set up antenna averaging.

Definition at line 88 of file PlotMSVBAverager.h.

References antAve_p, casacore::False, and setBlnAveraging().

Referenced by setBlnAveraging().

void casa::PlotMSVBAverager::setBlnAveraging ( Bool  doBln  )  [inline]

Set up baseline averaging.

Definition at line 85 of file PlotMSVBAverager.h.

References blnAve_p, casacore::False, and setAntAveraging().

Referenced by setAntAveraging().

void casa::PlotMSVBAverager::setDoCVC (  )  [inline]

Definition at line 100 of file PlotMSVBAverager.h.

References doCVC_p, doWC_p, and casacore::True.

void casa::PlotMSVBAverager::setDoFC (  )  [inline]

Definition at line 101 of file PlotMSVBAverager.h.

References doFC_p, doWC_p, and casacore::True.

void casa::PlotMSVBAverager::setDoMVC (  )  [inline]

Definition at line 99 of file PlotMSVBAverager.h.

References doMVC_p, doWC_p, and casacore::True.

void casa::PlotMSVBAverager::setDoUVW (  )  [inline]

Definition at line 102 of file PlotMSVBAverager.h.

References doUVW_p, and casacore::True.

void casa::PlotMSVBAverager::setDoVC (  )  [inline]

Definition at line 98 of file PlotMSVBAverager.h.

References doVC_p, doWC_p, and casacore::True.

void casa::PlotMSVBAverager::setNoData (  )  [inline]

Control which data column to average.

Definition at line 96 of file PlotMSVBAverager.h.

References doCVC_p, doFC_p, doMVC_p, doUVW_p, doVC_p, doWC_p, and casacore::False.

void casa::PlotMSVBAverager::setScalarAve ( Bool  doScalar  )  [inline]

Set scalar averaging flag.

cout << "Using " << (doScalar ? "SCALAR" : "VECTOR") << " averaging." << endl;

Definition at line 91 of file PlotMSVBAverager.h.

References inCoh_p.

void casa::PlotMSVBAverager::simpAccumulate ( vi::VisBuffer2 vb  )  [private]

Different accumulate versions.

Referenced by accumulate().

void casa::PlotMSVBAverager::verifyCrosshands ( vi::VisBuffer2 vb  )  [private]

Verify zero or two crosshands present (if antAve_p).


Member Data Documentation

Are we averaging antennas together?

Definition at line 154 of file PlotMSVBAverager.h.

Referenced by accumulate(), and setAntAveraging().

Accumulation buffer.

Definition at line 173 of file PlotMSVBAverager.h.

Referenced by aveVisBuff().

Definition at line 164 of file PlotMSVBAverager.h.

Definition at line 167 of file PlotMSVBAverager.h.

Definition at line 163 of file PlotMSVBAverager.h.

Vector<Int> casa::PlotMSVBAverager::avgAntenna1_ [private]

Definition at line 193 of file PlotMSVBAverager.h.

Vector<Int> casa::PlotMSVBAverager::avgAntenna2_ [private]

Definition at line 194 of file PlotMSVBAverager.h.

Definition at line 187 of file PlotMSVBAverager.h.

Definition at line 189 of file PlotMSVBAverager.h.

Vector<Bool> casa::PlotMSVBAverager::avgFlagRow_ [private]

Definition at line 190 of file PlotMSVBAverager.h.

Definition at line 188 of file PlotMSVBAverager.h.

Cube<Complex> casa::PlotMSVBAverager::avgModelCube_ [private]

Definition at line 186 of file PlotMSVBAverager.h.

Vector<Int> casa::PlotMSVBAverager::avgScan_ [private]

Definition at line 197 of file PlotMSVBAverager.h.

Vector<Double> casa::PlotMSVBAverager::avgTime_ [private]

Definition at line 195 of file PlotMSVBAverager.h.

Vector<Double> casa::PlotMSVBAverager::avgTimeInterval_ [private]

Definition at line 196 of file PlotMSVBAverager.h.

Matrix<Double> casa::PlotMSVBAverager::avgUvw_ [private]

Definition at line 192 of file PlotMSVBAverager.h.

Cube<Complex> casa::PlotMSVBAverager::avgVisCube_ [private]

Mutable arrays, set in avBuf_p when finalized.

Definition at line 185 of file PlotMSVBAverager.h.

Cube<Float> casa::PlotMSVBAverager::avgWeight_ [private]

Definition at line 191 of file PlotMSVBAverager.h.

Are we averaging baselines together?

Definition at line 151 of file PlotMSVBAverager.h.

Referenced by setBlnAveraging().

Vector<Bool> casa::PlotMSVBAverager::blnOK_p [private]

Validation by baseline (if False, no attempt to accumulate this baseline).

Definition at line 148 of file PlotMSVBAverager.h.

Vector<Double> casa::PlotMSVBAverager::blnWtSum_p [private]

Definition at line 165 of file PlotMSVBAverager.h.

Weights in input VBs are chan-independent.

Definition at line 145 of file PlotMSVBAverager.h.

Definition at line 170 of file PlotMSVBAverager.h.

Referenced by setDoCVC(), and setNoData().

Definition at line 170 of file PlotMSVBAverager.h.

Referenced by setDoFC(), and setNoData().

Definition at line 170 of file PlotMSVBAverager.h.

Referenced by setDoMVC(), and setNoData().

Definition at line 170 of file PlotMSVBAverager.h.

Referenced by setDoUVW(), and setNoData().

Optional averaging triggers.

Definition at line 170 of file PlotMSVBAverager.h.

Referenced by setDoVC(), and setNoData().

Definition at line 170 of file PlotMSVBAverager.h.

Referenced by setDoCVC(), setDoFC(), setDoMVC(), setDoVC(), and setNoData().

Vector<Int> casa::PlotMSVBAverager::fieldid_ [private]

Need to resize these in final avBuf.

Definition at line 199 of file PlotMSVBAverager.h.

Are we incoherently (scalar) averaging?

Definition at line 157 of file PlotMSVBAverager.h.

Referenced by setScalarAve().

Keep track of initialization state.

Definition at line 176 of file PlotMSVBAverager.h.

Vector<Int> casa::PlotMSVBAverager::jcor_p [private]

Correlation list for cross-hand swapping.

Definition at line 179 of file PlotMSVBAverager.h.

Definition at line 162 of file PlotMSVBAverager.h.

Definition at line 161 of file PlotMSVBAverager.h.

Number of antennas, correlations, and channels.

Definition at line 142 of file PlotMSVBAverager.h.

Definition at line 142 of file PlotMSVBAverager.h.

Definition at line 142 of file PlotMSVBAverager.h.

Definition at line 142 of file PlotMSVBAverager.h.

Vector<Int> casa::PlotMSVBAverager::obsid_ [private]

Definition at line 201 of file PlotMSVBAverager.h.

Diagnostic print level.

Definition at line 182 of file PlotMSVBAverager.h.

Referenced by prtlev().

Vector<Int> casa::PlotMSVBAverager::spw_ [private]

Definition at line 200 of file PlotMSVBAverager.h.

Vector<Int> casa::PlotMSVBAverager::stateid_ [private]

Definition at line 202 of file PlotMSVBAverager.h.

Accumulation helpers.

.\.

Definition at line 160 of file PlotMSVBAverager.h.

Definition at line 166 of file PlotMSVBAverager.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1