casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
casa::refim::SynthesisImager Class Reference

#include <SynthesisImager.h>

Public Member Functions

 SynthesisImager ()
 Default constructor. More...
 
virtual ~SynthesisImager ()
 
virtual casacore::Bool selectData (const SynthesisParamsSelect &selpars)
 
Copy constructor and assignment operator

Imager(const Imager&); Imager& operator=(const Imager&); More...

 
virtual casacore::Bool selectData (const casacore::String &msname, const casacore::String &spw="*", const casacore::String &freqBeg="", const casacore::String &freqEnd="", const casacore::MFrequency::Types freqFrame=casacore::MFrequency::LSRK, const casacore::String &field="*", const casacore::String &antenna="", const casacore::String &timestr="", const casacore::String &scan="", const casacore::String &obs="", const casacore::String &state="", const casacore::String &uvdist="", const casacore::String &taql="", const casacore::Bool usescratch=false, const casacore::Bool readonly=false, const casacore::Bool incrementModel=false)
 make all pure-inputs const More...
 
virtual casacore::Bool defineImage (SynthesisParamsImage &impars, const SynthesisParamsGrid &gridpars)
 
virtual casacore::Bool defineImage (const casacore::String &imagename, const casacore::Int nx, const casacore::Int ny, const casacore::Quantity &cellx, const casacore::Quantity &celly, const casacore::String &stokes, const casacore::MDirection &phaseCenter, const casacore::Int nchan, const casacore::Quantity &freqStart, const casacore::Quantity &freqStep, const casacore::Vector< casacore::Quantity > &restFreq, const casacore::Int facets=1, const casacore::String ftmachine="GridFT", const casacore::Int nTaylorTerms=1, const casacore::Quantity &refFreq=casacore::Quantity(0,"Hz"), const casacore::Projection &projection=casacore::Projection::SIN, const casacore::Quantity &distance=casacore::Quantity(0,"m"), const casacore::MFrequency::Types &freqFrame=casacore::MFrequency::LSRK, const casacore::Bool trackSource=false, const casacore::MDirection &trackDir=casacore::MDirection(casacore::Quantity(0.0,"deg"), casacore::Quantity(90.0,"deg")), const casacore::Bool overwrite=false, const casacore::Float padding=1.0, const casacore::Bool useAutocorr=false, const bool useDoublePrec=true, const casacore::Int wprojplanes=1, const casacore::String convFunc="SF", const casacore::String startmodel="", 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 doPointing=false, const casacore::Bool doPBCorr=true, const casacore::Bool conjBeams=true, const casacore::Float computePAStep=360.0, const casacore::Float rotatePAStep=5.0)
 When having a facetted image...call with (facets > 1) first and once only. More...
 
virtual casacore::Bool defineImage (casacore::CountedPtr< SIImageStore > imstor, const casacore::String &ftmachine)
 Define image via a predefine SIImageStore object. More...
 
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..they can be merged in one if sdgrid=true then image plane degridding is done. More...
 
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::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"))
 
void resetMappers ()
 the following get rid of the mappers in this object More...
 
casacore::CountedPtr
< SIImageStore
imageStore (const casacore::Int id=0)
 
void executeMajorCycle (casacore::Record &controls)
 casacore::Record getMajorCycleControls(); More...
 
void makePSF ()
 make the psf images i.e grid weight rather than data More...
 
void predictModel ()
 

Protected Member Functions

Choose between different types
of FTMs *void 
createFTMachine (casacore::CountedPtr< refim::FTMachine > &theFT, casacore::CountedPtr< refim::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 doPointing=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)
 SIIterBot& getLoopControls();. More...
 
casacore::CountedPtr
< SIImageStore
createIMStore (casacore::String imageName, casacore::CoordinateSystem &cSys, casacore::IPosition imShape, const casacore::Bool overwrite, casacore::String mappertype="default", casacore::uInt ntaylorterms=1, casacore::Quantity distance=casacore::Quantity(0.0,"m"), casacore::uInt facets=1, casacore::Bool useweightimage=false)
 Choose between different types of ImageStore types (single term, multiterm, faceted) More...
 
