casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
casa::VBGContinuumSubtractor Class Reference

VBGContinuumSubtractors subtract the continuum out of VisBuffGroups. More...

#include <VBGContinuumSubtractor.h>

Inheritance diagram for casa::VBGContinuumSubtractor:
casa::GroupWriteToNewMS casa::GroupWorkerBase

Public Member Functions

 VBGContinuumSubtractor (casacore::MeasurementSet &outms, casacore::MSColumns *msc, const VBRemapper &remapper, const ROVisibilityIterator &invi, const casacore::uInt fitorder=1, const casacore::MS::PredefinedColumns datacols=casacore::MS::DATA, const casacore::String &fitspw="*", const casacore::String &outspw="*")
 Construct an object that will write to outms after subtracting a continuum estimated by fitting a polynomial of order fitorder. More...
 
Copy construct VBGContinuumSubtractor (const VBGContinuumSubtractor &other)
 
Destructor *virtual ~VBGContinuumSubtractor ()
 
virtual Assignment
VBGContinuumSubtractor
operator= (const VBGContinuumSubtractor &gw)
 
virtual asyncio::PrefetchColumnsprefetchColumns () const
 
This is where all the work
gets done *virtual
casacore::Bool 
process (VisBuffGroup &vbg)
 This is where all the work gets done! More...
 
void setTVIDebug (bool debug)
 
void setWantCont (bool want_cont)
 
- Public Member Functions inherited from casa::GroupWriteToNewMS
 GroupWriteToNewMS (casacore::MeasurementSet &outms, casacore::MSColumns *msc, const VBRemapper &remapper)
 
virtual ~GroupWriteToNewMS ()
 GroupWriteToNewMS(GroupWriteToNewMS& other);. More...
 
- Public Member Functions inherited from casa::GroupWorkerBase
 GroupWorkerBase ()
 Create empty GroupWorkerBase you can assign to or attach. More...
 
Copy construct GroupWorkerBase (const GroupWorkerBase &other)
 
Destructor *virtual ~GroupWorkerBase ()
 
virtual Assignment
GroupWorkerBase
operator= (const GroupWorkerBase &gw)
 

Private Member Functions

 VBGContinuumSubtractor ()
 Disable null c'tor. More...
 

Private Attributes

casacore::uInt fitorder_p
 Initialized by c'tor: More...
 
casacore::MS::PredefinedColumns datacol_p
 Which of DATA, MODEL_DATA, or CORRECTED_DATA to fit. More...
 
casacore::String fitspw_p
 
casacore::String outspw_p
 
casacore::uInt rowsdone_p
 
std::set< casacore::Intoutspws_p
 
casacore::Bool doWS_p
 
casacore::Bool doFC_p
 
casacore::Cube< casacore::Complex > coeffs_p
 Not initialized by c'tor: More...
 
casacore::Cube< casacore::BoolcoeffsOK_p
 order, hash(ant1, ant2). More...
 
std::set< casacore::IntappliedSpWs_p
 order, hash(ant1, ant2). More...
 
std::map< casacore::Int,
casacore::Vector
< casacore::Bool > * > 
fitmask_p
 
bool tvi_debug
 
bool want_cont_p
 

Additional Inherited Members

- Static Public Member Functions inherited from casa::GroupWriteToNewMS
static casacore::uInt write (casacore::MeasurementSet &outms, casacore::MSColumns *msc, VisBuffer &vb, casacore::uInt rowsdone, const VBRemapper &remapper, const casacore::Bool doFC, const casacore::Bool doFloat, const casacore::Bool doSpWeight)
 Writes vb to outms/msc, and returns the number of rows in outms afterwards. More...
 
- Protected Attributes inherited from casa::GroupWriteToNewMS
casacore::MeasurementSet outms_p
 
casacore::MSColumnsmsc_p
 
VBRemapper remapper_p
 
casacore::uInt rowsdone_p
 
- Protected Attributes inherited from casa::GroupWorkerBase
asyncio::PrefetchColumns prefetchColumns_p
 

Detailed Description

VBGContinuumSubtractors subtract the continuum out of VisBuffGroups.

Intended use:

Public interface

Prerequisite

Etymology

VBGContinuumSubtractors subtract the continuum out of VisBuffGroups.

Synopsis

This estimates the continuum by fitting a low order polynomial in frequency for each baseline in a VisBuffGroup, and then writes those visibilities, with the continuum subtracted, to a different MS. The VisBuffers in the VisBuffGroup do not all have to have the same spw, set of baselines, or even set of correlations, but output visibilities for which the continuum cannot be estimated will be flagged.

To Do

Definition at line 73 of file VBGContinuumSubtractor.h.

Constructor & Destructor Documentation

casa::VBGContinuumSubtractor::VBGContinuumSubtractor ( casacore::MeasurementSet outms,
casacore::MSColumns msc,
const VBRemapper remapper,
const ROVisibilityIterator invi,
const casacore::uInt  fitorder = 1,
const casacore::MS::PredefinedColumns  datacols = casacore::MS::DATA,
const casacore::String fitspw = "*",
const casacore::String outspw = "*" 
)

