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

class ALMAAperture : public ATerm More...

#include <ALMAAperture.h>

Inheritance diagram for casa::ALMAAperture:
casa::AzElAperture casa::ATerm casa::CFTerms

Public Member Functions

 ALMAAperture ()
 
 ~ALMAAperture ()
 
ALMAApertureoperator= (const ALMAAperture &other)
 
virtual void makeFullJones (casacore::ImageInterface< casacore::Complex > &pbImage, const VisBuffer &vb, casacore::Bool doSquint, casacore::Int &bandID, casacore::Double freqVal)
 Overload these functions. More...
 
virtual casacore::String name ()
 
virtual void applySky (casacore::ImageInterface< casacore::Float > &outputImage, const VisBuffer &vb, const casacore::Bool doSquint=true, const casacore::Int &cfKey=0, const casacore::Double freqVal=-1.0)
 
virtual void applySky (casacore::ImageInterface< casacore::Complex > &outputImage, const VisBuffer &vb, const casacore::Bool doSquint=true, const casacore::Int &cfKey=0, const casacore::Double freqVal=-1.0)
 
void applySky (casacore::ImageInterface< casacore::Float > &outputImage, const VisBuffer &vb, const casacore::Bool doSquint, const casacore::Int &cfKey, const casacore::Bool raytrace)
 
void applySky (casacore::ImageInterface< casacore::Complex > &outputImage, const VisBuffer &vb, const casacore::Bool doSquint, const casacore::Int &cfKey, const casacore::Bool raytrace)
 
virtual casacore::Vector
< casacore::Int
vbRow2CFKeyMap (const VisBuffer &vb, casacore::Int &nUnique)
 Not sure if the following method is requried. More...
 
void cacheVBInfo (const casacore::String &telescopeName, const casacore::Float &diameter)
 
void cacheVBInfo (const VisBuffer &vb)
 
casacore::Int getBandID (const casacore::Double &freq, const casacore::String &telescopeName)
 
virtual void setPolMap (const casacore::Vector< casacore::Int > &polMap)
 The mapping from VisBuffer polarizations map to the Image plane polarization. More...
 
virtual void getPolMap (casacore::Vector< casacore::Int > &polMap)
 
casacore::Vector< ALMAAntennaTypeantTypeMap (const VisBuffer &vb)
 virtual casacore::Int getConvSize() {return CONVSIZE;}; virtual casacore::Int getOversampling() {return OVERSAMPLING;} virtual casacore::Float getConvWeightSizeFactor() {return CONVWTSIZEFACTOR;}; virtual casacore::Float getSupportThreshold() {return THRESHOLD;}; More...
 
void resetAntTypeMap ()
 call this before reusing the same ALMAAperture object on a different MS More...
 
casacore::Vector< ALMAAntennaTypeantTypeList (const VisBuffer &vb)
 generate the lists of antenna types for the whole vb More...
 
casacore::Int getVisParams (const VisBuffer &vb, const casacore::CoordinateSystem &skyCoord=casacore::CoordinateSystem())
 
casacore::Int makePBPolnCoords (const VisBuffer &vb, const casacore::Int &convSize, const casacore::Int &convSampling, const casacore::CoordinateSystem &skyCoord, const casacore::Int &skyNx, const casacore::Int &skyNy, casacore::CoordinateSystem &feedCoord)
 Not sure if the following method is requried. More...
 
void destroyAntResp ()
 
- Public Member Functions inherited from casa::AzElAperture
 AzElAperture ()
 
 ~AzElAperture ()
 
virtual void rotate (const VisBuffer &vb, CFCell &cfc, const casacore::Double &rotAngleIncrement=5.0)
 virtual void rotate(const VisBuffer& vb, CFStore2& cfs)=0; More...
 
virtual void rotate2 (const VisBuffer &vb, CFCell &baseCFC, CFCell &cfc, const casacore::Double &rotAngleIncrement=5.0)
 
- Public Member Functions inherited from casa::ATerm
 ATerm ()
 
virtual ~ATerm ()
 