casacore::CountedPtr< SIMappercreateSIMapper (casacore::String mappertype, casacore::CountedPtr< SIImageStore > imagestore, casacore::CountedPtr< refim::FTMachine > ftmachine, casacore::CountedPtr< refim::FTMachine > iftmachine, casacore::uInt ntaylorterms=1)
 Choose between different types of Mappers (single term, multiterm, imagemosaic, faceted) More...
 
casacore::Block
< casacore::CountedPtr
< SIImageStore > > 
createFacetImageStoreList (casacore::CountedPtr< SIImageStore > imagestore, casacore::Int facets)
 
void setPsfFromOneFacet ()
 
casacore::Bool toUseWeightImage (casacore::CountedPtr< refim::FTMachine > &ftm, casacore::String mappertype)
 
void createVisSet (const casacore::Bool writeaccess=false)
 
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 doPointing, const casacore::Bool doPBCorr, const casacore::Bool conjBeams, const casacore::Float computePAStep, const casacore::Float rotatePAStep, const casacore::Int cache, const casacore::Int tile)
 
refim::ATermcreateTelescopeATerm (const casacore::MeasurementSet &ms, const casacore::Bool &isATermOn)
 
void runMajorCycle (const casacore::Bool dopsf=false, const casacore::Bool savemodel=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. More...
 
*void appendToMapperList (casacore::String imagename, casacore::CoordinateSystem &csys, casacore::IPosition imshape, casacore::CountedPtr< refim::FTMachine > &ftm, casacore::CountedPtr< refim::FTMachine > &iftm, casacore::Quantity distance=casacore::Quantity(0.0,"m"), casacore::Int facets=1, const casacore::Bool overwrite=false, casacore::String mappertype=casacore::String("default"), casacore::uInt ntaylorterms=1)
 

Protected Attributes

*SIMapperCollection itsMappers
 
casacore::CountedPtr
< SIImageStore
unFacettedImStore_p
 if facetting this storage will keep the unsliced version More...
 
casacore::CoordinateSystem itsMaxCoordSys
 
casacore::IPosition itsMaxShape
 
casacore::Data Selection Image
Definition Imaging Gridding
Other Options *casacore::Block
< const
casacore::MeasurementSet * > 
mss_p
 
vi::FrequencySelections fselections_p
 
casacore::CountedPtr
< vi::VisibilityIterator2
vi_p
 
casacore::Bool writeAccess_p
 
casacore::MPosition mLocation_p
 
casacore::MDirection phaseCenter_p
 
casacore::Int facetsStore_p
 
VisImagingWeight imwgt_p
 
casacore::Bool imageDefined_p
 
casacore::Bool useScratch_p
 
casacore::Bool readOnly_p
 
refim::FTMachine::Type datacol_p
 casacore::Bool freqFrameValid_p; More...
 

Detailed Description

Definition at line 60 of file SynthesisImager.h.

Constructor & Destructor Documentation

casa::refim::SynthesisImager::SynthesisImager ( )

Default constructor.

virtual casa::refim::SynthesisImager::~SynthesisImager ( )
virtual

Member Function Documentation

void casa::refim::SynthesisImager::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 
)
protected

It associated the ftmachine with a given field.

* void casa::refim::SynthesisImager::appendToMapperList ( casacore::String  imagename,
casacore::CoordinateSystem csys,
casacore::IPosition  imshape,
casacore::CountedPtr< refim::FTMachine > &  ftm,
casacore::CountedPtr< refim::FTMachine > &  iftm,
casacore::Quantity  distance = casacore::Quantity(0.0,"m"),
casacore::Int  facets = 1,
const casacore::Bool  overwrite = false,
casacore::String  mappertype = casacore::String("default"),
casacore::uInt  ntaylorterms = 1 
)
protected
void casa::refim::SynthesisImager::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  doPointing,
const casacore::Bool  doPBCorr,
const casacore::Bool  conjBeams,
const casacore::Float  computePAStep,
const casacore::Float  rotatePAStep,
const casacore::Int  cache,
const casacore::Int  tile 
)
protected
Parameters
wprojPlane
aTermOn
casacore::Block<casacore::CountedPtr<SIImageStore> > casa::refim::SynthesisImager::createFacetImageStoreList ( casacore::CountedPtr< SIImageStore imagestore,
casacore::Int  facets 
)
protected
Choose between different types of FTMs* void casa::refim::SynthesisImager::createFTMachine ( casacore::CountedPtr< refim::FTMachine > &  theFT,
casacore::CountedPtr< refim::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  doPointing = 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 
)
protected

