The base class to represent the Aperture-Term of the Measurement Equation. More...
#include <ATerm.h>
Public Member Functions | |
ATerm () | |
virtual | ~ATerm () |
virtual String | name ()=0 |
virtual void | makeFullJones (ImageInterface< Complex > &pbImage, const VisBuffer2 &vb, Bool doSquint, Int &bandID, Double freqVal)=0 |
virtual void | applySky (ImageInterface< Float > &outputImages, const VisBuffer2 &vb, const Bool doSquint=True, const Int &cfKey=0, const Int &muellerTerm=0, const Double freqVal=-1.0)=0 |
virtual void | applySky (ImageInterface< Complex > &outputImages, const VisBuffer2 &vb, const Bool doSquint=True, const Int &cfKey=0, const Int &muellerTerm=0, const Double freqVal=-1.0)=0 |
virtual void | applySky (ImageInterface< Complex > &outImages, const Double &pa, const Bool doSquint, const Int &cfKey, const Int &muellerTerm, const Double freqVal)=0 |
virtual Int | makePBPolnCoords (const VisBuffer2 &vb, const Int &convSize, const Int &convSampling, const CoordinateSystem &skyCoord, const Int &skyNx, const Int &skyNy, CoordinateSystem &feedCoord) |
Not sure if the following method is requried. | |
virtual Int | makePBPolnCoords (const Vector< Int > &vbCorrTypes, const Int &convSize, const Int &convSampling, const CoordinateSystem &skyCoord, const Int &skyNx, const Int &skyNy, CoordinateSystem &feedCoord) |
virtual Vector< Int > | vbRow2CFKeyMap (const VisBuffer2 &vb, Int &nUnique) |
Not sure if the following method is requried. | |
virtual void | getPolMap (Vector< Int > &polMap) |
virtual Vector< Int > | getAntTypeList () |
virtual void | setConvSize (const Int convSize) |
virtual Int | getConvSize () |
void | setOversampling (const Int os) |
{ Int defaultConvSize=CONVSIZE; defaultConvSize= SynthesisUtils::getenv("CONVSIZE",CONVSIZE); if (envStr != "") { sscanf(envStr.c_str,"%d",&defaultConvSize); cerr << "ConvFuncSize set to " << defaultConvSize << endl; } return defaultConvSize; }; | |
virtual Int | getOversampling () |
virtual Float | getConvWeightSizeFactor () |
{ Int defaultOverSampling=OVERSAMPLING; char *envStr; if ((envStr = getenv("OVERSAMPLING")) != NULL) { sscanf(envStr,"%d",&defaultOverSampling); cerr << "Oversampling set to " << defaultOverSampling << endl; } return defaultOverSampling; } | |
virtual Float | getSupportThreshold () |
virtual void | normalizeImage (Lattice< Complex > &skyImage, const Matrix< Float > &weights) |
virtual Vector<Int> vbRow2CFKeyMap(const VisBuffer2& vb, Int& nUnique) = 0; virtual Int getConvSize() = 0; virtual Int getOversampling() = 0; virtual Float getConvWeightSizeFactor() = 0; virtual Float getSupportThreshold() = 0; | |
virtual void | cacheVBInfo (const VisBuffer2 &vb)=0 |
virtual void | cacheVBInfo (const String &telescopeName, const Float &diameter)=0 |
virtual Int | getBandID (const Double &freq, const String &telescopeName)=0 |
virtual int | getVisParams (const VisBuffer2 &vb, const CoordinateSystem &skyCoord=CoordinateSystem())=0 |
virtual void | setPolMap (const Vector< Int > &polMap) |
The mapping from VisBuffer polarizations map to the Image plane polarization. | |
virtual void | rotate (const VisBuffer2 &vb, CFCell &cfc, const Double &rotAngleIncrement=5.0)=0 |
virtual void rotate(const VisBuffer2& vb, CFStore2& cfs)=0; | |
virtual void | rotate2 (const VisBuffer2 &vb, CFCell &baseCFS, CFCell &cfc, const Double &rotAngleIncrement=5.0)=0 |
virtual Int | mapAntIDToAntType (const Int &) |
String | getTelescopeName () |
virtual Bool | rotationallySymmetric () |
Protected Member Functions | |
LogIO & | logIO () |
Protected Attributes | |
LogIO | logIO_p |
Vector< Int > | polMap_p_base |
Int | cachedOverSampling_p |
Int | cachedConvSize_p |
Float | Diameter_p |
Float | Nant_p |
Float | HPBW |
Float | sigma |
String | telescopeName_p |
The base class to represent the Aperture-Term of the Measurement Equation.
Public interface
A-Term to account for the effects of the antenna primary beam(s).
Definition at line 65 of file ATerm.h.
casa::refim::ATerm::ATerm | ( | ) |
virtual void casa::refim::ATerm::applySky | ( | ImageInterface< Complex > & | outImages, | |
const Double & | pa, | |||
const Bool | doSquint, | |||
const Int & | cfKey, | |||
const Int & | muellerTerm, | |||
const Double | freqVal | |||
) | [pure virtual] |
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::applySky | ( | ImageInterface< Complex > & | outputImages, | |
const VisBuffer2 & | vb, | |||
const Bool | doSquint = True , |
|||
const Int & | cfKey = 0 , |
|||
const Int & | muellerTerm = 0 , |
|||
const Double | freqVal = -1.0 | |||
) | [pure virtual] |
Implements casa::refim::CFTerms.
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::applySky | ( | ImageInterface< Float > & | outputImages, | |
const VisBuffer2 & | vb, | |||
const Bool | doSquint = True , |
|||
const Int & | cfKey = 0 , |
|||
const Int & | muellerTerm = 0 , |
|||
const Double | freqVal = -1.0 | |||
) | [pure virtual] |
Implements casa::refim::CFTerms.
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::cacheVBInfo | ( | const String & | telescopeName, | |
const Float & | diameter | |||
) | [pure virtual] |
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::cacheVBInfo | ( | const VisBuffer2 & | vb | ) | [pure virtual] |
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual Vector<Int> casa::refim::ATerm::getAntTypeList | ( | ) | [inline, virtual] |
Reimplemented in casa::refim::NoOpATerm.
virtual Int casa::refim::ATerm::getBandID | ( | const Double & | freq, | |
const String & | telescopeName | |||
) | [pure virtual] |
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual Int casa::refim::ATerm::getConvSize | ( | ) | [inline, virtual] |
Implements casa::refim::CFTerms.
Definition at line 144 of file ATerm.h.
References cachedConvSize_p.
virtual Float casa::refim::ATerm::getConvWeightSizeFactor | ( | ) | [inline, virtual] |
{ Int defaultOverSampling=OVERSAMPLING; char *envStr; if ((envStr = getenv("OVERSAMPLING")) != NULL) { sscanf(envStr,"%d",&defaultOverSampling); cerr << "Oversampling set to " << defaultOverSampling << endl; } return defaultOverSampling; }
Implements casa::refim::CFTerms.
Definition at line 168 of file ATerm.h.
References CONVWTSIZEFACTOR.
virtual Int casa::refim::ATerm::getOversampling | ( | ) | [inline, virtual] |
Implements casa::refim::CFTerms.
Definition at line 157 of file ATerm.h.
References cachedOverSampling_p.
virtual void casa::refim::ATerm::getPolMap | ( | Vector< Int > & | polMap | ) | [inline, virtual] |
Reimplemented from casa::refim::CFTerms.
Reimplemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
Definition at line 140 of file ATerm.h.
References polMap_p_base.
virtual Float casa::refim::ATerm::getSupportThreshold | ( | ) | [inline, virtual] |
Implements casa::refim::CFTerms.
Reimplemented in casa::refim::NoOpATerm.
Definition at line 169 of file ATerm.h.
References THRESHOLD.
String casa::refim::ATerm::getTelescopeName | ( | ) | [inline] |
Definition at line 201 of file ATerm.h.
References telescopeName_p.
virtual int casa::refim::ATerm::getVisParams | ( | const VisBuffer2 & | vb, | |
const CoordinateSystem & | skyCoord = CoordinateSystem() | |||
) | [pure virtual] |
Implements casa::refim::CFTerms.
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
LogIO& casa::refim::ATerm::logIO | ( | ) | [inline, protected] |
Reimplemented from casa::refim::CFTerms.
Definition at line 205 of file ATerm.h.
References logIO_p.
virtual void casa::refim::ATerm::makeFullJones | ( | ImageInterface< Complex > & | pbImage, | |
const VisBuffer2 & | vb, | |||
Bool | doSquint, | |||
Int & | bandID, | |||
Double | freqVal | |||
) | [pure virtual] |
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual Int casa::refim::ATerm::makePBPolnCoords | ( | const Vector< Int > & | vbCorrTypes, | |
const Int & | convSize, | |||
const Int & | convSampling, | |||
const CoordinateSystem & | skyCoord, | |||
const Int & | skyNx, | |||
const Int & | skyNy, | |||
CoordinateSystem & | feedCoord | |||
) | [virtual] |
virtual Int casa::refim::ATerm::makePBPolnCoords | ( | const VisBuffer2 & | vb, | |
const Int & | convSize, | |||
const Int & | convSampling, | |||
const CoordinateSystem & | skyCoord, | |||
const Int & | skyNx, | |||
const Int & | skyNy, | |||
CoordinateSystem & | feedCoord | |||
) | [inline, virtual] |
Not sure if the following method is requried.
Leaving it in the code for now with an implementation that does nothing.
virtual void applySky(Matrix<Complex>& screen, const Int wPixel, const Vector<Double>& sampling, const Int wConvSize, const Double wScale, const Int inner) {(void)screen; (void)wPixel; (void)sampling; (void)wConvSize; (void)wScale; (void)inner;};
Returns a vector of integers that map each row in the given VisBuffer to an index that is used to pick the appropriate convolution function plane. It also returns the number of unique baselines in the nUnique parameter (unique baselines are defined as the number of baselines each requiring a unique convolution function).
This is required for Heterogeneous antenna arrays (like ALMA) and for all arrays where not all antenna aperture illuminations can be treated as identical.
return makePBPolnCoords(vb.corrType(), convSize, convSampling, skyCoord,
Implements casa::refim::CFTerms.
Reimplemented in casa::refim::EVLAAperture.
Definition at line 118 of file ATerm.h.
References casa::vi::VisBuffer2::correlationTypes().
virtual Int casa::refim::ATerm::mapAntIDToAntType | ( | const Int & | ) | [inline, virtual] |
virtual String casa::refim::ATerm::name | ( | ) | [pure virtual] |
Implements casa::refim::CFTerms.
Implemented in casa::refim::EVLAAperture, and casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::normalizeImage | ( | Lattice< Complex > & | skyImage, | |
const Matrix< Float > & | weights | |||
) | [inline, virtual] |
virtual Vector<Int> vbRow2CFKeyMap(const VisBuffer2& vb, Int& nUnique) = 0; virtual Int getConvSize() = 0; virtual Int getOversampling() = 0; virtual Float getConvWeightSizeFactor() = 0; virtual Float getSupportThreshold() = 0;
Implements casa::refim::CFTerms.
Reimplemented in casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::rotate | ( | const VisBuffer2 & | vb, | |
CFCell & | cfc, | |||
const Double & | rotAngleIncrement = 5.0 | |||
) | [pure virtual] |
virtual void rotate(const VisBuffer2& vb, CFStore2& cfs)=0;
Implemented in casa::refim::AzElAperture, and casa::refim::NoOpATerm.
virtual void casa::refim::ATerm::rotate2 | ( | const VisBuffer2 & | vb, | |
CFCell & | baseCFS, | |||
CFCell & | cfc, | |||
const Double & | rotAngleIncrement = 5.0 | |||
) | [pure virtual] |
Implemented in casa::refim::AzElAperture, and casa::refim::NoOpATerm.
virtual Bool casa::refim::ATerm::rotationallySymmetric | ( | ) | [inline, virtual] |
Implements casa::refim::CFTerms.
Reimplemented in casa::refim::NoOpATerm.
Definition at line 202 of file ATerm.h.
References casacore::True.
virtual void casa::refim::ATerm::setConvSize | ( | const Int | convSize | ) | [inline, virtual] |
Implements casa::refim::CFTerms.
Definition at line 143 of file ATerm.h.
References cachedConvSize_p.
void casa::refim::ATerm::setOversampling | ( | const Int | os | ) | [inline, virtual] |
{ Int defaultConvSize=CONVSIZE; defaultConvSize= SynthesisUtils::getenv("CONVSIZE",CONVSIZE); if (envStr != "") { sscanf(envStr.c_str,"%d",&defaultConvSize); cerr << "ConvFuncSize set to " << defaultConvSize << endl; } return defaultConvSize; };
Implements casa::refim::CFTerms.
Definition at line 156 of file ATerm.h.
References cachedOverSampling_p.
virtual void casa::refim::ATerm::setPolMap | ( | const Vector< Int > & | polMap | ) | [inline, virtual] |
The mapping from VisBuffer polarizations map to the Image plane polarization.
The latter is determined by the user input, which is passed to the FTMachine in Imager.cc
The map is available in the FTMachine which uses this method to set the map for the ATerm object.
Reimplemented from casa::refim::CFTerms.
Reimplemented in casa::refim::NoOpATerm.
Definition at line 196 of file ATerm.h.
References polMap_p_base.
virtual Vector<Int> casa::refim::ATerm::vbRow2CFKeyMap | ( | const VisBuffer2 & | vb, | |
Int & | nUnique | |||
) | [inline, virtual] |
Not sure if the following method is requried.
Leaving it in the code for now with an implementation that does nothing.
virtual void applySky(Matrix<Complex>& screen, const Int wPixel, const Vector<Double>& sampling, const Int wConvSize, const Double wScale, const Int inner) {(void)screen; (void)wPixel; (void)sampling; (void)wConvSize; (void)wScale; (void)inner;};
Returns a vector of integers that map each row in the given VisBuffer to an index that is used to pick the appropriate convolution function plane. It also returns the number of unique baselines in the nUnique parameter (unique baselines are defined as the number of baselines each requiring a unique convolution function).
This is required for Heterogeneous antenna arrays (like ALMA) and for all arrays where not all antenna aperture illuminations can be treated as identical.
Implements casa::refim::CFTerms.
Reimplemented in casa::refim::EVLAAperture.
Definition at line 137 of file ATerm.h.
References casa::vi::VisBuffer2::nRows().
Int casa::refim::ATerm::cachedConvSize_p [protected] |
Definition at line 208 of file ATerm.h.
Referenced by getConvSize(), and setConvSize().
Int casa::refim::ATerm::cachedOverSampling_p [protected] |
Definition at line 208 of file ATerm.h.
Referenced by getOversampling(), and setOversampling().
Float casa::refim::ATerm::Diameter_p [protected] |
Float casa::refim::ATerm::HPBW [protected] |
LogIO casa::refim::ATerm::logIO_p [protected] |
Reimplemented from casa::refim::CFTerms.
Definition at line 206 of file ATerm.h.
Referenced by logIO().
Float casa::refim::ATerm::Nant_p [protected] |
Vector<Int> casa::refim::ATerm::polMap_p_base [protected] |
Reimplemented from casa::refim::CFTerms.
Definition at line 207 of file ATerm.h.
Referenced by getPolMap(), and setPolMap().
Float casa::refim::ATerm::sigma [protected] |
String casa::refim::ATerm::telescopeName_p [protected] |
Definition at line 211 of file ATerm.h.
Referenced by getTelescopeName().