Write a MeasurementSet to a random group uvfits file. More...
#include <MSFitsOutputAstron.h>
Static Public Member Functions | |
static Bool | writeFitsFile (const String &fitsfile, const MeasurementSet &ms, const String &column, Int startchan=-1, Int nchan=-1, Int stepchan=-1, Bool writeSysCal=False, Bool asMultiSource=False, Bool combineSpw=False, Bool writeStation=False, Double sensitivity=1.0) |
Convert a MeasurementSet to random group UVFITS, specifying the column to write ("observed", "calibrated", "model") and whether to write the system calibration table. | |
Static Private Member Functions | |
static FitsOutput * | writeMain (Int &refPixelFreq, Double &refFreq, Double &refFreq1, Double &chanbw, const String &outFITSFile, const MeasurementSet &rawms, const String &column, const Block< Int > &spwidMap, Int nrspw, Int startchan, Int nchan, Int stepchan, const Block< Int > &fieldidMap, Bool asMultiSource, Bool combineSpw) |
Write the main table. | |
static Bool | writeFQ (FitsOutput *output, const MeasurementSet &ms, const Block< Int > &spwidMap, Int nrspw, Double refFreq, Int refPixelFreq, Double chanbw, Bool combineSpw) |
Write the FQ table. | |
static Bool | writeAN (FitsOutput *output, const MeasurementSet &ms, Double refFreq, Bool writeStation) |
Write the AN table. | |
static Bool | writeSU (FitsOutput *output, const MeasurementSet &ms, const Block< Int > &fieldidMap, Int nrfield, const Block< Int > &spwidMap, Int nrspw) |
Write the SU table. | |
static Bool | writeTY (FitsOutput *output, const MeasurementSet &ms, const Table &syscal, const Block< Int > &spwidMap, uInt nrif, Bool combineSpw) |
Write the TY table. | |
static Bool | writeGC (FitsOutput *output, const MeasurementSet &ms, const Table &syscal, const Block< Int > &spwidMap, uInt nrif, Bool combineSpw, Double sensitivity, Int refPixelFreq, Double refFreq, Double chanbw) |
Write the GC table. | |
static void | timeToDay (Int &day, Double &dayFraction, Double time) |
Convert time to day and fraction. | |
static void | getStartHA (Double &startTime, Double &startHA, const MeasurementSet &ms, uInt rownr) |
Get the time and hourangle from the MS at the given row. | |
static Table | handleSysCal (const MeasurementSet &ms, const Vector< Int > &spwids, Bool isSubset) |
Handle the SYSCAL table. | |
static Int | makeIdMap (Block< Int > &map, Vector< Int > &selids, const Vector< Int > &allids, Bool isSubset) |
Determine which ids are selected in the main table (used for fields and spectral-window). |
Write a MeasurementSet to a random group uvfits file.
Definition at line 49 of file MSFitsOutputAstron.h.
static void casacore::MSFitsOutputAstron::getStartHA | ( | Double & | startTime, | |
Double & | startHA, | |||
const MeasurementSet & | ms, | |||
uInt | rownr | |||
) | [static, private] |
Get the time and hourangle from the MS at the given row.
It uses the field-id and observation-id to calculate the hourangle.
static Table casacore::MSFitsOutputAstron::handleSysCal | ( | const MeasurementSet & | ms, | |
const Vector< Int > & | spwids, | |||
Bool | isSubset | |||
) | [static, private] |
Handle the SYSCAL table.
It skips the entries not needed and sorts it in the correct order.
static Int casacore::MSFitsOutputAstron::makeIdMap | ( | Block< Int > & | map, | |
Vector< Int > & | selids, | |||
const Vector< Int > & | allids, | |||
Bool | isSubset | |||
) | [static, private] |
Determine which ids are selected in the main table (used for fields and spectral-window).
It fills a block for all possible ids, where -1 tells that the id is not selected. Furthermore it fills a vector with the selected id numbers. The input is a vector containing all ids in the main table. If isSubset is False the main table is not a selection, but represents an entire MS. In that case the map and selids are simply filled with values 0-nrid.
static void casacore::MSFitsOutputAstron::timeToDay | ( | Int & | day, | |
Double & | dayFraction, | |||
Double | time | |||
) | [static, private] |
Convert time to day and fraction.
static Bool casacore::MSFitsOutputAstron::writeAN | ( | FitsOutput * | output, | |
const MeasurementSet & | ms, | |||
Double | refFreq, | |||
Bool | writeStation | |||
) | [static, private] |
Write the AN table.
static Bool casacore::MSFitsOutputAstron::writeFitsFile | ( | const String & | fitsfile, | |
const MeasurementSet & | ms, | |||
const String & | column, | |||
Int | startchan = -1 , |
|||
Int | nchan = -1 , |
|||
Int | stepchan = -1 , |
|||
Bool | writeSysCal = False , |
|||
Bool | asMultiSource = False , |
|||
Bool | combineSpw = False , |
|||
Bool | writeStation = False , |
|||
Double | sensitivity = 1.0 | |||
) | [static] |
Convert a MeasurementSet to random group UVFITS, specifying the column to write ("observed", "calibrated", "model") and whether to write the system calibration table.
If asMultiSource=True a multi-source UVFits file is written.
If combineSpw=True, all spectral-windows of a frequency group are combined.
static Bool casacore::MSFitsOutputAstron::writeFQ | ( | FitsOutput * | output, | |
const MeasurementSet & | ms, | |||
const Block< Int > & | spwidMap, | |||
Int | nrspw, | |||
Double | refFreq, | |||
Int | refPixelFreq, | |||
Double | chanbw, | |||
Bool | combineSpw | |||
) | [static, private] |
Write the FQ table.
If combineSpw is True, all spectral-windows are written in one row of the FITS table.
static Bool casacore::MSFitsOutputAstron::writeGC | ( | FitsOutput * | output, | |
const MeasurementSet & | ms, | |||
const Table & | syscal, | |||
const Block< Int > & | spwidMap, | |||
uInt | nrif, | |||
Bool | combineSpw, | |||
Double | sensitivity, | |||
Int | refPixelFreq, | |||
Double | refFreq, | |||
Double | chanbw | |||
) | [static, private] |
Write the GC table.
static FitsOutput* casacore::MSFitsOutputAstron::writeMain | ( | Int & | refPixelFreq, | |
Double & | refFreq, | |||
Double & | refFreq1, | |||
Double & | chanbw, | |||
const String & | outFITSFile, | |||
const MeasurementSet & | rawms, | |||
const String & | column, | |||
const Block< Int > & | spwidMap, | |||
Int | nrspw, | |||
Int | startchan, | |||
Int | nchan, | |||
Int | stepchan, | |||
const Block< Int > & | fieldidMap, | |||
Bool | asMultiSource, | |||
Bool | combineSpw | |||
) | [static, private] |
Write the main table.
static Bool casacore::MSFitsOutputAstron::writeSU | ( | FitsOutput * | output, | |
const MeasurementSet & | ms, | |||
const Block< Int > & | fieldidMap, | |||
Int | nrfield, | |||
const Block< Int > & | spwidMap, | |||
Int | nrspw | |||
) | [static, private] |
Write the SU table.
static Bool casacore::MSFitsOutputAstron::writeTY | ( | FitsOutput * | output, | |
const MeasurementSet & | ms, | |||
const Table & | syscal, | |||
const Block< Int > & | spwidMap, | |||
uInt | nrif, | |||
Bool | combineSpw | |||
) | [static, private] |
Write the TY table.