virtual void applySky (casacore::ImageInterface< casacore::Float > &outputImages, const VisBuffer &vb, const casacore::Bool doSquint=true, const casacore::Int &cfKey=0, const casacore::Int &muellerTerm=0, const casacore::Double freqVal=-1.0)=0
 
virtual void applySky (casacore::ImageInterface< casacore::Complex > &outputImages, const VisBuffer &vb, const casacore::Bool doSquint=true, const casacore::Int &cfKey=0, const casacore::Int &muellerTerm=0, const casacore::Double freqVal=-1.0)=0
 
virtual void applySky (casacore::ImageInterface< casacore::Complex > &outImages, const casacore::Double &pa, const casacore::Bool doSquint, const casacore::Int &cfKey, const casacore::Int &muellerTerm, const casacore::Double freqVal)=0
 
virtual casacore::Int makePBPolnCoords (const casacore::Vector< casacore::Int > &vbCorrTypes, const casacore::Int &convSize, const casacore::Int &convSampling, const casacore::CoordinateSystem &skyCoord, const casacore::Int &skyNx, const casacore::Int &skyNy, casacore::CoordinateSystem &feedCoord)
 
virtual casacore::Vector
< casacore::Int
getAntTypeList ()
 
virtual casacore::Int getConvSize ()
 
virtual casacore::Int getOversampling ()
 
{

casacore::Int defaultConvSize=CONVSIZE; defaultConvSize= SynthesisUtils::getenv("CONVSIZE",CONVSIZE); if (envStr != "") { sscanf(envStr.c_str,"%d",&defaultConvSize); cerr << "ConvFuncSize set to " << defaultConvSize << endl; } return defaultConvSize; }; More...

 
virtual casacore::Float getConvWeightSizeFactor ()
 { casacore::Int defaultOverSampling=OVERSAMPLING; char *envStr; if ((envStr = getenv("OVERSAMPLING")) != NULL) { sscanf(envStr,"%d",&defaultOverSampling); cerr << "Oversampling set to " << defaultOverSampling << endl; } return defaultOverSampling; } More...
 
virtual casacore::Float getSupportThreshold ()
 
virtual void normalizeImage (casacore::Lattice< casacore::Complex > &skyImage, const casacore::Matrix< casacore::Float > &weights)
 virtual casacore::Vector<casacore::Int> vbRow2CFKeyMap(const VisBuffer& vb, casacore::Int& nUnique) = 0; virtual casacore::Int getConvSize() = 0; virtual casacore::Int getOversampling() = 0; virtual casacore::Float getConvWeightSizeFactor() = 0; virtual casacore::Float getSupportThreshold() = 0; More...
 
virtual casacore::Int getBandID (const casacore::Double &freq, const casacore::String &telescopeName, const casacore::String &bandName)=0
 
virtual casacore::Int mapAntIDToAntType (const casacore::Int &)
 
casacore::String getTelescopeName ()
 
virtual casacore::Bool rotationallySymmetric ()
 
- Public Member Functions inherited from casa::CFTerms
 CFTerms ()
 
virtual ~CFTerms ()
 
virtual void setOpCode (OpCodes code)
 
virtual casacore::Bool isNoOp ()
 

Static Public Member Functions

static ALMAAntennaType antTypeFromName (const casacore::String &name)
 derive type number from first two characters in antenna name, return -1 if not recognised More...
 
static casacore::String antTypeStrFromType (const ALMAAntennaType &aType)
 
static casacore::Int cFKeyFromAntennaTypes (const ALMAAntennaType aT1, const ALMAAntennaType aT2)
 
static casacore::Vector
< ALMAAntennaType
antennaTypesFromCFKey (const casacore::Int &cFKey)
 

Private Attributes

casacore::Vector< casacore::IntpolMap_p
 
casacore::Bool haveCannedResponses_p
 
casacore::Vector< ALMAAntennaTypeantTypeMap_p
 
casacore::Vector
< casacore::PagedImage
< casacore::Complex > * > 
respImage_p
 