Construct an object that will write to outms after subtracting a continuum estimated by fitting a polynomial of order fitorder.

It will always write to DATA if datacols.nelements() == 1, and write to all 3 otherwise. Thus datacols.nelements() should be either 1 or 3. Anything else will result in an AipsError. 4 and 2 are right out, and FLOAT_DATA isn't handled by this yet.

invi is the input VisibilityIterator, only used directly here to get the sort columns and whether or not WEIGHT_SPECTRUM and/or FLAG_CATEGORY are present.

Copy construct casa::VBGContinuumSubtractor::VBGContinuumSubtractor ( const VBGContinuumSubtractor other)
inline

Definition at line 97 of file VBGContinuumSubtractor.h.

Destructor* virtual casa::VBGContinuumSubtractor::~VBGContinuumSubtractor ( )
virtual
casa::VBGContinuumSubtractor::VBGContinuumSubtractor ( )
private

Disable null c'tor.

Member Function Documentation

virtual Assignment VBGContinuumSubtractor& casa::VBGContinuumSubtractor::operator= ( const VBGContinuumSubtractor gw)
inlinevirtual

Definition at line 103 of file VBGContinuumSubtractor.h.

virtual asyncio::PrefetchColumns* casa::VBGContinuumSubtractor::prefetchColumns ( ) const
virtual

Reimplemented from casa::GroupWorkerBase.

This is where all the work gets done* virtual casacore::Bool casa::VBGContinuumSubtractor::process ( VisBuffGroup vbg)
virtual

This is where all the work gets done!

Implements casa::GroupWorkerBase.

void casa::VBGContinuumSubtractor::setTVIDebug ( bool  debug)
inline

Definition at line 111 of file VBGContinuumSubtractor.h.

References debug, and tvi_debug.

void casa::VBGContinuumSubtractor::setWantCont ( bool  want_cont)
inline

Definition at line 112 of file VBGContinuumSubtractor.h.

References want_cont_p.

Member Data Documentation

std::set<casacore::Int> casa::VBGContinuumSubtractor::appliedSpWs_p
private

order, hash(ant1, ant2).

Definition at line 146 of file VBGContinuumSubtractor.h.

casacore::Cube<casacore::Complex> casa::VBGContinuumSubtractor::coeffs_p
private

Not initialized by c'tor:

These cubes could be made local to process(), but I want to avoid repeated c'ting and d'ting.

Definition at line 141 of file VBGContinuumSubtractor.h.

casacore::Cube<casacore::Bool> casa::VBGContinuumSubtractor::coeffsOK_p
private

order, hash(ant1, ant2).

Definition at line 143 of file VBGContinuumSubtractor.h.

casacore::MS::PredefinedColumns casa::VBGContinuumSubtractor::datacol_p
private

Which of DATA, MODEL_DATA, or CORRECTED_DATA to fit.

It will always write to DATA if datacols_p.nelements() == 1, and write to all 3 otherwise. Thus datacols_p.nelements() should be either 1 or 3. 4 and 2 are right out, and FLOAT_DATA isn't handled by this yet.

Definition at line 127 of file VBGContinuumSubtractor.h.

casacore::Bool casa::VBGContinuumSubtractor::doFC_p
private

Definition at line 135 of file VBGContinuumSubtractor.h.

casacore::Bool casa::VBGContinuumSubtractor::doWS_p
private

Definition at line 134 of file VBGContinuumSubtractor.h.

std::map<casacore::Int, casacore::Vector<casacore::Bool>*> casa::VBGContinuumSubtractor::fitmask_p
private

Definition at line 148 of file VBGContinuumSubtractor.h.

casacore::uInt casa::VBGContinuumSubtractor::fitorder_p
private

Initialized by c'tor:

Order of the fit polynomials.

Definition at line 121 of file VBGContinuumSubtractor.h.

casacore::String casa::VBGContinuumSubtractor::fitspw_p
private

Definition at line 129 of file VBGContinuumSubtractor.h.

casacore::String casa::VBGContinuumSubtractor::outspw_p
private

Definition at line 130 of file VBGContinuumSubtractor.h.

std::set<casacore::Int> casa::VBGContinuumSubtractor::outspws_p
private

Definition at line 132 of file VBGContinuumSubtractor.h.

casacore::uInt casa::VBGContinuumSubtractor::rowsdone_p
private

Definition at line 131 of file VBGContinuumSubtractor.h.

bool casa::VBGContinuumSubtractor::tvi_debug
private

Definition at line 150 of file VBGContinuumSubtractor.h.

Referenced by setTVIDebug().

bool casa::VBGContinuumSubtractor::want_cont_p
private

Definition at line 151 of file VBGContinuumSubtractor.h.

Referenced by setWantCont().


The documentation for this class was generated from the following file: