27 #ifndef SYNTHESIS_SIIMAGESTOREMULTITERM_H
28 #define SYNTHESIS_SIIMAGESTOREMULTITERM_H
109 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
psf(
casacore::uInt term=0);
111 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
weight(
casacore::uInt term=0);
112 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
model(
casacore::uInt term=0);
113 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
image(
casacore::uInt term=0);
114 virtual std::shared_ptr<casacore::ImageInterface<float> >
pb(
casacore::uInt term=0);
116 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
sumwt(
casacore::uInt term=0);
121 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
alpha();
122 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
beta();
123 virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> >
alphaerror();
124 virtual std::shared_ptr<casacore::ImageInterface<float> >
alphapbcor();
125 virtual std::shared_ptr<casacore::ImageInterface<float> >
betapbcor();
135 void addImages( std::shared_ptr<SIImageStore> imagestoadd,
A Vector of integers, for indexing into Array<T> objects.
virtual casacore::Double getReferenceFrequency()
std::shared_ptr< casacore::ImageInterface< casacore::Float > > itsBetaPBcor
virtual std::shared_ptr< casacore::ImageInterface< float > > betapbcor()
virtual casacore::Bool hasSensitivity()
virtual std::shared_ptr< casacore::ImageInterface< casacore::Complex > > backwardGrid(casacore::uInt term=0)
virtual bool hasRestored()
virtual Bool hasSumWt() {return doesImageExist(itsImageName+imageExts(SUMWT)+String(".tt0"));}
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentPBs
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > sumwt(casacore::uInt term=0)
virtual ~SIImageStoreMultiTerm()
casacore::Bool doesImageExist(casacore::String imagename)
virtual casacore::Bool hasSumWt()
std::shared_ptr< casacore::ImageInterface< casacore::Float > > itsAlphaError
void multiplyModelByWeight(const casacore::Float pblimit=casacore::C::minfloat, const casacore::String normtype="flatnoise")
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentModels
virtual casacore::Bool hasPsf()
std::shared_ptr< casacore::ImageInterface< casacore::Float > > itsAlphaPBcor
void setModelImage(casacore::Vector< casacore::String > modelnames)
virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> > gridwt(casacore::uInt term=0); ...
casacore::Vector< casacore::String > getModelImageName()
virtual casacore::Bool hasModel()
virtual casacore::Bool hasModel() {return itsModels.nelements()>0 && itsModels[0];} ...
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > image(casacore::uInt term=0)
Represents a Gaussian restoring beam associated with an image.
void normalizePrimaryBeam(const float pblimit=casacore::C::minfloat)
virtual casacore::Bool hasResidual()
virtual casacore::Bool hasPsfImage() {return doesImageExist(itsImageName+imageExts(PSF));} ...
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Complex > > > itsForwardGrids
void calcSensitivity()
{return (itsParentSumWts.nelements()==0 || itsParentSumWts[0].null()) ? false : getUseWeightImage(*(i...
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > model(casacore::uInt term=0)
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentSumWts
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > psf(casacore::uInt term=0)
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > residual(casacore::uInt term=0)
SIImageStoreMultiTerm()
Default constructor.
virtual casacore::Bool isModelEmpty()
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentPsfs
void addImages(std::shared_ptr< SIImageStore > imagestoadd, casacore::Bool addpsf, casacore::Bool addresidual, casacore::Bool addweight, casacore::Bool adddensity)
void divideResidualByWeight(const casacore::Float pblimit=casacore::C::minfloat, const casacore::String normtype="flatnoise")
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > alpha()
std::shared_ptr< casacore::ImageInterface< casacore::Float > > itsAlpha
void restore(casacore::GaussianBeam &rbeam, casacore::String &usebeam, casacore::uInt term=0)
virtual casacore::GaussianBeam restorePlane();
casacore::uInt getNTaylorTerms(casacore::Bool dopsf=false)
virtual casacore::String getType()
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > weight(casacore::uInt term=0)
virtual void printImageStats()
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsImages
casacore::Vector< casacore::String > imageExts
Non-persistent internal variables
std::shared_ptr< SIImageStore > getSubImageStore(const casacore::Int facet=0, const casacore::Int nfacets=1, const casacore::Int chan=0, const casacore::Int nchanchunks=1, const casacore::Int pol=0, const casacore::Int npolchunks=1)
The images internall will reference back to a given section of the main of this.
virtual std::shared_ptr< casacore::ImageInterface< float > > pb(casacore::uInt term=0)
void dividePSFByWeight(const casacore::Float pblimit=casacore::C::minfloat)
void divideModelByWeight(const casacore::Float pblimit=casacore::C::minfloat, const casacore::String normtype="flatnoise")
void divideSensitivityPatternByWeight();
virtual std::shared_ptr< casacore::ImageInterface< float > > imagepbcor(casacore::uInt term=0)
void resetImages(casacore::Bool resetpsf, casacore::Bool resetresidual, casacore::Bool resetweight)
virtual std::shared_ptr< casacore::ImageInterface< casacore::Complex > > forwardGrid(casacore::uInt term=0)
virtual std::shared_ptr<casacore::ImageInterface<casacore::Float> > mask(casacore::uInt term=0); // t...
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsPsfs
casacore::Double calcFractionalBandwidth()
virtual bool hasResidualImage()
virtual Bool hasSensitivity() {return doesImageExist(itsImageName+imageExts(WEIGHT)+String(".tt0"));} virtual Bool hasModel() {return doesImageExist(itsImageName+imageExts(MODEL)+String(".tt0"));} virtual Bool hasMask() {return doesImageExist(itsImageName+imageExts(MASK)+String(".tt0"));} virtual Bool hasPsf() {return doesImageExist(itsImageName+imageExts(PSF)+String(".tt0"));}
casacore::Bool releaseComplexGrids()
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentImages
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentResiduals
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Complex > > > itsBackwardGrids
void calculateAlphaBeta(casacore::String imtype)
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentImagePBcors
const Double minfloat
the minimum single precision floating point number, including denormalised numbers ...
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > alphaerror()
String: the storage and methods of handling collections of characters.
casacore::Bool releaseLocks()
Other.
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsPBs
virtual std::shared_ptr< casacore::ImageInterface< casacore::Float > > beta()
std::shared_ptr< casacore::ImageInterface< casacore::Float > > itsBeta
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsWeights
virtual bool hasPB()
virtual casacore::Bool hasSensitivity(){return doesImageExist(itsImageName+imageExts(WEIGHT));} ...
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsParentWeights
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsResiduals
virtual std::shared_ptr< casacore::ImageInterface< float > > alphapbcor()
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsSumWts
casacore::String itsImageName
Interconvert pixel and world coordinates.
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsImagePBcors
casacore::Block< std::shared_ptr< casacore::ImageInterface< casacore::Float > > > itsModels