27 #ifndef SYNTHESIS_SYNTHESISIMAGER_H
28 #define SYNTHESIS_SYNTHESISIMAGER_H
56 class VisImagingWeight;
119 const bool useDoublePrec=
true,
355 bool useSymmetricBeam,
double diam);
A Vector of integers, for indexing into Array<T> objects.
A Measure: astronomical direction.
casacore::Block< casacore::Vector< casacore::Int > > blockStep_p
CommonPB
This enumeration provides a simple way to instantiate the common primary beam models.
A 1-D Specialization of the Array class.
FTMachine::Type datacol_p
casacore::Bool freqFrameValid_p;
A Measure: position on Earth.
const SynthesisParamsGrid & getSynthesisParamsGrid()
casacore::CountedPtr< SIImageStore > unFacettedImStore_p
if facetting this storage will keep the unsliced version
virtual casacore::Long estimateRAM()
return an estimate of memory it is going to use in kB
Object to hold type of imaging weight scheme to be used on the fly and to provide facilities to do th...
casacore::Data Selection *casacore::Vector< SynthesisParamsSelect > dataSel_p
Geometric parameters needed for a sky projection to a plane.
void executeMajorCycle(casacore::Record &controls)
casacore::Record getMajorCycleControls();
casacore::Block< casacore::Vector< casacore::Int > > blockNChan_p
virtual void setComponentList(const ComponentList &cl, casacore::Bool sdgrid=false)
Defining componentlist to use while degriding This should be called once...if multiple lists are used...
void resetMappers()
the following get rid of the mappers in this object
casacore::Cube< casacore::Int > chanSel_p
the 'channel flags' to handle various channel selections in the spw parameter
Stokes parameter definitions for interface to table data.
casacore::IPosition itsMaxShape
casacore::Int updateNchan()
casacore::Int chanChunksStore_p
virtual Type type()
Return the type enum.
SynthesisParamsGrid gridpars_p
casacore::Bool imageDefined_p
virtual casacore::Vector< SynthesisParamsSelect > tuneSelectData()
casacore::Function to tune the data selection to intersect with image definition chosen This is to op...
void createMosFTMachine(casacore::CountedPtr< FTMachine > &theFT, casacore::CountedPtr< FTMachine > &theIFT, const casacore::Float padding, const casacore::Bool useAutoCorr, const casacore::Bool useDoublePrec, const casacore::Float rotatePAStep, const casacore::String Stokes="I", const casacore::Bool doConjConvFunc=false)
virtual casacore::Record apparentSensitivity()
Calculate apparent sensitivity (for Visibility spectrum) Image spectral grid TBD Throws an exception ...
Choose between different types of FTMs *void createFTMachine(casacore::CountedPtr< FTMachine > &theFT, casacore::CountedPtr< FTMachine > &theIFT, const casacore::String &ftname, const casacore::uInt nTaylorTerms=1, const casacore::String mType="default", const casacore::Int facets=1, const casacore::Int wprojplane=1, const casacore::Float padding=1.0, const casacore::Bool useAutocorr=false, const casacore::Bool useDoublePrec=true, const casacore::String gridFunction=casacore::String("SF"), const casacore::Bool aTermOn=true, const casacore::Bool psTermOn=true, const casacore::Bool mTermOn=false, const casacore::Bool wbAWP=true, const casacore::String cfCache="", const casacore::Bool usePointing=false, const casacore::Bool doPBCorr=true, const casacore::Bool conjBeams=true, const casacore::Float computePAStep=360.0, const casacore::Float rotatePAStep=5.0, const casacore::String interpolation=casacore::String("linear"), const casacore::Bool freqFrameValid=true, const casacore::Int cache=1000000000, const casacore::Int tile=16, const casacore::String stokes="I", const casacore::String imageNamePrefix="")
casacore::Block< casacore::CountedPtr< SIImageStore > > createFacetImageStoreList(casacore::CountedPtr< SIImageStore > imagestore, casacore::Int facets)
casacore::String getWeightDensity()
Stores the weight density in an image.
virtual casacore::Bool setWeightDensity(const casacore::String &imagename=casacore::String(""))
set the weight density to the visibility iterator the default is to set it from the imagestore griwt(...
casacore::CountedPtr< SIImageStore > unChanChunkedImStore_p
casacore::Record itsCsysRec
Primary beam envelope class, derived from PBMathInterface.
Class that contains functions needed for imager.
casacore::Matrix< casacore::Double > mssFreqSel_p
virtual void predictModel()
static casacore::String doubleToString(const casacore::Double &df)
casacore::MDirection phaseCenter_p
casacore::Block< casacore::CountedPtr< SIImageStore > > createChanChunkImageStoreList(casacore::CountedPtr< SIImageStore > imagestore, casacore::Int chanchunks)
void setPsfFromOneFacet();
virtual void makeSdImage(casacore::Bool dopsf=false)
void appendToMapperList(casacore::String imagename, casacore::CoordinateSystem &csys, casacore::String ftmachine, casacore::Quantity distance=casacore::Quantity(0.0,"m"), casacore::Int facets=1, const casacore::Bool overwrite=false)
It associated the ftmachine with a given field.
void createAWPFTMachine(casacore::CountedPtr< FTMachine > &theFT, casacore::CountedPtr< FTMachine > &theIFT, const casacore::String &ftmName, const casacore::Int facets, const casacore::Int wprojPlane, const casacore::Float padding, const casacore::Bool useAutocorr, const casacore::Bool useDoublePrec, const casacore::String gridFunction, const casacore::Bool aTermOn, const casacore::Bool psTermOn, const casacore::Bool mTermOn, const casacore::Bool wbAWP, const casacore::String cfCache, const casacore::Bool usePointing, const casacore::Bool doPBCorr, const casacore::Bool conjBeams, const casacore::Float computePAStep, const casacore::Float rotatePAStep, const casacore::Int cache, const casacore::Int tile, const casacore::String imageNamePrefix="")
casacore::Bool useViVb2_p
vi::FrequencySelections fselections_p; casacore::CountedPtr<vi::VisibilityIterator2> vi_p; ...
casacore::Int nMajorCycles
casacore::MPosition mLocation_p
ROVisibilityIterator * rvi_p
void getVPRecord(casacore::Record &rec, PBMath::CommonPB &kpb, casacore::String telescop)
Get VP record.
SynthesisImager()
Default constructor.
casacore::CountedPtr< SIMapper > createSIMapper(casacore::String mappertype, casacore::CountedPtr< SIImageStore > imagestore, casacore::CountedPtr< FTMachine > ftmachine, casacore::CountedPtr< FTMachine > iftmachine, casacore::uInt ntaylorterms=1)
Choose between different types of Mappers (single term, multiterm, imagemosaic, faceted) ...
Referenced counted pointer for constant data.
A base class for astronomical images.
casacore::Record getcsys()
bool makePBImage(const casacore::String &telescopeName, bool useSymmetricBeam, double diam)
virtual void runMajorCycle(const casacore::Bool dopsf=false, const casacore::Bool savemodel=false)
Do the major cycle.
VisibilityIterator * wvi_p
virtual void createVisSet(const casacore::Bool writeaccess=false)
void makePSF()
make the psf images i.e grid weight rather than data
A class to provide easy read-only access to MeasurementSet columns.
virtual ~SynthesisImager()
casacore::Block< casacore::MeasurementSet > mss4vi_p
virtual casacore::Bool selectData(const SynthesisParamsSelect &selpars)
Copy constructor and assignment operator Imager(const Imager&); Imager& operator=(const Imager&); ...
casacore::Bool writeAccess_p
Type
Types of known Images that may be made using the makeImage method.
ATerm * createTelescopeATerm(const casacore::MeasurementSet &ms, const casacore::Bool &isATermOn)
casacore::Block< casacore::Vector< casacore::Int > > blockStart_p
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
casacore::Int facetsStore_p
casacore::CoordinateSystem itsMaxCoordSys
casacore::Block< casacore::Vector< casacore::Int > > blockSpw_p
A Table intended to hold astronomical data (a set of Measurements).
SynthesisParamsImage impars_p
virtual void makeImage(casacore::String type, const casacore::String &imagename, const casacore::String &complexImage=casacore::String(""), const Int whichModel=0)
This should replace makeSDImage and makePSF etc in the long run But for now you can do the following ...
void setMovingSource(const casacore::String &movsource)
This will set the movingSource_p.
A class for manipulating groups of components.
casacore::String itsVpTable
casacore::CountedPtr< SIImageStore > imageStore(const casacore::Int id=0)
virtual void reloadCFCache()
The base class to represent the Aperture-Term of the Measurement Equation.
virtual bool makePrimaryBeam(PBMath &pbMath)
String: the storage and methods of handling collections of characters.
const SynthesisParamsImage & getSynthesisParamsImage()
VisibilityIterator iterates through one or more writable MeasurementSets.
virtual casacore::Bool defineImage(SynthesisParamsImage &impars, const SynthesisParamsGrid &gridpars)
virtual void dryGridding(const casacore::Vector< casacore::String > &cfList)
SIIterBot& getLoopControls();.
casacore::Bool readOnly_p
Types
Types of known MFrequencies Warning: The order defines the order in the translation matrix FromTo in...
ROVisibilityIterator iterates through one or more readonly MeasurementSets.
virtual bool isSpectralCube()
is any of the images defined spectral cube
casacore::Bool itsDataLoopPerMapper
casacore::Bool useScratch_p
*SIMapperCollection itsMappers
casacore::CountedPtr< SIImageStore > createIMStore(casacore::String imageName, casacore::CoordinateSystem &cSys, casacore::IPosition imShape, const casacore::Bool overwrite, casacore::ROMSColumns &msc, casacore::String mappertype="default", casacore::uInt ntaylorterms=1, casacore::Quantity distance=casacore::Quantity(0.0,"m"), casacore::uInt facets=1, casacore::Bool useweightimage=false, casacore::Vector< casacore::String > startmodel=casacore::Vector< casacore::String >(0))
Choose between different types of ImageStore types (single term, multiterm, faceted) ...
Interconvert pixel and world coordinates.
virtual void runMajorCycle2(const casacore::Bool dopsf=false, const casacore::Bool savemodel=false)
Version of major cycle code with mappers in a loop outside vi/vb.
casacore::Block< const casacore::MeasurementSet * > mss_p
Image Definition Imaging/Gridding.
virtual void fillCFCache(const casacore::Vector< casacore::String > &cfList, const casacore::String &ftmName, const casacore::String &cfcPath, const casacore::Bool &psTermOn, const casacore::Bool &aTermOn, const casacore::Bool &conjBeams)
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.
virtual casacore::Bool weight(const casacore::String &type="natural", const casacore::String &rmode="norm", const casacore::Quantity &noise=casacore::Quantity(0.0,"Jy"), const casacore::Double robust=0.0, const casacore::Quantity &fieldofview=casacore::Quantity(0.0,"arcsec"), const casacore::Int npixels=0, const casacore::Bool multiField=false, const casacore::Bool usecubebriggs=false, const casacore::String &filtertype=casacore::String("Gaussian"), const casacore::Quantity &filterbmaj=casacore::Quantity(0.0,"deg"), const casacore::Quantity &filterbmin=casacore::Quantity(0.0,"deg"), const casacore::Quantity &filterbpa=casacore::Quantity(0.0,"deg"))
casacore::Bool toUseWeightImage(casacore::CountedPtr< FTMachine > &ftm, casacore::String mappertype)