casa
5.7.0-16
|
UV FITS to MeasurementSet filler. More...
#include <MSFitsInput.h>
Public Member Functions | |
MSFitsInput (const String &msFile, const String &fitsFile, const Bool NewNameStyle=False) | |
This is an implementation helper class used to store 'local' data during the filling process. More... | |
~MSFitsInput () | |
The destructor is fairly trivial. More... | |
void | readFitsFile (Int obsType=MSTileLayout::Standard) |
Read all the data from the FITS file and create the MeasurementSet. More... | |
void | rotateAntennaPositions (Bool b) |
A simultaneous change to MSFitsOutput means that no longer are antenna positions being rotated when written to UVFITS. More... | |
Protected Member Functions | |
Bool | checkInput (FitsInput &infile) |
Check that the input is a UV fits file with required contents. More... | |
void | getPrimaryGroupAxisInfo () |
Read the axis info of the primary group, throws an exception if required axes are missing. More... | |
void | setupMeasurementSet (const String &MSFileName, Bool useTSM=True, Int obsType=MSTileLayout::Standard) |
Set up the MeasurementSet, including StorageManagers and fixed columns. More... | |
Read a binary table extension of type AIPS AN and create an antenna table *void | fillAntennaTable (BinaryTable &bt) |
void | fillHistoryTable (ConstFitsKeywordList &kwl) |
Read a binary table extension and update history table. More... | |
void | fillObservationTable (ConstFitsKeywordList &kwl) |
Read a binary table extension and update history table. More... | |
void | getAxisInfo (ConstFitsKeywordList &) |
extract axis information More... | |
void | sortPolarizations () |
extract axis information More... | |
void | fillPolarizationTable () |
void | checkRequiredAxis () |
verify that the fits contains visibility data More... | |
void | fillSpectralWindowTable (BinaryTable &bt) |
void | fillFieldTable (BinaryTable &bt) |
fill Field table More... | |
void | fillFieldTable (double, double, String) |
void | fillMSMainTable (BinaryTable &bt) |
void | fillPointingTable () |
void | fillSourceTable () |
void | fillFeedTable () |
fill the Feed table with minimal info needed for synthesis processing More... | |
Fill the Observation and ObsLog tables *void | fillObsTables () |
void | fillMSMainTableColWise (Int &nField, Int &nSpW) |
Fill the main table from the Primary group data if we have enough memory try to do it in mem. More... | |
void | fillMSMainTable (Int &nField, Int &nSpW) |
else do it row by row More... | |
void | fillSpectralWindowTable (BinaryTable &bt, Int nSpW) |
fill spectralwindow table from FITS FQ table + header info More... | |
void | fillSpectralWindowTable () |
fill spectralwindow table from header More... | |
void | fillFieldTable (BinaryTable &bt, Int nField) |
fill Field table from FITS SU table More... | |
void | fillFieldTable (Int nField) |
fill Field table from header (single source fits) More... | |
void | fillExtraTables () |
fill the Pointing table (from Field table, all antennas are assumed to point in the field direction) and possibly the Source table. More... | |
void | fixEpochReferences () |
fix up the EPOCH MEASURE_REFERENCE keywords using the value found in the (last) AN table More... | |
MDirection::Types | getDirectionFrame (Double epoch) |
Returns the Direction Measure reference for UVW and other appropriate columns in msc_p (which must exist but have empty columns before you can set it!). More... | |
void | setFreqFrameVar (BinaryTable &binTab) |
Check the frame if there is an SU table. More... | |
void | updateSpectralWindowTable () |
update a the Spectral window post filling if necessary More... | |
void | readRandomGroupUVFits (Int obsType) |
void | readPrimaryTableUVFits (Int obsType) |
Private Member Functions | |
MSFitsInput () | |
MSFitsInput (const MSFitsInput &other) | |
MSFitsInput & | operator= (const MSFitsInput &other) |
std::pair< Int, Int > | _extractAntennas (Float baseline) |
Private Attributes | |
FitsInput * | _infile |
String | _msFile |
MSPrimaryGroupHolder | _priGroup |
MSPrimaryTableHolder | _priTable |
MeasurementSet | _ms |
MSColumns * | _msc |
Int | _nIF |
Vector< Int > | _nPixel |
Vector< Int > | _corrType |
Block< Int > | _corrIndex |
Matrix< Int > | _corrProduct |
Vector< String > | _coordType |
Vector< Double > | _refVal |
Vector< Double > | _refPix |
Vector< Double > | _delta |
String | _array |
String | _object |
String | _timsys |
Double | _epoch |
MDirection::Types | _epochRef |
std::set< Int > | _uniqueAnts |
determined by epoch_p, hence the name and type. More... | |
Int | _nAntRow |
number of rows in the created MS ANTENNA table More... | |
Int | _nArray |
Vector< Double > | _receptorAngle |
MFrequency::Types | _freqsys |
Double | _restfreq |
Bool | _addSourceTable |
LogIO | _log |
Record | _header |
Double | _refFreq |
Bool | _useAltrval |
Vector< Double > | _chanFreq |
Bool | _newNameStyle |
Vector< Double > | _obsTime |
Matrix< Double > | _restFreq |
Matrix< Double > | _sysVel |
Bool | _msCreated |
Bool | _rotateAnts |
UV FITS to MeasurementSet filler.
Public interface
MSFitsInput handles the conversion of FITS files to MeasurementSets
UV FITS to MeasurementSet filler. This can handle single source fits and multi source fits as written by classic AIPS. Also copes with multiple arrays (i.e. multiple AN tables) but doesn't correct for 5 day offsets introduced by DBCON.
Definition at line 267 of file MSFitsInput.h.
casacore::MSFitsInput::MSFitsInput | ( | const String & | msFile, |
const String & | fitsFile, | ||
const Bool | NewNameStyle = False |
||
) |
This is an implementation helper class used to store 'local' data during the filling process.
Create from output and input file names. This function opens the input
file, and checks the output file is writable.
casacore::MSFitsInput::~MSFitsInput | ( | ) |
The destructor is fairly trivial.
|
private |
|
private |
Check that the input is a UV fits file with required contents.
Returns False if not ok.
|
protected |
verify that the fits contains visibility data
|
protected |
|
protected |
fill the Pointing table (from Field table, all antennas are assumed to point in the field direction) and possibly the Source table.
|
protected |
fill the Feed table with minimal info needed for synthesis processing
|
protected |
fill Field table
|
protected |
|
protected |
fill Field table from FITS SU table
|
protected |
fill Field table from header (single source fits)
|
protected |
Read a binary table extension and update history table.
|
protected |
else do it row by row
Fill the main table from the Primary group data if we have enough memory try to do it in mem.
|
protected |
Read a binary table extension and update history table.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
fill spectralwindow table from FITS FQ table + header info
|
protected |
fill spectralwindow table from header
|
protected |
fix up the EPOCH MEASURE_REFERENCE keywords using the value found in the (last) AN table
|
protected |
extract axis information
|
protected |
Returns the Direction Measure reference for UVW and other appropriate columns in msc_p (which must exist but have empty columns before you can set it!).
|
protected |
Read the axis info of the primary group, throws an exception if required axes are missing.
|
private |
void casacore::MSFitsInput::readFitsFile | ( | Int | obsType = MSTileLayout::Standard | ) |
Read all the data from the FITS file and create the MeasurementSet.
Throws an exception when it has severe trouble interpreting the FITS file.
|
protected |
|
protected |
|
inline |
A simultaneous change to MSFitsOutput means that no longer are antenna positions being rotated when written to UVFITS.
Calling this method with b=True will perform the reverse of a rotation when converting from uvfits to MS for relevant UVFITS files which were written prior to this change. Else no rotation of antenna positions is done.
Definition at line 290 of file MSFitsInput.h.
References _rotateAnts.
|
protected |
Check the frame if there is an SU table.
|
protected |
Set up the MeasurementSet, including StorageManagers and fixed columns.
If useTSM is True, the Tiled Storage Manager will be used to store DATA, FLAG and WEIGHT_SPECTRUM. Use obsType to choose the tiling scheme.
|
protected |
extract axis information
|
protected |
update a the Spectral window post filling if necessary
|
private |
Definition at line 422 of file MSFitsInput.h.
|
private |
Definition at line 409 of file MSFitsInput.h.
Definition at line 427 of file MSFitsInput.h.
Definition at line 407 of file MSFitsInput.h.
Definition at line 405 of file MSFitsInput.h.
Definition at line 406 of file MSFitsInput.h.
Definition at line 404 of file MSFitsInput.h.
Definition at line 408 of file MSFitsInput.h.
|
private |
Definition at line 410 of file MSFitsInput.h.
|
private |
Definition at line 411 of file MSFitsInput.h.
|
private |
Definition at line 420 of file MSFitsInput.h.
|
private |
Definition at line 424 of file MSFitsInput.h.
|
private |
Definition at line 397 of file MSFitsInput.h.
|
private |
Definition at line 423 of file MSFitsInput.h.
|
private |
Definition at line 401 of file MSFitsInput.h.
|
private |
Definition at line 402 of file MSFitsInput.h.
|
private |
Definition at line 433 of file MSFitsInput.h.
|
private |
Definition at line 398 of file MSFitsInput.h.
|
private |
number of rows in the created MS ANTENNA table
Definition at line 417 of file MSFitsInput.h.
|
private |
Definition at line 418 of file MSFitsInput.h.
|
private |
Definition at line 428 of file MSFitsInput.h.
|
private |
Definition at line 403 of file MSFitsInput.h.
Definition at line 404 of file MSFitsInput.h.
|
private |
Definition at line 409 of file MSFitsInput.h.
Definition at line 429 of file MSFitsInput.h.
|
private |
Definition at line 399 of file MSFitsInput.h.
|
private |
Definition at line 400 of file MSFitsInput.h.
Definition at line 419 of file MSFitsInput.h.
|
private |
Definition at line 425 of file MSFitsInput.h.
Definition at line 408 of file MSFitsInput.h.
Definition at line 408 of file MSFitsInput.h.
|
private |
Definition at line 421 of file MSFitsInput.h.
Definition at line 431 of file MSFitsInput.h.
|
private |
Definition at line 433 of file MSFitsInput.h.
Referenced by rotateAntennaPositions().
Definition at line 432 of file MSFitsInput.h.
|
private |
Definition at line 409 of file MSFitsInput.h.
|
private |
determined by epoch_p, hence the name and type.
unique antennas found in the visibility data NOTE These are 1-based
Definition at line 415 of file MSFitsInput.h.
|
private |
Definition at line 426 of file MSFitsInput.h.