Static Private Attributes

static AntennaResponsesaR_p
 
static casacore::Bool orderMattersInCFKey
 

Additional Inherited Members

- Public Types inherited from casa::CFTerms
enum  OpCodes {
  NOOP,
  NORMAL
}
 
- Protected Member Functions inherited from casa::ATerm
casacore::LogIOlogIO ()
 
- Protected Member Functions inherited from casa::CFTerms
casacore::LogIOlogIO ()
 
- Protected Attributes inherited from casa::ATerm
casacore::LogIO logIO_p
 
casacore::Vector< casacore::IntpolMap_p_base
 
casacore::Int cachedOverSampling_p
 
casacore::Int cachedConvSize_p
 
casacore::Float Diameter_p
 
casacore::Float Nant_p
 
casacore::Float HPBW
 
casacore::Float sigma
 
casacore::String telescopeName_p
 
- Protected Attributes inherited from casa::CFTerms
casacore::LogIO logIO_p
 
casacore::Vector< casacore::IntpolMap_p_base
 
OpCodes opCode_p
 

Detailed Description

class ALMAAperture : public ATerm

Definition at line 71 of file ALMAAperture.h.

Constructor & Destructor Documentation

casa::ALMAAperture::ALMAAperture ( )
casa::ALMAAperture::~ALMAAperture ( )

Member Function Documentation

static casacore::Vector<ALMAAntennaType> casa::ALMAAperture::antennaTypesFromCFKey ( const casacore::Int cFKey)
static
static ALMAAntennaType casa::ALMAAperture::antTypeFromName ( const casacore::String name)
static

derive type number from first two characters in antenna name, return -1 if not recognised

casacore::Vector<ALMAAntennaType> casa::ALMAAperture::antTypeList ( const VisBuffer vb)

generate the lists of antenna types for the whole vb

casacore::Vector<ALMAAntennaType> casa::ALMAAperture::antTypeMap ( const VisBuffer vb)

virtual casacore::Int getConvSize() {return CONVSIZE;}; virtual casacore::Int getOversampling() {return OVERSAMPLING;} virtual casacore::Float getConvWeightSizeFactor() {return CONVWTSIZEFACTOR;}; virtual casacore::Float getSupportThreshold() {return THRESHOLD;};

tell the antenna type number for each antenna in the antenna table

static casacore::String casa::ALMAAperture::antTypeStrFromType ( const ALMAAntennaType aType)
static
virtual void casa::ALMAAperture::applySky ( casacore::ImageInterface< casacore::Float > &  outputImage,
const VisBuffer vb,
const casacore::Bool  doSquint = true,
const casacore::Int cfKey = 0,
const casacore::Double  freqVal = -1.0 
)
inlinevirtual

Definition at line 88 of file ALMAAperture.h.

Referenced by applySky().

virtual void casa::ALMAAperture::applySky ( casacore::ImageInterface< casacore::Complex > &  outputImage,
const VisBuffer vb,
const casacore::Bool  doSquint = true,
const casacore::Int cfKey = 0,
const casacore::Double  freqVal = -1.0 
)
inlinevirtual

Definition at line 96 of file ALMAAperture.h.

References applySky().

void casa::ALMAAperture::applySky ( casacore::ImageInterface< casacore::Float > &  outputImage,
const VisBuffer vb,
const casacore::Bool  doSquint,
const casacore::Int cfKey,
const casacore::Bool  raytrace 
)
void casa::ALMAAperture::applySky ( casacore::ImageInterface< casacore::Complex > &  outputImage,
const VisBuffer vb,
const casacore::Bool  doSquint,
const casacore::Int cfKey,
const casacore::Bool  raytrace 
)
void casa::ALMAAperture::cacheVBInfo ( const casacore::String telescopeName,
const casacore::Float diameter 
)
virtual

Implements casa::ATerm.

void casa::ALMAAperture::cacheVBInfo ( const VisBuffer vb)
virtual

Implements casa::ATerm.

