29 #ifndef SYNTHESIS_SIMULATOR_H
30 #define SYNTHESIS_SIMULATOR_H
55 class CleanImageSkyModel;
57 class ComponentFTMachine;
291 const double& state_cal=0.,
292 const double& state_load=0.,
293 const unsigned int state_sub_scan=1,
306 const double& state_cal,
307 const double& state_load,
308 const unsigned int state_sub_scan,
A Measure: astronomical direction.
casacore::Vector< casacore::Int > nChan_p
CommonPB
This enumeration provides a simple way to instantiate the common primary beam models.
A Measure: position on Earth.
casacore::String epJTableName_p
The Jones matrix to hold the antenna pointing offsets and the associated table name.
casacore::String vpTableStr_p
casacore::Vector< casacore::Double > x_p
casacore::Vector< casacore::Double > y_p
casacore::Vector< casacore::String > calCode_p
casacore::Quantity skyPosThreshold_p
casacore::Vector< casacore::String > padName_p
casacore::Bool setauto(const casacore::Double autocorrwt)
Set autocorrelation weight.
casacore::Bool noiseSummary(casacore::LogIO &os)
casacore::Bool doDefaultVP_p
casacore::Bool vpSummary(casacore::LogIO &os)
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.
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
casacore::Bool resetimcal()
casacore::Vector< casacore::String > sourceName_p
casacore::Bool applyPointingOffsets_p
ComponentList * componentList_p
casacore::MeasurementSet * ms_p
virtual Type type()
Return the type enum.
casacore::Bool feedsInitialized
casacore::MPosition mLocation_p
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 t...
casacore::Bool doPBCorrection_p
casacore::String coordsystem_p
void defaults()
set up some defaults
casacore::Bool setlimits(const casacore::Double shadowFraction, const casacore::Quantity &elevationLimit)
Set limits.
casacore::String msname_p
casacore::Float pbLimit_p
casacore::Bool setbandpass(const casacore::String &mode, const casacore::String &table, const casacore::Quantity &interval, const casacore::Vector< casacore::Double > &litude)
Apply bandpass errors.
ABSTRACT TOOL CLASSES A PlotTool is a higher level event handler for a PlotCanvas The idea is to take common tasks which may require multiple events and put them in one place PlotTools also provide additional functionality in that they can be active and blocking non blocking The PlotCanvas will only send events to active and will not send events to later tools or event handlers if the latest tool was blocking In this way a single tool can be used to handle ALL user interaction via the GUI at one time
SquintType
Allowed Squints: NONE = no squint: PB is centered on the pointing center RR = PB is shifted from poin...
casacore::String telescope_p
casacore::Bool useHourAngle_p
casacore::Bool setseed(const casacore::Int seed)
Set the random number generator seed for the addition of errors.
ostream-like interface to creating log messages.
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
CleanImageSkyModel * sm_p
casacore::String gridfunction_p
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.
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 feedSummary(casacore::LogIO &os)
casacore::Bool resetviscal()
casacore::Vector< casacore::MDirection > sourceDirection_p
casacore::Vector< casacore::String > spWindowName_p
A Measure: instant in time.
casacore::Int facets_p
casacore::Bool MSMayBeOK;
casacore::Bool feedsHaveBeenSet
casacore::Bool corrupt()
apply errors to the data in our MS casacore::Bool corrupt();
casacore::Bool corruptSummary(casacore::LogIO &os)
casacore::Vector< casacore::String > antName_p
Model the diagonal elements of the Voltage Pattern Sky Jones Matrices.
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)
casacore::NewMSSimulator * sim_p
Cache the newsimulator.
casacore::Vector< casacore::Quantity > distance_p
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.
casacore::Quantity integrationTime_p
Some times which are required for settimes.
void getVPRecord(casacore::Record &rec, PBMath::CommonPB &kpb, casacore::String telescop)
Get VP record - copied from SynthesisImager.
casacore::String name() const
Return the name of the MeasurementSet.
casacore::Bool doVP_p
Some parameters for voltage pattern (vp):
casacore::Bool detached() const
Prints an error message if the newsimulator DO is detached and returns true.
Create an empty MeasurementSet from observation and telescope descriptions.
casacore::MEpoch refTime_p
casacore::Vector< casacore::Double > diam_p
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::Int nField
info for observed field parameters
casacore::Quantity parAngleInc_p
casacore::Bool createSkyEquation(const casacore::Vector< casacore::String > &image, const casacore::String complist)
SkyEquation management.
A hierarchical collection of named fields of various types.
Simulates MeasurementSets from SkyModel and SkyEquation.
bool Bool
Define the standard types used by Casacore.
casacore::Int & prtlev()
Return print (cout) level.
casacore::Vector< casacore::Quantity > freqInc_p
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.
BeamSquint::SquintType squintType_p
void makeVisSet()
Make a VisSet if needed.
casacore::Bool timeSummary(casacore::LogIO &os)
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 create_corrupt(casacore::Record &simpar)
Arrange to corrupt with simulated calibration (cf Calibrater setapply)
casacore::Bool getconfig()
get info back from e.g.
A drop-in replacement for Block<T*>.
ComponentFTMachine * cft_p
casacore::String formatDirection(const casacore::MDirection &direction)
print out some help about create() casacore::Format direction nicely
A Table intended to hold astronomical data (a set of Measurements).
casacore::Bool configSummary(casacore::LogIO &os)
casacore::Vector< casacore::Quantity > freqRes_p
casacore::Bool timesHaveBeenSet_p
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.
casacore::Vector< casacore::String > stokesString_p
casacore::String ftmachine_p
casacore::PtrBlock< casacore::PagedImage< casacore::Float > * > images_p
casacore::Int nSpw
info for spectral window parameters
casacore::Float padding_p
casacore::MPosition mRefLocation_p
casacore::Bool settimes(const casacore::Quantity &integrationTime, const casacore::Bool useHourAngle, const casacore::MEpoch &refTime)
A class for manipulating groups of components.
casacore::Bool setpointingerror(const casacore::String &epJTableName, const casacore::Bool applyPointingOffsets, const casacore::Bool doPBCorrection)
Apply antenna pointing and squint errors.
casacore::Vector< casacore::String > mount_p
casacore::Bool setpa(const casacore::String &mode, const casacore::String &table, const casacore::Quantity &interval)
Simulate the parallactic angle phase effect.
String: the storage and methods of handling collections of characters.
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.
casacore::Bool spWindowSummary(casacore::LogIO &os)
void setPrtlev(const casacore::Int &prtlev)
Set the print level.
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
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 ...
VisEquation ve_p
VisEquation handles corruption by visibility calibration effects.
Image Sky Model: Image-based Model for the Sky Brightness.
casacore::String noisemode_p
Saving some information about the various corrupting terms.
Types
Types of known MFrequencies Warning: The order defines the order in the translation matrix FromTo in...
casacore::Bool fieldSummary(casacore::LogIO &os)
casacore::String feedMode_p
Feed information (there will be much more coming, but we are brain dead at this moment).
casacore::Vector< casacore::Double > offset_p
casacore::String formatTime(const casacore::Double time)
casacore::Format time nicely
Read, store, and manipulate astronomical images.
casacore::Vector< casacore::Quantity > startFreq_p
casacore::Bool createSummary(casacore::LogIO &os)
individual summary() functions
void destroySkyEquation()
casacore::Vector< casacore::Double > z_p
casacore::Int wprojPlanes_p
casacore::Bool areStationCoordsSet_p
casacore::Long maxData_p;
casacore::Bool predictSummary(casacore::LogIO &os)
casacore::Bool optionsSummary(casacore::LogIO &os)
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.
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.
casacore::PtrBlock< VisCal * > vc_p
Generic container for any number of calibration effects to corrupt with.
Simulator & operator=(const Simulator &other)
defines interface for the Fourier Transform Machine
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.
TableExprNode amplitude(const TableExprNode &node)
The amplitude (i.e.
casacore::MeasurementSet * mssel_p