casa
5.7.0-16
|
Simulates MeasurementSets from SkyModel and SkyEquation. More...
#include <Simulator.h>
Public Member Functions | |
Simulator () | |
Simulator (casacore::String &msname) | |
Construct from string. More... | |
Simulator (casacore::MeasurementSet &thems) | |
"newsimulator" ctor More... | |
casacore::String | name () const |
Return the name of the MeasurementSet. More... | |
Simulator (const Simulator &other) | |
Simulator & | operator= (const Simulator &other) |
~Simulator () | |
casacore::Bool | close () |
casacore::Bool | setdata (const casacore::Vector< casacore::Int > &spectralwindowids, const casacore::Vector< casacore::Int > &fieldids, const casacore::String &msSelect) |
Select the data to be predicted or corrupted. More... | |
casacore::Bool | settimes (const casacore::Quantity &integrationTime, const casacore::Bool useHourAngle, const casacore::MEpoch &refTime) |
casacore::Bool | setconfig (const casacore::String &telname, const casacore::Vector< casacore::Double > &x, const casacore::Vector< casacore::Double > &y, const casacore::Vector< casacore::Double > &z, const casacore::Vector< casacore::Double > &dishDiameter, const casacore::Vector< casacore::Double > &offset, const casacore::Vector< casacore::String > &mount, const casacore::Vector< casacore::String > &antName, const casacore::Vector< casacore::String > &padName, const casacore::String &coordsystem, const casacore::MPosition &referenceLocation) |
set the configuration; NOTE: the telname used here will determine the Voltage Pattern to be used in the simulation More... | |
casacore::Bool | getconfig () |
get info back from e.g. More... | |
casacore::Bool | setfield (const casacore::String &sourceName, const casacore::MDirection &sourceDirection, const casacore::String &calCode, const casacore::Quantity &distance) |
set the observed fields for the simulation More... | |
casacore::Bool | setmosaicfield (const casacore::String &sourcename, const casacore::String &calcode, const casacore::MDirection &fieldcenter, const casacore::Int xmosp, const casacore::Int ymosp, const casacore::Quantity &mosspacing, const casacore::Quantity &distance) |
set automatic fields for a mosaic More... | |
casacore::Bool | setspwindow (const casacore::String &spwName, const casacore::Quantity &freq, const casacore::Quantity &deltafreq, const casacore::Quantity &freqresolution, const casacore::MFrequency::Types &freqType, const casacore::Int nchannels, const casacore::String &stokes) |
set one or more spectral windows and their characteristics More... | |
casacore::Bool | setfeed (const casacore::String &mode, const casacore::Vector< casacore::Double > &x, const casacore::Vector< casacore::Double > &y, const casacore::Vector< casacore::String > &pol) |
Set the simulated feed characteristics. More... | |
casacore::Bool | setvp (const casacore::Bool dovp, const casacore::Bool defaultVP, const casacore::String &vpTable, const casacore::Bool doSquint, const casacore::Quantity &parAngleInc, const casacore::Quantity &skyPosThreshold, const casacore::Float &pbLimit) |
Set the voltage pattern. More... | |
casacore::Bool | setseed (const casacore::Int seed) |
Set the random number generator seed for the addition of errors. More... | |
casacore::Bool | setapply (const casacore::String &type, const casacore::Double &t, const casacore::String &table, const casacore::String &spw, const casacore::String &field, const casacore::String &interp, const casacore::Bool &calwt, const casacore::Vector< casacore::Int > &spwmap, const casacore::Float &opacity) |
Arrange to corrupt with existing calibration (cf Calibrater setapply) More... | |
casacore::Bool | setgain (const casacore::String &mode, const casacore::String &table, const casacore::Quantity &interval, const casacore::Vector< casacore::Double > &litude) |
Apply antenna-based gain errors. More... | |
casacore::Bool | settrop (const casacore::String &mode, const casacore::String &table, const casacore::Float pwv, const casacore::Float deltapwv, const casacore::Float beta, const casacore::Float windspeed) |
casacore::Bool | setpointingerror (const casacore::String &epJTableName, const casacore::Bool applyPointingOffsets, const casacore::Bool doPBCorrection) |
Apply antenna pointing and squint errors. More... | |
casacore::Bool | setleakage (const casacore::String &mode, const casacore::String &table, const casacore::Vector< casacore::Double > &litude, const casacore::Vector< casacore::Double > &offset) |
Apply polarization leakage errors. More... | |
casacore::Bool | setbandpass (const casacore::String &mode, const casacore::String &table, const casacore::Quantity &interval, const casacore::Vector< casacore::Double > &litude) |
Apply bandpass errors. More... | |
casacore::Bool | setpa (const casacore::String &mode, const casacore::String &table, const casacore::Quantity &interval) |
Simulate the parallactic angle phase effect. More... | |
casacore::Bool | oldsetnoise (const casacore::String &mode, const casacore::String &table, const casacore::Quantity &simplenoise, const casacore::Float antefficiency, const casacore::Float correfficiency, const casacore::Float spillefficiency, const casacore::Float tau, const casacore::Float trx, const casacore::Float tatmos, const casacore::Float tcmb) |
Simulate quasi-realistic thermal noise, which can depend upon elevation, bandwidth, antenna diameter, as expected. More... | |
casacore::Bool | setnoise (const casacore::String &mode, const casacore::String &caltable, const casacore::Quantity &simplenoise, const casacore::Quantity &pground, const casacore::Float relhum, const casacore::Quantity &altitude, const casacore::Quantity &waterheight, const casacore::Quantity &pwv, const casacore::Float tatmos, const casacore::Float tau, const casacore::Float antefficiency, const casacore::Float spillefficiency, const casacore::Float correfficiency, const casacore::Float trx, const casacore::Float tground, const casacore::Float tcmb, const casacore::Bool OTF, const casacore::Float senscoeff, const casacore::Int rxtype) |
casacore::Bool | corrupt () |
apply errors to the data in our MS casacore::Bool corrupt(); More... | |
casacore::Bool | setlimits (const casacore::Double shadowFraction, const casacore::Quantity &elevationLimit) |
Set limits. More... | |
casacore::Bool | setauto (const casacore::Double autocorrwt) |
Set autocorrelation weight. More... | |
casacore::Bool | observe (const casacore::String &sourcename, const casacore::String &spwname, const casacore::Quantity &startTime, const casacore::Quantity &stopTime, const casacore::Bool add_observationn=true, const casacore::Bool state_sig=true, const casacore::Bool state_ref=true, const double &state_cal=0., const double &state_load=0., const unsigned int state_sub_scan=1, const casacore::String &state_obs_mode="OBSERVE_TARGET#ON_SOURCE", const casacore::String &observername="CASA simulator", const casacore::String &projectname="CASA simulation") |
add new visibilities as described by the set methods to an existing or just created measurement set More... | |
casacore::Bool | observemany (const casacore::Vector< casacore::String > &sourcenames, const casacore::String &spwname, const casacore::Vector< casacore::Quantity > &startTimes, const casacore::Vector< casacore::Quantity > &stopTimes, const casacore::Vector< casacore::MDirection > &directions, const casacore::Bool add_observation, const casacore::Bool state_sig, const casacore::Bool state_ref, const double &state_cal, const double &state_load, const unsigned int state_sub_scan, const casacore::String &state_obs_mode, const casacore::String &observername, const casacore::String &projectname) |
casacore::Bool | predict (const casacore::Vector< casacore::String > &modelImage, const casacore::String &compList, const casacore::Bool incremental) |
Given a model image, predict the visibilities onto the (u,v) coordinates of our MS. More... | |
casacore::String | state () |
casacore::Bool | summary () |
casacore::Bool | resetviscal () |
casacore::Bool | resetimcal () |
casacore::Bool | reset () |
casacore::Bool | setoptions (const casacore::String &ftmachine, const casacore::Int cache, const casacore::Int tile, const casacore::String &gridfunction, const casacore::MPosition &mLocation, const casacore::Float padding, const casacore::Int facets, const casacore::Double maxData, const casacore::Int wprojPlanes) |
Set the processing options. More... | |
void | setPrtlev (const casacore::Int &prtlev) |
Set the print level. More... | |
casacore::Int & | prtlev () |
Return print (cout) level. More... | |
Simulates MeasurementSets from SkyModel and SkyEquation.
Public interface
The name MUST have the 'DO' prefix as this class is derived from ApplicationObject, and hence is classified as a distributed object. For the same reason the rest of its name must be in lower case. This class simulates visibility data, so it is called DOnewsimulator.
This class was written to make the simulation capability useful from glish
Definition at line 99 of file Simulator.h.
casa::Simulator::Simulator | ( | ) |
casa::Simulator::Simulator | ( | casacore::String & | msname | ) |
Construct from string.
casa::Simulator::Simulator | ( | casacore::MeasurementSet & | thems | ) |
"newsimulator" ctor
casa::Simulator::Simulator | ( | const Simulator & | other | ) |
casa::Simulator::~Simulator | ( | ) |
casacore::Bool casa::Simulator::close | ( | ) |
|
private |
casacore::Bool casa::Simulator::corrupt | ( | ) |
apply errors to the data in our MS casacore::Bool corrupt();
|
private |
|
private |
Arrange to corrupt with simulated calibration (cf Calibrater setapply)
|
private |
SkyEquation management.
|
private |
individual summary() functions
|
private |
set up some defaults
|
private |
|
private |
Prints an error message if the newsimulator DO is detached and returns true.
|
private |
|
private |
|
private |
print out some help about create() casacore::Format direction nicely
|
private |
casacore::Format time nicely
casacore::Bool casa::Simulator::getconfig | ( | ) |
get info back from e.g.
loaded ms in newmssimulator
|
private |
Get VP record - copied from SynthesisImager.
|
private |
Make a VisSet if needed.
casacore::String casa::Simulator::name | ( | ) | const |
Return the name of the MeasurementSet.
|
private |
casacore::Bool casa::Simulator::observe | ( | const casacore::String & | sourcename, |
const casacore::String & | spwname, | ||
const casacore::Quantity & | startTime, | ||
const casacore::Quantity & | stopTime, | ||
const casacore::Bool | add_observationn = true , |
||
const casacore::Bool | state_sig = true , |
||
const casacore::Bool | state_ref = true , |
||
const double & | state_cal = 0. , |
||
const double & | state_load = 0. , |
||
const unsigned int | state_sub_scan = 1 , |
||
const casacore::String & | state_obs_mode = "OBSERVE_TARGET#ON_SOURCE" , |
||
const casacore::String & | observername = "CASA simulator" , |
||
const casacore::String & | projectname = "CASA simulation" |
||
) |
add new visibilities as described by the set methods to an existing or just created measurement set
casacore::Bool casa::Simulator::observemany | ( | const casacore::Vector< casacore::String > & | sourcenames, |
const casacore::String & | spwname, | ||
const casacore::Vector< casacore::Quantity > & | startTimes, | ||
const casacore::Vector< casacore::Quantity > & | stopTimes, | ||
const casacore::Vector< casacore::MDirection > & | directions, | ||
const casacore::Bool | add_observation, | ||
const casacore::Bool | state_sig, | ||
const casacore::Bool | state_ref, | ||
const double & | state_cal, | ||
const double & | state_load, | ||
const unsigned int | state_sub_scan, | ||
const casacore::String & | state_obs_mode, | ||
const casacore::String & | observername, | ||
const casacore::String & | projectname | ||
) |
casacore::Bool casa::Simulator::oldsetnoise | ( | const casacore::String & | mode, |
const casacore::String & | table, | ||
const casacore::Quantity & | simplenoise, | ||
const casacore::Float | antefficiency, | ||
const casacore::Float | correfficiency, | ||
const casacore::Float | spillefficiency, | ||
const casacore::Float | tau, | ||
const casacore::Float | trx, | ||
const casacore::Float | tatmos, | ||
const casacore::Float | tcmb | ||
) |
Simulate quasi-realistic thermal noise, which can depend upon elevation, bandwidth, antenna diameter, as expected.
|
private |
casacore::Bool casa::Simulator::predict | ( | const casacore::Vector< casacore::String > & | modelImage, |
const casacore::String & | compList, | ||
const casacore::Bool | incremental | ||
) |
Given a model image, predict the visibilities onto the (u,v) coordinates of our MS.
|
private |
|
inline |
Return print (cout) level.
Definition at line 343 of file Simulator.h.
References prtlev_.
Referenced by setPrtlev().
casacore::Bool casa::Simulator::reset | ( | ) |
casacore::Bool casa::Simulator::resetimcal | ( | ) |
casacore::Bool casa::Simulator::resetviscal | ( | ) |
casacore::Bool casa::Simulator::setapply | ( | const casacore::String & | type, |
const casacore::Double & | t, | ||
const casacore::String & | table, | ||
const casacore::String & | spw, | ||
const casacore::String & | field, | ||
const casacore::String & | interp, | ||
const casacore::Bool & | calwt, | ||
const casacore::Vector< casacore::Int > & | spwmap, | ||
const casacore::Float & | opacity | ||
) |
Arrange to corrupt with existing calibration (cf Calibrater setapply)
casacore::Bool casa::Simulator::setauto | ( | const casacore::Double | autocorrwt | ) |
Set autocorrelation weight.
casacore::Bool casa::Simulator::setbandpass | ( | const casacore::String & | mode, |
const casacore::String & | table, | ||
const casacore::Quantity & | interval, | ||
const casacore::Vector< casacore::Double > & | amplitude | ||
) |
Apply bandpass errors.
casacore::Bool casa::Simulator::setconfig | ( | const casacore::String & | telname, |
const casacore::Vector< casacore::Double > & | x, | ||
const casacore::Vector< casacore::Double > & | y, | ||
const casacore::Vector< casacore::Double > & | z, | ||
const casacore::Vector< casacore::Double > & | dishDiameter, | ||
const casacore::Vector< casacore::Double > & | offset, | ||
const casacore::Vector< casacore::String > & | mount, | ||
const casacore::Vector< casacore::String > & | antName, | ||
const casacore::Vector< casacore::String > & | padName, | ||
const casacore::String & | coordsystem, | ||
const casacore::MPosition & | referenceLocation | ||
) |
set the configuration; NOTE: the telname used here will determine the Voltage Pattern to be used in the simulation
casacore::Bool casa::Simulator::setdata | ( | const casacore::Vector< casacore::Int > & | spectralwindowids, |
const casacore::Vector< casacore::Int > & | fieldids, | ||
const casacore::String & | msSelect | ||
) |
Select the data to be predicted or corrupted.
casacore::Bool casa::Simulator::setfeed | ( | const casacore::String & | mode, |
const casacore::Vector< casacore::Double > & | x, | ||
const casacore::Vector< casacore::Double > & | y, | ||
const casacore::Vector< casacore::String > & | pol | ||
) |
Set the simulated feed characteristics.
casacore::Bool casa::Simulator::setfield | ( | const casacore::String & | sourceName, |
const casacore::MDirection & | sourceDirection, | ||
const casacore::String & | calCode, | ||
const casacore::Quantity & | distance | ||
) |
set the observed fields for the simulation
casacore::Bool casa::Simulator::setgain | ( | const casacore::String & | mode, |
const casacore::String & | table, | ||
const casacore::Quantity & | interval, | ||
const casacore::Vector< casacore::Double > & | amplitude | ||
) |
Apply antenna-based gain errors.
casacore::Bool casa::Simulator::setleakage | ( | const casacore::String & | mode, |
const casacore::String & | table, | ||
const casacore::Vector< casacore::Double > & | amplitude, | ||
const casacore::Vector< casacore::Double > & | offset | ||
) |
Apply polarization leakage errors.
amplitude | const casacore::Quantity& interval, |
casacore::Bool casa::Simulator::setlimits | ( | const casacore::Double | shadowFraction, |
const casacore::Quantity & | elevationLimit | ||
) |
Set limits.
casacore::Bool casa::Simulator::setmosaicfield | ( | const casacore::String & | sourcename, |
const casacore::String & | calcode, | ||
const casacore::MDirection & | fieldcenter, | ||
const casacore::Int | xmosp, | ||
const casacore::Int | ymosp, | ||
const casacore::Quantity & | mosspacing, | ||
const casacore::Quantity & | distance | ||
) |
set automatic fields for a mosaic
casacore::Bool casa::Simulator::setnoise | ( | const casacore::String & | mode, |
const casacore::String & | caltable, | ||
const casacore::Quantity & | simplenoise, | ||
const casacore::Quantity & | pground, | ||
const casacore::Float | relhum, | ||
const casacore::Quantity & | altitude, | ||
const casacore::Quantity & | waterheight, | ||
const casacore::Quantity & | pwv, | ||
const casacore::Float | tatmos, | ||
const casacore::Float | tau, | ||
const casacore::Float | antefficiency, | ||
const casacore::Float | spillefficiency, | ||
const casacore::Float | correfficiency, | ||
const casacore::Float | trx, | ||
const casacore::Float | tground, | ||
const casacore::Float | tcmb, | ||
const casacore::Bool | OTF, | ||
const casacore::Float | senscoeff, | ||
const casacore::Int | rxtype | ||
) |
pground | if blank, not stored or ATM calculation |
tatmos | user-specified tau and tatmos |
casacore::Bool casa::Simulator::setoptions | ( | const casacore::String & | ftmachine, |
const casacore::Int | cache, | ||
const casacore::Int | tile, | ||
const casacore::String & | gridfunction, | ||
const casacore::MPosition & | mLocation, | ||
const casacore::Float | padding, | ||
const casacore::Int | facets, | ||
const casacore::Double | maxData, | ||
const casacore::Int | wprojPlanes | ||
) |
Set the processing options.
casacore::Bool casa::Simulator::setpa | ( | const casacore::String & | mode, |
const casacore::String & | table, | ||
const casacore::Quantity & | interval | ||
) |
Simulate the parallactic angle phase effect.
casacore::Bool casa::Simulator::setpointingerror | ( | const casacore::String & | epJTableName, |
const casacore::Bool | applyPointingOffsets, | ||
const casacore::Bool | doPBCorrection | ||
) |
Apply antenna pointing and squint errors.
|
inline |
casacore::Bool casa::Simulator::setseed | ( | const casacore::Int | seed | ) |
Set the random number generator seed for the addition of errors.
casacore::Bool casa::Simulator::setspwindow | ( | const casacore::String & | spwName, |
const casacore::Quantity & | freq, | ||
const casacore::Quantity & | deltafreq, | ||
const casacore::Quantity & | freqresolution, | ||
const casacore::MFrequency::Types & | freqType, | ||
const casacore::Int | nchannels, | ||
const casacore::String & | stokes | ||
) |
set one or more spectral windows and their characteristics
casacore::Bool casa::Simulator::settimes | ( | const casacore::Quantity & | integrationTime, |
const casacore::Bool | useHourAngle, | ||
const casacore::MEpoch & | refTime | ||
) |
casacore::Bool casa::Simulator::settrop | ( | const casacore::String & | mode, |
const casacore::String & | table, | ||
const casacore::Float | pwv, | ||
const casacore::Float | deltapwv, | ||
const casacore::Float | beta, | ||
const casacore::Float | windspeed | ||
) |
casacore::Bool casa::Simulator::setvp | ( | const casacore::Bool | dovp, |
const casacore::Bool | defaultVP, | ||
const casacore::String & | vpTable, | ||
const casacore::Bool | doSquint, | ||
const casacore::Quantity & | parAngleInc, | ||
const casacore::Quantity & | skyPosThreshold, | ||
const casacore::Float & | pbLimit | ||
) |
Set the voltage pattern.
|
private |
casacore::String casa::Simulator::state | ( | ) |
casacore::Bool casa::Simulator::summary | ( | ) |
|
private |
|
private |
|
private |
Definition at line 402 of file Simulator.h.
|
private |
Definition at line 433 of file Simulator.h.
|
private |
Definition at line 518 of file Simulator.h.
|
private |
casacore::Long maxData_p;
info for coordinates and station locations
Definition at line 425 of file Simulator.h.
|
private |
Definition at line 414 of file Simulator.h.
|
private |
Definition at line 444 of file Simulator.h.
|
private |
Definition at line 407 of file Simulator.h.
|
private |
Definition at line 411 of file Simulator.h.
|
private |
Definition at line 435 of file Simulator.h.
|
private |
Definition at line 430 of file Simulator.h.
|
private |
Definition at line 446 of file Simulator.h.
|
private |
Definition at line 492 of file Simulator.h.
|
private |
Definition at line 519 of file Simulator.h.
|
private |
Some parameters for voltage pattern (vp):
Definition at line 491 of file Simulator.h.
|
private |
The Jones matrix to hold the antenna pointing offsets and the associated table name.
if applyPointingOffsets is false, only VLA polarization squint will be included in EPJones. If doPBCorrection is true, the model image will be divided by the primary beam before being used to predict the visibilities.
EPJones *epJ_p;
Definition at line 517 of file Simulator.h.
|
private |
casacore::Bool MSMayBeOK;
Definition at line 418 of file Simulator.h.
|
private |
Feed information (there will be much more coming, but we are brain dead at this moment).
Definition at line 476 of file Simulator.h.
|
private |
Definition at line 478 of file Simulator.h.
|
private |
Definition at line 479 of file Simulator.h.
|
private |
Definition at line 467 of file Simulator.h.
|
private |
Definition at line 468 of file Simulator.h.
|
private |
Definition at line 406 of file Simulator.h.
|
private |
Definition at line 413 of file Simulator.h.
|
private |
Definition at line 413 of file Simulator.h.
|
private |
Definition at line 499 of file Simulator.h.
|
private |
Definition at line 410 of file Simulator.h.
|
private |
Some times which are required for settimes.
Definition at line 483 of file Simulator.h.
|
private |
Definition at line 415 of file Simulator.h.
|
private |
Definition at line 432 of file Simulator.h.
|
private |
Definition at line 436 of file Simulator.h.
|
private |
Definition at line 396 of file Simulator.h.
|
private |
Definition at line 395 of file Simulator.h.
|
private |
Definition at line 397 of file Simulator.h.
|
private |
Definition at line 465 of file Simulator.h.
|
private |
Definition at line 477 of file Simulator.h.
|
private |
info for observed field parameters
Definition at line 442 of file Simulator.h.
|
private |
Definition at line 409 of file Simulator.h.
|
private |
Saving some information about the various corrupting terms.
Definition at line 504 of file Simulator.h.
|
private |
info for spectral window parameters
spectral windows data
RI 20091107 durn. whoever build this didn't enable multiple spw. we'll at least get some functionality here, but there are probably combinations of pols etc that won't properly report here. better than now, when it doesn't even report more than one spw.
Definition at line 463 of file Simulator.h.
|
private |
Definition at line 431 of file Simulator.h.
|
private |
Definition at line 416 of file Simulator.h.
|
private |
Definition at line 434 of file Simulator.h.
|
private |
Definition at line 494 of file Simulator.h.
|
private |
Definition at line 496 of file Simulator.h.
|
private |
Definition at line 522 of file Simulator.h.
Referenced by prtlev(), and setPrtlev().
|
private |
Definition at line 485 of file Simulator.h.
|
private |
Definition at line 404 of file Simulator.h.
|
private |
Definition at line 400 of file Simulator.h.
|
private |
Cache the newsimulator.
Definition at line 508 of file Simulator.h.
|
private |
Definition at line 495 of file Simulator.h.
|
private |
Definition at line 405 of file Simulator.h.
|
private |
Definition at line 445 of file Simulator.h.
|
private |
Definition at line 443 of file Simulator.h.
|
private |
Definition at line 464 of file Simulator.h.
|
private |
Definition at line 497 of file Simulator.h.
|
private |
Definition at line 466 of file Simulator.h.
|
private |
Definition at line 469 of file Simulator.h.
|
private |
Definition at line 426 of file Simulator.h.
|
private |
Definition at line 414 of file Simulator.h.
|
private |
Definition at line 486 of file Simulator.h.
|
private |
Definition at line 484 of file Simulator.h.
|
private |
Generic container for any number of calibration effects to corrupt with.
Definition at line 452 of file Simulator.h.
|
private |
VisEquation handles corruption by visibility calibration effects.
Definition at line 450 of file Simulator.h.
|
private |
Definition at line 498 of file Simulator.h.
|
private |
Definition at line 493 of file Simulator.h.
|
private |
Definition at line 398 of file Simulator.h.
|
private |
Definition at line 419 of file Simulator.h.
|
private |
Definition at line 427 of file Simulator.h.
|
private |
Definition at line 428 of file Simulator.h.
|
private |
Definition at line 429 of file Simulator.h.