SIIterBot& getLoopControls();.

Parameters
wprojplane
aTermOn
casacore::CountedPtr<SIImageStore> casa::refim::SynthesisImager::createIMStore ( casacore::String  imageName,
casacore::CoordinateSystem cSys,
casacore::IPosition  imShape,
const casacore::Bool  overwrite,
casacore::String  mappertype = "default",
casacore::uInt  ntaylorterms = 1,
casacore::Quantity  distance = casacore::Quantity(0.0,"m"),
casacore::uInt  facets = 1,
casacore::Bool  useweightimage = false 
)
protected

Choose between different types of ImageStore types (single term, multiterm, faceted)

casacore::CountedPtr<SIMapper> casa::refim::SynthesisImager::createSIMapper ( casacore::String  mappertype,
casacore::CountedPtr< SIImageStore imagestore,
casacore::CountedPtr< refim::FTMachine ftmachine,
casacore::CountedPtr< refim::FTMachine iftmachine,
casacore::uInt  ntaylorterms = 1 
)
protected

Choose between different types of Mappers (single term, multiterm, imagemosaic, faceted)

Parameters
ftmachine/ make this inside !!!!!
refim::ATerm* casa::refim::SynthesisImager::createTelescopeATerm ( const casacore::MeasurementSet ms,
const casacore::Bool isATermOn 
)
protected
void casa::refim::SynthesisImager::createVisSet ( const casacore::Bool  writeaccess = false)
protected
virtual casacore::Bool casa::refim::SynthesisImager::defineImage ( SynthesisParamsImage impars,
const SynthesisParamsGrid gridpars 
)
virtual
virtual casacore::Bool casa::refim::SynthesisImager::defineImage ( const casacore::String imagename,
const casacore::Int  nx,
const casacore::Int  ny,
const casacore::Quantity cellx,
const casacore::Quantity celly,
const casacore::String stokes,
const casacore::MDirection phaseCenter,
const casacore::Int  nchan,
const casacore::Quantity freqStart,
const casacore::Quantity freqStep,
const casacore::Vector< casacore::Quantity > &  restFreq,
const casacore::Int  facets = 1,
const casacore::String  ftmachine = "GridFT",
const casacore::Int  nTaylorTerms = 1,
const casacore::Quantity refFreq = casacore::Quantity(0,"Hz"),
const casacore::Projection projection = casacore::Projection::SIN,
const casacore::Quantity distance = casacore::Quantity(0,"m"),
const casacore::MFrequency::Types freqFrame = casacore::MFrequency::LSRK,
const casacore::Bool  trackSource = false,
const casacore::MDirection trackDir = casacore::MDirection(casacore::Quantity(0.0,"deg"), casacore::Quantity(90.0,"deg")),
const casacore::Bool  overwrite = false,
const casacore::Float  padding = 1.0,
const casacore::Bool  useAutocorr = false,
const bool  useDoublePrec = true,
const casacore::Int  wprojplanes = 1,
const casacore::String  convFunc = "SF",
const casacore::String  startmodel = "",
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  doPointing = false,
const casacore::Bool  doPBCorr = true,
const casacore::Bool  conjBeams = true,
const casacore::Float  computePAStep = 360.0,
const casacore::Float  rotatePAStep = 5.0 
)
virtual

When having a facetted image...call with (facets > 1) first and once only.

Easier to keep track of the imstores that way CAREFUL: make sure you donot overwrite if you want to predict the model or subtract it to make residual

Parameters
aTermOnThe extra params for WB-AWP
virtual casacore::Bool casa::refim::SynthesisImager::defineImage ( casacore::CountedPtr< SIImageStore imstor,
const casacore::String ftmachine 
)
virtual

Define image via a predefine SIImageStore object.

void casa::refim::SynthesisImager::executeMajorCycle ( casacore::Record controls)

casacore::Record getMajorCycleControls();

casacore::CountedPtr<SIImageStore> casa::refim::SynthesisImager::imageStore ( const casacore::Int  id = 0)
void casa::refim::SynthesisImager::makePSF ( )

make the psf images i.e grid weight rather than data

void casa::refim::SynthesisImager::predictModel ( )
void casa::refim::SynthesisImager::resetMappers ( )

