Create an empty MeasurementSet from observation and telescope descriptions. More...
#include <MSSimulator.h>
Public Member Functions | |
MSSimulator () | |
Default constructor - use this, then invoke initAnt, initFeed, initSpWindow, initConfig. | |
MSSimulator (const MSSimulator &mss) | |
Copy constructor - for completeness only. | |
~MSSimulator () | |
MSSimulator & | operator= (const MSSimulator &) |
Assignment. | |
void | initAnt (const String &telname, const Vector< Double > &x, const Vector< Double > &y, const Vector< Double > &z, const Vector< Float > &dishDiameter, const Vector< String > &mount, const Vector< String > &name, const String &coordsystem, const MPosition &mRefLocation) |
set the antenna and array data. | |
void | initFields (const uInt nSources, const Vector< String > &sourceName, const Vector< MDirection > &sourceDirection, const Vector< Int > &intsPerPointing, const Vector< Int > &mosPointingsX, const Vector< Int > &mosPointingsY, const Vector< Float > &mosSpacing) |
set the observed fields | |
void | initFeeds (const String &mode) |
set the Feeds; brain dead version | |
void | initSpWindows (const uInt nSpWindows, const Vector< String > &spWindowName, const Vector< Int > &nChan, const Vector< Quantity > &startFreq, const Vector< Quantity > &freqInc, const Vector< Quantity > &freqRes, const Vector< String > &stokesString) |
set the spectral windows information | |
void | setFractionBlockageLimit (const Double fraclimit) |
void | setElevationLimit (const Quantity &ellimit) |
void | setAutoCorrelationWt (const Float autocorrwt) |
void | setTimes (const Quantity &qIntegrationTime, const Quantity &qGapTime, const Bool useHourAngles, const Quantity &qStartTime, const Quantity &qStopTime, const MEpoch &qRefTime) |
void | writeMS (const String &msname) |
Write out a simulated MeasurementSet with the given name. | |
void | extendMS (MeasurementSet &ms) |
Private Member Functions | |
void | local2global (Vector< Double > &xReturned, Vector< Double > &yReturned, Vector< Double > &zReturned, const MPosition &mRefLocation, const Vector< Double > &xIn, const Vector< Double > &yIn, const Vector< Double > &zIn) |
void | longlat2global (Vector< Double > &xReturned, Vector< Double > &yReturned, Vector< Double > &zReturned, const MPosition &mRefLocation, const Vector< Double > &xIn, const Vector< Double > &yIn, const Vector< Double > &zIn) |
void | blockage (Double &fraction1, Double &fraction2, const Vector< Double > &uvw, const Double diam1, const Double diam2) |
Returns the fractional blockage of one antenna by another We will want to put this somewhere else eventually, but I don't yet know where! Till then. | |
Private Attributes | |
Int | nSources_p |
Int | nSpWindows_p |
Int | nAnt_p |
Int | nFeed_p |
Int | nTimes_p |
Double | Tstart_p |
Double | Tend_p |
Double | Tint_p |
Double | Tgap_p |
Quantity | qIntegrationTime_p |
Quantity | qGapTime_p |
Quantity | qStartTime_p |
Quantity | qStopTime_p |
MEpoch | mRefTime_p |
Bool | useHourAngles_p |
Vector< Double > | mosSpacing_p |
Vector< Double > | startFreq_p |
Vector< Double > | freqInc_p |
Vector< Double > | freqRes_p |
Vector< Double > | arrayXYZ_p |
Vector< Double > | antDiam_p |
Vector< Int > | nChan_p |
Vector< Int > | nIntFld_p |
Vector< Int > | nIntSpW_p |
Vector< Int > | nCorr_p |
Vector< Int > | antId_p |
Vector< Int > | feedAntId_p |
Vector< Int > | feedId_p |
Vector< Int > | feedSpWId_p |
Vector< Int > | feedBeamId_p |
Vector< Int > | feedNumRec_p |
Matrix< Int > | nMos_p |
Matrix< Int > | stokesTypes_p |
Cube< Double > | beamOffset_p |
Cube< Complex > | polResp_p |
Vector< String > | srcName_p |
Vector< String > | antName_p |
Vector< String > | mountType_p |
Vector< String > | spWindowName_p |
Matrix< String > | feedPol_p |
Matrix< Double > | radec_p |
Matrix< Double > | antXYZ_p |
Matrix< Double > | feedXYZ_p |
Matrix< Double > | feedAngle_p |
MPosition | refPosition_p |
String | radecRefFrame_p |
String | telescope_p |
Double | fractionBlockageLimit_p |
Quantity | elevationLimit_p |
Float | autoCorrelationWt_p |
Create an empty MeasurementSet from observation and telescope descriptions.
MS is from MeasurementSet, Simulator refers to the generation of 'fake' data from a set of parameters for instrument and sources.
This class creates a MeasurementSet from a set of parameters for instrument and sources. It does not simulate the data, only the coordinates of a measurement. The application "simulator" uses this class to create a true simulated MS with perfect or corrupted data.
To test calibration and imaging programs it is necessary to have flawless data and data with errors that are known exactly. This class generates empty MeasurementSets (only coordinates filled in) that can be filled with predicted data.
Definition at line 84 of file MSSimulator.h.
casa::MSSimulator::MSSimulator | ( | ) |
Default constructor - use this, then invoke initAnt, initFeed, initSpWindow, initConfig.
casa::MSSimulator::MSSimulator | ( | const MSSimulator & | mss | ) |
Copy constructor - for completeness only.
casa::MSSimulator::~MSSimulator | ( | ) |
void casa::MSSimulator::blockage | ( | Double & | fraction1, | |
Double & | fraction2, | |||
const Vector< Double > & | uvw, | |||
const Double | diam1, | |||
const Double | diam2 | |||
) | [private] |
Returns the fractional blockage of one antenna by another We will want to put this somewhere else eventually, but I don't yet know where! Till then.
fraction1: fraction of antenna 1 that is blocked by 2 fraction2: fraction of antenna 2 that is blocked by 1 hint: at least one of the two will be 0.0
void casa::MSSimulator::extendMS | ( | MeasurementSet & | ms | ) |
void casa::MSSimulator::initAnt | ( | const String & | telname, | |
const Vector< Double > & | x, | |||
const Vector< Double > & | y, | |||
const Vector< Double > & | z, | |||
const Vector< Float > & | dishDiameter, | |||
const Vector< String > & | mount, | |||
const Vector< String > & | name, | |||
const String & | coordsystem, | |||
const MPosition & | mRefLocation | |||
) |
set the antenna and array data.
This is held in MSSimulator vectors, and is then written into the appropriate MS Tables when writeMS() and its helper function extendMS() are called. The same model is used for the Fields, SpWindows, Feeds, and Times information below.
void casa::MSSimulator::initFeeds | ( | const String & | mode | ) |
set the Feeds; brain dead version
void casa::MSSimulator::initFields | ( | const uInt | nSources, | |
const Vector< String > & | sourceName, | |||
const Vector< MDirection > & | sourceDirection, | |||
const Vector< Int > & | intsPerPointing, | |||
const Vector< Int > & | mosPointingsX, | |||
const Vector< Int > & | mosPointingsY, | |||
const Vector< Float > & | mosSpacing | |||
) |
set the observed fields
void casa::MSSimulator::initSpWindows | ( | const uInt | nSpWindows, | |
const Vector< String > & | spWindowName, | |||
const Vector< Int > & | nChan, | |||
const Vector< Quantity > & | startFreq, | |||
const Vector< Quantity > & | freqInc, | |||
const Vector< Quantity > & | freqRes, | |||
const Vector< String > & | stokesString | |||
) |
set the spectral windows information
void casa::MSSimulator::local2global | ( | Vector< Double > & | xReturned, | |
Vector< Double > & | yReturned, | |||
Vector< Double > & | zReturned, | |||
const MPosition & | mRefLocation, | |||
const Vector< Double > & | xIn, | |||
const Vector< Double > & | yIn, | |||
const Vector< Double > & | zIn | |||
) | [private] |
void casa::MSSimulator::longlat2global | ( | Vector< Double > & | xReturned, | |
Vector< Double > & | yReturned, | |||
Vector< Double > & | zReturned, | |||
const MPosition & | mRefLocation, | |||
const Vector< Double > & | xIn, | |||
const Vector< Double > & | yIn, | |||
const Vector< Double > & | zIn | |||
) | [private] |
MSSimulator& casa::MSSimulator::operator= | ( | const MSSimulator & | ) |
Assignment.
void casa::MSSimulator::setAutoCorrelationWt | ( | const Float | autocorrwt | ) | [inline] |
Definition at line 145 of file MSSimulator.h.
References autoCorrelationWt_p.
void casa::MSSimulator::setElevationLimit | ( | const Quantity & | ellimit | ) | [inline] |
Definition at line 142 of file MSSimulator.h.
References elevationLimit_p.
void casa::MSSimulator::setFractionBlockageLimit | ( | const Double | fraclimit | ) | [inline] |
Definition at line 139 of file MSSimulator.h.
References fractionBlockageLimit_p.
void casa::MSSimulator::setTimes | ( | const Quantity & | qIntegrationTime, | |
const Quantity & | qGapTime, | |||
const Bool | useHourAngles, | |||
const Quantity & | qStartTime, | |||
const Quantity & | qStopTime, | |||
const MEpoch & | qRefTime | |||
) |
void casa::MSSimulator::writeMS | ( | const String & | msname | ) |
Write out a simulated MeasurementSet with the given name.
Vector<Double> casa::MSSimulator::antDiam_p [private] |
Definition at line 169 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::antId_p [private] |
Definition at line 171 of file MSSimulator.h.
Vector<String> casa::MSSimulator::antName_p [private] |
Definition at line 176 of file MSSimulator.h.
Matrix<Double> casa::MSSimulator::antXYZ_p [private] |
Definition at line 178 of file MSSimulator.h.
Vector<Double> casa::MSSimulator::arrayXYZ_p [private] |
Definition at line 169 of file MSSimulator.h.
Float casa::MSSimulator::autoCorrelationWt_p [private] |
Definition at line 184 of file MSSimulator.h.
Referenced by setAutoCorrelationWt().
Cube<Double> casa::MSSimulator::beamOffset_p [private] |
Definition at line 174 of file MSSimulator.h.
Quantity casa::MSSimulator::elevationLimit_p [private] |
Definition at line 182 of file MSSimulator.h.
Referenced by setElevationLimit().
Matrix<Double> casa::MSSimulator::feedAngle_p [private] |
Definition at line 178 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::feedAntId_p [private] |
Definition at line 171 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::feedBeamId_p [private] |
Definition at line 171 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::feedId_p [private] |
Definition at line 171 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::feedNumRec_p [private] |
Definition at line 171 of file MSSimulator.h.
Matrix<String> casa::MSSimulator::feedPol_p [private] |
Definition at line 177 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::feedSpWId_p [private] |
Definition at line 171 of file MSSimulator.h.
Matrix<Double> casa::MSSimulator::feedXYZ_p [private] |
Definition at line 178 of file MSSimulator.h.
Definition at line 181 of file MSSimulator.h.
Referenced by setFractionBlockageLimit().
Vector<Double> casa::MSSimulator::freqInc_p [private] |
Definition at line 169 of file MSSimulator.h.
Vector<Double> casa::MSSimulator::freqRes_p [private] |
Definition at line 169 of file MSSimulator.h.
Vector<Double> casa::MSSimulator::mosSpacing_p [private] |
Definition at line 169 of file MSSimulator.h.
Vector<String> casa::MSSimulator::mountType_p [private] |
Definition at line 176 of file MSSimulator.h.
MEpoch casa::MSSimulator::mRefTime_p [private] |
Definition at line 166 of file MSSimulator.h.
Int casa::MSSimulator::nAnt_p [private] |
Definition at line 163 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::nChan_p [private] |
Definition at line 171 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::nCorr_p [private] |
Definition at line 171 of file MSSimulator.h.
Int casa::MSSimulator::nFeed_p [private] |
Definition at line 163 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::nIntFld_p [private] |
Definition at line 171 of file MSSimulator.h.
Vector<Int> casa::MSSimulator::nIntSpW_p [private] |
Definition at line 171 of file MSSimulator.h.
Matrix<Int> casa::MSSimulator::nMos_p [private] |
Definition at line 173 of file MSSimulator.h.
Int casa::MSSimulator::nSources_p [private] |
Definition at line 163 of file MSSimulator.h.
Int casa::MSSimulator::nSpWindows_p [private] |
Definition at line 163 of file MSSimulator.h.
Int casa::MSSimulator::nTimes_p [private] |
Definition at line 163 of file MSSimulator.h.
Cube<Complex> casa::MSSimulator::polResp_p [private] |
Definition at line 175 of file MSSimulator.h.
Quantity casa::MSSimulator::qGapTime_p [private] |
Definition at line 165 of file MSSimulator.h.
Definition at line 165 of file MSSimulator.h.
Quantity casa::MSSimulator::qStartTime_p [private] |
Definition at line 165 of file MSSimulator.h.
Quantity casa::MSSimulator::qStopTime_p [private] |
Definition at line 165 of file MSSimulator.h.
Matrix<Double> casa::MSSimulator::radec_p [private] |
Definition at line 178 of file MSSimulator.h.
String casa::MSSimulator::radecRefFrame_p [private] |
Definition at line 180 of file MSSimulator.h.
MPosition casa::MSSimulator::refPosition_p [private] |
Definition at line 179 of file MSSimulator.h.
Vector<String> casa::MSSimulator::spWindowName_p [private] |
Definition at line 176 of file MSSimulator.h.
Vector<String> casa::MSSimulator::srcName_p [private] |
Definition at line 176 of file MSSimulator.h.
Vector<Double> casa::MSSimulator::startFreq_p [private] |
Definition at line 169 of file MSSimulator.h.
Matrix<Int> casa::MSSimulator::stokesTypes_p [private] |
Definition at line 173 of file MSSimulator.h.
String casa::MSSimulator::telescope_p [private] |
Definition at line 180 of file MSSimulator.h.
Double casa::MSSimulator::Tend_p [private] |
Definition at line 164 of file MSSimulator.h.
Double casa::MSSimulator::Tgap_p [private] |
Definition at line 164 of file MSSimulator.h.
Double casa::MSSimulator::Tint_p [private] |
Definition at line 164 of file MSSimulator.h.
Double casa::MSSimulator::Tstart_p [private] |
Definition at line 164 of file MSSimulator.h.
Bool casa::MSSimulator::useHourAngles_p [private] |
Definition at line 167 of file MSSimulator.h.