casa
$Rev:20696$
|
VBGContinuumSubtractors subtract the continuum out of VisBuffGroups. More...
#include <VBGContinuumSubtractor.h>
Public Member Functions | |
VBGContinuumSubtractor (MeasurementSet &outms, MSColumns *msc, const VBRemapper &remapper, const ROVisibilityIterator &invi, const uInt fitorder=1, const MS::PredefinedColumns datacols=MS::DATA, const String &fitspw="*", const String &outspw="*") | |
Construct an object that will write to outms after subtracting a continuum estimated by fitting a polynomial of order fitorder. | |
Copy construct | VBGContinuumSubtractor (const VBGContinuumSubtractor &other) |
Destructor *virtual | ~VBGContinuumSubtractor () |
virtual Assignment VBGContinuumSubtractor & | operator= (const VBGContinuumSubtractor &gw) |
virtual asyncio::PrefetchColumns * | prefetchColumns () const |
This is where all the work gets done *virtual Bool | process (VisBuffGroup &vbg) |
This is where all the work gets done! | |
Private Member Functions | |
VBGContinuumSubtractor () | |
Disable null c'tor. | |
Private Attributes | |
uInt | fitorder_p |
Initialized by c'tor: | |
MS::PredefinedColumns | datacol_p |
Which of DATA, MODEL_DATA, or CORRECTED_DATA to fit. | |
String | fitspw_p |
String | outspw_p |
uInt | rowsdone_p |
std::set< Int > | outspws_p |
Bool | doWS_p |
Bool | doFC_p |
Cube< Complex > | coeffs_p |
Not initialized by c'tor: | |
Cube< Bool > | coeffsOK_p |
order, hash(ant1, ant2). | |
std::set< Int > | appliedSpWs_p |
order, hash(ant1, ant2). | |
std::map< Int, Vector< Bool > * > | fitmask_p |
VBGContinuumSubtractors subtract the continuum out of VisBuffGroups.
Public interface
VBGContinuumSubtractors subtract the continuum out of VisBuffGroups.
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.
Definition at line 73 of file VBGContinuumSubtractor.h.
casa::VBGContinuumSubtractor::VBGContinuumSubtractor | ( | MeasurementSet & | outms, |
MSColumns * | msc, | ||
const VBRemapper & | remapper, | ||
const ROVisibilityIterator & | invi, | ||
const uInt | fitorder = 1 , |
||
const MS::PredefinedColumns | datacols = MS::DATA , |
||
const String & | fitspw = "*" , |
||
const 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.
virtual Assignment VBGContinuumSubtractor& casa::VBGContinuumSubtractor::operator= | ( | const VBGContinuumSubtractor & | gw | ) | [inline, virtual] |
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 Bool casa::VBGContinuumSubtractor::process | ( | VisBuffGroup & | vbg | ) | [virtual] |
This is where all the work gets done!
Implements casa::GroupWorkerBase.
std::set<Int> casa::VBGContinuumSubtractor::appliedSpWs_p [private] |
order, hash(ant1, ant2).
Definition at line 143 of file VBGContinuumSubtractor.h.
Cube<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 138 of file VBGContinuumSubtractor.h.
Cube<Bool> casa::VBGContinuumSubtractor::coeffsOK_p [private] |
order, hash(ant1, ant2).
Definition at line 140 of file VBGContinuumSubtractor.h.
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 124 of file VBGContinuumSubtractor.h.
Bool casa::VBGContinuumSubtractor::doFC_p [private] |
Definition at line 132 of file VBGContinuumSubtractor.h.
Bool casa::VBGContinuumSubtractor::doWS_p [private] |
Definition at line 131 of file VBGContinuumSubtractor.h.
std::map<Int, Vector<Bool>*> casa::VBGContinuumSubtractor::fitmask_p [private] |
Definition at line 145 of file VBGContinuumSubtractor.h.
uInt casa::VBGContinuumSubtractor::fitorder_p [private] |
Initialized by c'tor:
Order of the fit polynomials.
Definition at line 118 of file VBGContinuumSubtractor.h.
String casa::VBGContinuumSubtractor::fitspw_p [private] |
Definition at line 126 of file VBGContinuumSubtractor.h.
String casa::VBGContinuumSubtractor::outspw_p [private] |
Definition at line 127 of file VBGContinuumSubtractor.h.
std::set<Int> casa::VBGContinuumSubtractor::outspws_p [private] |
Definition at line 129 of file VBGContinuumSubtractor.h.
uInt casa::VBGContinuumSubtractor::rowsdone_p [private] |
Reimplemented from casa::GroupWriteToNewMS.
Definition at line 128 of file VBGContinuumSubtractor.h.