the following get rid of the mappers in this object

void casa::refim::SynthesisImager::runMajorCycle ( const casacore::Bool  dopsf = false,
const casacore::Bool  savemodel = false 
)
protected
virtual casacore::Bool casa::refim::SynthesisImager::selectData ( const SynthesisParamsSelect selpars)
virtual

Copy constructor and assignment operator

Imager(const Imager&); Imager& operator=(const Imager&);

virtual casacore::Bool casa::refim::SynthesisImager::selectData ( const casacore::String msname,
const casacore::String spw = "*",
const casacore::String freqBeg = "",
const casacore::String freqEnd = "",
const casacore::MFrequency::Types  freqFrame = casacore::MFrequency::LSRK,
const casacore::String field = "*",
const casacore::String antenna = "",
const casacore::String timestr = "",
const casacore::String scan = "",
const casacore::String obs = "",
const casacore::String state = "",
const casacore::String uvdist = "",
const casacore::String taql = "",
const casacore::Bool  usescratch = false,
const casacore::Bool  readonly = false,
const casacore::Bool  incrementModel = false 
)
virtual

make all pure-inputs const

virtual void casa::refim::SynthesisImager::setComponentList ( const ComponentList cl,
casacore::Bool  sdgrid = false 
)
virtual

Defining componentlist to use while degriding This should be called once...if multiple lists are used..they can be merged in one if sdgrid=true then image plane degridding is done.

void casa::refim::SynthesisImager::setPsfFromOneFacet ( )
protected
casacore::Bool casa::refim::SynthesisImager::toUseWeightImage ( casacore::CountedPtr< refim::FTMachine > &  ftm,
casacore::String  mappertype 
)
protected
casacore::Bool casa::refim::SynthesisImager::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::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") 
)

Member Data Documentation

refim::FTMachine::Type casa::refim::SynthesisImager::datacol_p
protected

casacore::Bool freqFrameValid_p;

Definition at line 306 of file SynthesisImager.h.

casacore::Int casa::refim::SynthesisImager::facetsStore_p
protected

Definition at line 299 of file SynthesisImager.h.

vi::FrequencySelections casa::refim::SynthesisImager::fselections_p
protected

Definition at line 292 of file SynthesisImager.h.

casacore::Bool casa::refim::SynthesisImager::imageDefined_p
protected

Definition at line 301 of file SynthesisImager.h.

VisImagingWeight casa::refim::SynthesisImager::imwgt_p
protected

Definition at line 300 of file SynthesisImager.h.

* SIMapperCollection casa::refim::SynthesisImager::itsMappers
protected

Definition at line 275 of file SynthesisImager.h.

casacore::CoordinateSystem casa::refim::SynthesisImager::itsMaxCoordSys
protected

Definition at line 280 of file SynthesisImager.h.

casacore::IPosition casa::refim::SynthesisImager::itsMaxShape
protected

Definition at line 281 of file SynthesisImager.h.

casacore::MPosition casa::refim::SynthesisImager::mLocation_p
protected

Definition at line 297 of file SynthesisImager.h.

casacore::Data Selection Image Definition Imaging Gridding Other Options* casacore::Block<const casacore::MeasurementSet *> casa::refim::SynthesisImager::mss_p
protected

Definition at line 291 of file SynthesisImager.h.

casacore::MDirection casa::refim::SynthesisImager::phaseCenter_p
protected

Definition at line 298 of file SynthesisImager.h.

casacore::Bool casa::refim::SynthesisImager::readOnly_p
protected

Definition at line 302 of file SynthesisImager.h.

casacore::CountedPtr<SIImageStore> casa::refim::SynthesisImager::unFacettedImStore_p
protected

if facetting this storage will keep the unsliced version

Definition at line 277 of file SynthesisImager.h.

casacore::Bool casa::refim::SynthesisImager::useScratch_p
protected

Definition at line 302 of file SynthesisImager.h.

casacore::CountedPtr<vi::VisibilityIterator2> casa::refim::SynthesisImager::vi_p
protected

Definition at line 293 of file SynthesisImager.h.

casacore::Bool casa::refim::SynthesisImager::writeAccess_p
protected

Definition at line 296 of file SynthesisImager.h.


The documentation for this class was generated from the following file: