casa
5.7.0-16
|
Partition makes a subset of an existing casacore::MS without remapping any indices or resizing any subtables (unlike SubMS). More...
#include <Partition.h>
Public Member Functions | |
Partition (casacore::String &theMS, casacore::Table::TableOption option=casacore::Table::Old) | |
Partition (casacore::MeasurementSet &ms) | |
construct from an MS More... | |
virtual | ~Partition () |
void | setMS (casacore::MeasurementSet &ms) |
Change or Set the casacore::MS this casacore::MSSelector refers to. More... | |
casacore::Bool | selectSpw (const casacore::String &spwstr) |
Select spw and channels for each spw. More... | |
casacore::Bool | setmsselect (const casacore::String &spw="", const casacore::String &field="", const casacore::String &baseline="", const casacore::String &scan="", const casacore::String &uvrange="", const casacore::String &taql="", const casacore::String &subarray="", const casacore::String &intent="", const casacore::String &obs="") |
select casacore::Time and time averaging or regridding void selectTime(); More... | |
casacore::Bool | selectSource (const casacore::Vector< casacore::Int > &fieldid) |
Select source or field. More... | |
void | selectAntenna (casacore::Vector< casacore::Int > &antennaids, casacore::Vector< casacore::String > &antennaSel) |
Select Antennas to split out. More... | |
void | selectArray (const casacore::String &subarray) |
Select array IDs to use. More... | |
void | selectTime (casacore::Double timeBin=-1.0, casacore::String timerng="") |
select time parameters More... | |
casacore::Bool | makePartition (casacore::String &outname, casacore::String &whichDataCol, const casacore::Vector< casacore::Int > &tileShape=casacore::Vector< casacore::Int >(1, 0), const casacore::String &combine="") |
void selectSource(casacore::Vector<casacore::String> sourceid); More... | |
virtual casacore::MeasurementSet * | makeScratchPartition (const casacore::Vector< casacore::MS::PredefinedColumns > &whichDataCols, const casacore::Bool forceInMemory=false) |
Method to make a scratch partition and even in memory if posssible Useful if temporary subselection/averaging is necessary It'll be in memory if the basic output ms is less than half of memory reported by casacore::HostInfo unless forced to by user... More... | |
virtual casacore::MeasurementSet * | makeScratchPartition (const casacore::String &whichDataCol, const casacore::Bool forceInMemory=false) |
In this form whichDataCol gets passed to parseColumnNames(). More... | |
void | verifyColumns (const casacore::MeasurementSet &ms, const casacore::Vector< casacore::MS::PredefinedColumns > &colNames) |
Static Public Member Functions | |
static casacore::MeasurementSet * | setupMS (const casacore::String &msname, const casacore::MeasurementSet &inms, const casacore::Int nchan, const casacore::Int npol, const casacore::String &telescop, const casacore::Vector< casacore::MS::PredefinedColumns > &colNamesTok, const casacore::Int obstype=0) |
This sets up a default new ms Declared static as it can be called directly outside of Partition. More... | |
static casacore::MeasurementSet * | setupMS (const casacore::String &msname, const casacore::MeasurementSet &inms, const casacore::Int nchan, const casacore::Int npol, const casacore::Vector< casacore::MS::PredefinedColumns > &colNamesTok, const casacore::Vector< casacore::Int > &tileShape=casacore::Vector< casacore::Int >(1, 0)) |
Same as above except allowing manual tileshapes. More... | |
Static Private Member Functions | |
static void | getDataColMap (casacore::MSMainColumns *msc, casacore::ArrayColumn< casacore::Complex > *mapper, casacore::uInt ntok, const casacore::Vector< casacore::MS::PredefinedColumns > &colEnums) |
Fills mapper[ntok] with a map from dataColumn indices to ArrayColumns in the output. More... | |
Private Attributes | |
casacore::MeasurementSet | ms_p |
*** Member variables *** More... | |
casacore::MeasurementSet | mssel_p |
casacore::MSMainColumns * | msc_p |
casacore::ROMSColumns * | mscIn_p |
casacore::Bool | antennaSel_p |
casacore::Double | timeBin_p |
casacore::String | scanString_p |
casacore::String | intentString_p |
casacore::String | obsString_p |
casacore::String | uvrangeString_p |
casacore::String | taqlString_p |
casacore::String | timeRange_p |
casacore::String | arrayExpr_p |
casacore::String | corrString_p |
casacore::String | combine_p |
casacore::Int | maxnchan_p |
scan #, observation, and/or state ID? Must be lowercase at all times. More... | |
casacore::Int | maxncorr_p |
casacore::MeasurementSet | msOut_p |
are casacore::Int instead of uInt.) More... | |
casacore::Vector< casacore::Int > | spw_p |
casacore::Vector< casacore::Int > | fieldid_p |
casacore::Vector < casacore::String > | antennaSelStr_p |
casacore::Vector< casacore::Int > | antennaId_p |
casacore::Vector< casacore::Int > | arrayId_p |
casacore::Matrix < casacore::Double > | selTimeRanges_p |
Partition makes a subset of an existing casacore::MS without remapping any indices or resizing any subtables (unlike SubMS).
Partition an MS.
The order of operations (as in ms::partition()) is: ctor setmsselect selectTime makePartition
casacore::Bool isAllColumns(const casacore::Vector<casacore::MS::PredefinedColumns>& colNames);
Definition at line 80 of file Partition.h.
casa::Partition::Partition | ( | casacore::String & | theMS, |
casacore::Table::TableOption | option = casacore::Table::Old |
||
) |
casa::Partition::Partition | ( | casacore::MeasurementSet & | ms | ) |
construct from an MS
|
virtual |
|
private |
This method uses VisIter for efficient copy mode data transfer.
|
private |
Read the input, time average it to timeBin_p, and write the output.
|
private |
casacore::Bool writeDiffSpwShape(const casacore::Vector<casacore::MS::PredefinedColumns>& colNames);
|
private |
(Sub)table fillers.
|
private |
|
staticprivate |
Fills mapper[ntok] with a map from dataColumn indices to ArrayColumns in the output.
mapper must have ntok slots!
|
private |
*** Private member functions ***
|
private |
casacore::Bool casa::Partition::makePartition | ( | casacore::String & | outname, |
casacore::String & | whichDataCol, | ||
const casacore::Vector< casacore::Int > & | tileShape = casacore::Vector< casacore::Int >(1, 0) , |
||
const casacore::String & | combine = "" |
||
) |
void selectSource(casacore::Vector<casacore::String> sourceid);
Method to set if a phase Center rotation is needed void setPhaseCenter(casacore::Int fieldid, casacore::MDirection& newPhaseCenter);
Method to make the partition.
TileShape of size 1 can have 2 values [0], and [1]...these are used in to determine the tileshape by using MSTileLayout. Otherwise it has to be a vector size 3 e.g [4, 15, 351] => a tile shape of 4 stokes, 15 channels 351 rows.
combine sets combine_p. (Columns to ignore while time averaging.)
|
virtual |
Method to make a scratch partition and even in memory if posssible Useful if temporary subselection/averaging is necessary It'll be in memory if the basic output ms is less than half of memory reported by casacore::HostInfo unless forced to by user...
|
virtual |
In this form whichDataCol gets passed to parseColumnNames().
|
private |
method that returns the selected ms (?! - but it's Boolean - RR)
|
inlineprivate |
Used in a couple of places to estimate how much memory to grab.
Definition at line 195 of file Partition.h.
References maxnchan_p, maxncorr_p, mssel_p, and casacore::Table::nrow().
|
private |
|
private |
|
inline |
Select Antennas to split out.
Definition at line 112 of file Partition.h.
References antennaId_p, antennaSel_p, antennaSelStr_p, and casa::SubMS::pickAntennas().
void casa::Partition::selectArray | ( | const casacore::String & | subarray | ) |
Select array IDs to use.
casacore::Bool casa::Partition::selectSource | ( | const casacore::Vector< casacore::Int > & | fieldid | ) |
Select source or field.
casacore::Bool casa::Partition::selectSpw | ( | const casacore::String & | spwstr | ) |
Select spw and channels for each spw.
It returns true on success and false on failure.
void casa::Partition::selectTime | ( | casacore::Double | timeBin = -1.0 , |
casacore::String | timerng = "" |
||
) |
select time parameters
void casa::Partition::setMS | ( | casacore::MeasurementSet & | ms | ) |
Change or Set the casacore::MS this casacore::MSSelector refers to.
casacore::Bool casa::Partition::setmsselect | ( | const casacore::String & | spw = "" , |
const casacore::String & | field = "" , |
||
const casacore::String & | baseline = "" , |
||
const casacore::String & | scan = "" , |
||
const casacore::String & | uvrange = "" , |
||
const casacore::String & | taql = "" , |
||
const casacore::String & | subarray = "" , |
||
const casacore::String & | intent = "" , |
||
const casacore::String & | obs = "" |
||
) |
select casacore::Time and time averaging or regridding void selectTime();
select stuff using msselection syntax...time is left out call it separately with timebin
|
static |
This sets up a default new ms Declared static as it can be called directly outside of Partition.
Therefore it is not dependent on any member variable.
|
static |
Same as above except allowing manual tileshapes.
void casa::Partition::verifyColumns | ( | const casacore::MeasurementSet & | ms, |
const casacore::Vector< casacore::MS::PredefinedColumns > & | colNames | ||
) |
|
private |
Definition at line 233 of file Partition.h.
Referenced by selectAntenna().
|
private |
Definition at line 214 of file Partition.h.
Referenced by selectAntenna().
|
private |
Definition at line 232 of file Partition.h.
Referenced by selectAntenna().
|
private |
Definition at line 220 of file Partition.h.
|
private |
Definition at line 234 of file Partition.h.
|
private |
Definition at line 221 of file Partition.h.
|
private |
Definition at line 220 of file Partition.h.
|
private |
Definition at line 231 of file Partition.h.
|
private |
Definition at line 216 of file Partition.h.
|
private |
scan #, observation, and/or state ID? Must be lowercase at all times.
Definition at line 224 of file Partition.h.
Referenced by n_bytes().
|
private |
Definition at line 224 of file Partition.h.
Referenced by n_bytes().
|
private |
*** Member variables ***
Initialized* by ctors. (Maintain order both here and in ctors.) not necessarily to anything useful.
Definition at line 211 of file Partition.h.
|
private |
Definition at line 212 of file Partition.h.
|
private |
Definition at line 213 of file Partition.h.
|
private |
are casacore::Int instead of uInt.)
Uninitialized by ctors.
Definition at line 229 of file Partition.h.
|
private |
Definition at line 211 of file Partition.h.
Referenced by n_bytes().
|
private |
Definition at line 216 of file Partition.h.
|
private |
Definition at line 216 of file Partition.h.
|
private |
Definition at line 235 of file Partition.h.
|
private |
Definition at line 230 of file Partition.h.
|
private |
Definition at line 216 of file Partition.h.
|
private |
Definition at line 215 of file Partition.h.
|
private |
Definition at line 220 of file Partition.h.
|
private |
Definition at line 216 of file Partition.h.