static casacore::Int casa::ALMAAperture::cFKeyFromAntennaTypes ( const ALMAAntennaType  aT1,
const ALMAAntennaType  aT2 
)
static
void casa::ALMAAperture::destroyAntResp ( )
inline

Definition at line 152 of file ALMAAperture.h.

References aR_p.

casacore::Int casa::ALMAAperture::getBandID ( const casacore::Double freq,
const casacore::String telescopeName 
)
virtual void casa::ALMAAperture::getPolMap ( casacore::Vector< casacore::Int > &  polMap)
inlinevirtual

Reimplemented from casa::ATerm.

Definition at line 121 of file ALMAAperture.h.

References polMap_p, and casacore::Vector< T >::resize().

casacore::Int casa::ALMAAperture::getVisParams ( const VisBuffer vb,
const casacore::CoordinateSystem skyCoord = casacore::CoordinateSystem() 
)
virtual

Implements casa::ATerm.

virtual void casa::ALMAAperture::makeFullJones ( casacore::ImageInterface< casacore::Complex > &  pbImage,
const VisBuffer vb,
casacore::Bool  doSquint,
casacore::Int bandID,
casacore::Double  freqVal 
)
virtual

Overload these functions.

They are pure virtual in the base class (ATerm).

Implements casa::ATerm.

casacore::Int casa::ALMAAperture::makePBPolnCoords ( const VisBuffer vb,
const casacore::Int convSize,
const casacore::Int convSampling,
const casacore::CoordinateSystem skyCoord,
const casacore::Int skyNx,
const casacore::Int skyNy,
casacore::CoordinateSystem feedCoord 
)
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(casacore::Matrix<casacore::Complex>& screen, const casacore::Int wPixel, const casacore::Vector<casacore::Double>& sampling, const casacore::Int wConvSize, const casacore::Double wScale, const casacore::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.

Reimplemented from casa::ATerm.

virtual casacore::String casa::ALMAAperture::name ( )
inlinevirtual

Implements casa::ATerm.

Definition at line 86 of file ALMAAperture.h.

ALMAAperture& casa::ALMAAperture::operator= ( const ALMAAperture other)
void casa::ALMAAperture::resetAntTypeMap ( )
inline

call this before reusing the same ALMAAperture object on a different MS

Definition at line 131 of file ALMAAperture.h.

References antTypeMap_p, and casacore::Vector< T >::resize().

virtual void casa::ALMAAperture::setPolMap ( const casacore::Vector< casacore::Int > &  polMap)
inlinevirtual

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::ATerm.

Definition at line 120 of file ALMAAperture.h.

References polMap_p, and casacore::Vector< T >::resize().

virtual casacore::Vector<casacore::Int> casa::ALMAAperture::vbRow2CFKeyMap ( const VisBuffer vb,
casacore::Int nUnique 
)
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(casacore::Matrix<casacore::Complex>& screen, const casacore::Int wPixel, const casacore::Vector<casacore::Double>& sampling, const casacore::Int wConvSize, const casacore::Double wScale, const casacore::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.

Reimplemented from casa::ATerm.

Member Data Documentation

casacore::Vector<ALMAAntennaType> casa::ALMAAperture::antTypeMap_p
private

Definition at line 160 of file ALMAAperture.h.

Referenced by resetAntTypeMap().

AntennaResponses* casa::ALMAAperture::aR_p
staticprivate

Definition at line 152 of file ALMAAperture.h.

Referenced by destroyAntResp().

casacore::Bool casa::ALMAAperture::haveCannedResponses_p
private

Definition at line 159 of file ALMAAperture.h.

casacore::Bool casa::ALMAAperture::orderMattersInCFKey
staticprivate

Definition at line 157 of file ALMAAperture.h.

casacore::Vector<casacore::Int> casa::ALMAAperture::polMap_p
private

Definition at line 158 of file ALMAAperture.h.

Referenced by getPolMap(), and setPolMap().

casacore::Vector<casacore::PagedImage<casacore::Complex>* > casa::ALMAAperture::respImage_p
private

Definition at line 161 of file ALMAAperture.h.


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