#include <AWConvFunc.h>
Public Member Functions | |
AWConvFunc (const CountedPtr< ATerm > ATerm, const CountedPtr< PSTerm > psTerm, const CountedPtr< WTerm > wTerm, const Bool wbAWP=False) | |
~AWConvFunc () | |
AWConvFunc & | operator= (const AWConvFunc &other) |
virtual void | makeConvFunction (const ImageInterface< Complex > &image, const VisBuffer2 &vb, const Int wConvSize, const CountedPtr< PolOuterProduct > &pop, const Float pa, const Float dpa, const Vector< Double > &uvScale, const Vector< Double > &uvOffset, const Matrix< Double > &vbFreqSelection, CFStore2 &cfs, CFStore2 &cfwts, Bool fillCF=True) |
This method computes the convolution function and the convolution function used for gridding the weights (typically these are the same) and returns them in the cfs and cfwts parameters. | |
virtual void | fillConvFuncBuffer (CFBuffer &cfb, CFBuffer &cfWtb, const Int &nx, const Int &ny, const Vector< Double > &freqValues, const Vector< Double > &wValues, const Double &wScale, const Double &vbPA, const Double &freqHi, const PolMapType &muellerElements, const PolMapType &muellerElementsIndex, const VisBuffer2 &vb, const Float &psScale, PSTerm &psTerm, WTerm &wTerm, ATerm &aTerm, Bool isDryRun=False) |
virtual Bool | makeAverageResponse (const VisBuffer2 &vb, const ImageInterface< Complex > &image, ImageInterface< Float > &theavgPB, Bool reset=True) |
This method computes the average response function. | |
virtual Bool | makeAverageResponse (const VisBuffer2 &vb, const ImageInterface< Complex > &image, ImageInterface< Complex > &theavgPB, Bool reset=True) |
virtual int | getVisParams (const VisBuffer2 &vb, const CoordinateSystem &skyCoord=CoordinateSystem()) |
A support function which, for now, returns and integer ID corresponding to the on-sky frequency of the supplied VisBuffer. | |
virtual void | setPolMap (const Vector< Int > &polMap) |
virtual Bool | findSupport (Array< Complex > &func, Float &threshold, Int &origin, Int &R) |
virtual void setFeedStokes(const Vector<Int>& feedStokes) {aTerm_p->setFeedStokes(feedStokes);}; | |
virtual Vector< Double > | findPointingOffset (const ImageInterface< Complex > &, const VisBuffer2 &) |
virtual void | prepareConvFunction (const VisBuffer2 &vb, VBRow2CFBMapType &cfs) |
virtual void setParams(const Vector<Int>& polMap, const Vector<Int>& feedStokes) {setPolMap(polMap); setFeedStokes(feedStokes);}; | |
Int | mapAntIDToAntType (const Int &ant) |
virtual Vector< Double > | makeFreqValList (Double &freqScale, const VisBuffer2 &vb, const ImageInterface< Complex > &uvGrid) |
virtual Vector< Double > | makeWValList (const Double &dW, const Int &nW) |
virtual void | setMiscInfo (const RecordInterface ¶ms) |
virtual Matrix< Double > | getFreqRangePerSpw (const VisBuffer2 &vb) |
virtual CountedPtr< CFTerms > | getTerm (const String &name) |
Static Public Member Functions | |
static void | makeConvFunction2 (const String &uvGridDiskimage, const Vector< Double > &uvScale, const Vector< Double > &uvOffset, const Matrix< Double > &vbFreqSelection, CFStore2 &cfs, CFStore2 &cfwts, const Bool psTermOn, const Bool aTermOn) |
static void | fillConvFuncBuffer2 (CFBuffer &cfb, CFBuffer &cfWtb, const Int &nx, const Int &ny, const ImageInterface< Complex > &skyImage, const CFCStruct &miscInfo, PSTerm &psTerm, WTerm &wTerm, ATerm &aTerm) |
static void | makeConjPolAxis (CoordinateSystem &cs, Int conjStokes_in=-1) |
Global methods (services). | |
static Complex | cfArea (Matrix< Complex > &cf, const Int &xSupport, const Int &ySupport, const Float &sampling) |
static Bool | awFindSupport (Array< Complex > &func, Float &threshold, Int &origin, Int &radius) |
static Bool | setUpCFSupport (Array< Complex > &func, Int &xSupport, Int &ySupport, const Float &sampling, const Complex &peak) |
static Bool | resizeCF (Array< Complex > &func, Int &xSupport, Int &ySupport, const Int &supportBuffer, const Float &sampling, const Complex &peak) |
static Int | getOversampling (PSTerm &psTerm, WTerm &wTerm, ATerm &aTerm) |
Public Attributes | |
CountedPtr< ATerm > | aTerm_p |
CountedPtr< PSTerm > | psTerm_p |
CountedPtr< WTerm > | wTerm_p |
Protected Member Functions | |
void | normalizeAvgPB (ImageInterface< Complex > &inImage, ImageInterface< Float > &outImage) |
Bool | makeAverageResponse_org (const VisBuffer2 &vb, const ImageInterface< Complex > &image, ImageInterface< Float > &theavgPB, Bool reset=True) |
void | makePBSq (ImageInterface< Complex > &inImage) |
Protected Attributes | |
Vector< Double > | thePix_p |
Vector< Double > | pixFieldGrad_p |
Double | imRefFreq_p |
Bool | wbAWP_p |
CountedPtr< CFBuffer > | baseCFB_p |
Definition at line 56 of file AWConvFunc.h.
casa::refim::AWConvFunc::AWConvFunc | ( | const CountedPtr< ATerm > | ATerm, | |
const CountedPtr< PSTerm > | psTerm, | |||
const CountedPtr< WTerm > | wTerm, | |||
const Bool | wbAWP = False | |||
) | [inline] |
Definition at line 59 of file AWConvFunc.h.
References pixFieldGrad_p.
casa::refim::AWConvFunc::~AWConvFunc | ( | ) | [inline] |
Definition at line 67 of file AWConvFunc.h.
static Bool casa::refim::AWConvFunc::awFindSupport | ( | Array< Complex > & | func, | |
Float & | threshold, | |||
Int & | origin, | |||
Int & | radius | |||
) | [static] |
static Complex casa::refim::AWConvFunc::cfArea | ( | Matrix< Complex > & | cf, | |
const Int & | xSupport, | |||
const Int & | ySupport, | |||
const Float & | sampling | |||
) | [static] |
virtual void casa::refim::AWConvFunc::fillConvFuncBuffer | ( | CFBuffer & | cfb, | |
CFBuffer & | cfWtb, | |||
const Int & | nx, | |||
const Int & | ny, | |||
const Vector< Double > & | freqValues, | |||
const Vector< Double > & | wValues, | |||
const Double & | wScale, | |||
const Double & | vbPA, | |||
const Double & | freqHi, | |||
const PolMapType & | muellerElements, | |||
const PolMapType & | muellerElementsIndex, | |||
const VisBuffer2 & | vb, | |||
const Float & | psScale, | |||
PSTerm & | psTerm, | |||
WTerm & | wTerm, | |||
ATerm & | aTerm, | |||
Bool | isDryRun = False | |||
) | [virtual] |
static void casa::refim::AWConvFunc::fillConvFuncBuffer2 | ( | CFBuffer & | cfb, | |
CFBuffer & | cfWtb, | |||
const Int & | nx, | |||
const Int & | ny, | |||
const ImageInterface< Complex > & | skyImage, | |||
const CFCStruct & | miscInfo, | |||
PSTerm & | psTerm, | |||
WTerm & | wTerm, | |||
ATerm & | aTerm | |||
) | [static] |
virtual Vector<Double> casa::refim::AWConvFunc::findPointingOffset | ( | const ImageInterface< Complex > & | , | |
const VisBuffer2 & | ||||
) | [inline, virtual] |
Implements casa::refim::ConvolutionFunction.
Reimplemented in casa::refim::AWConvFuncEPJones.
Definition at line 117 of file AWConvFunc.h.
virtual Bool casa::refim::AWConvFunc::findSupport | ( | Array< Complex > & | func, | |
Float & | threshold, | |||
Int & | origin, | |||
Int & | R | |||
) | [virtual] |
virtual void setFeedStokes(const Vector<Int>& feedStokes) {aTerm_p->setFeedStokes(feedStokes);};
Implements casa::refim::ConvolutionFunction.
virtual Matrix<Double> casa::refim::AWConvFunc::getFreqRangePerSpw | ( | const VisBuffer2 & | vb | ) | [virtual] |
static Int casa::refim::AWConvFunc::getOversampling | ( | PSTerm & | psTerm, | |
WTerm & | wTerm, | |||
ATerm & | aTerm | |||
) | [static] |
virtual CountedPtr<CFTerms> casa::refim::AWConvFunc::getTerm | ( | const String & | name | ) | [inline, virtual] |
Reimplemented from casa::refim::ConvolutionFunction.
Definition at line 143 of file AWConvFunc.h.
References aTerm_p.
virtual int casa::refim::AWConvFunc::getVisParams | ( | const VisBuffer2 & | vb, | |
const CoordinateSystem & | skyCoord = CoordinateSystem() | |||
) | [inline, virtual] |
A support function which, for now, returns and integer ID corresponding to the on-sky frequency of the supplied VisBuffer.
Implements casa::refim::ConvolutionFunction.
Definition at line 112 of file AWConvFunc.h.
References aTerm_p.
virtual Bool casa::refim::AWConvFunc::makeAverageResponse | ( | const VisBuffer2 & | vb, | |
const ImageInterface< Complex > & | image, | |||
ImageInterface< Complex > & | theavgPB, | |||
Bool | reset = True | |||
) | [virtual] |
Implements casa::refim::ConvolutionFunction.
virtual Bool casa::refim::AWConvFunc::makeAverageResponse | ( | const VisBuffer2 & | vb, | |
const ImageInterface< Complex > & | image, | |||
ImageInterface< Float > & | theavgPB, | |||
Bool | reset = True | |||
) | [virtual] |
This method computes the average response function.
This is typically image-plane equivalent of the convolution functions, averaged over various axis. The precise averaging will be implementation dependent in the derived classes.
Implements casa::refim::ConvolutionFunction.
Bool casa::refim::AWConvFunc::makeAverageResponse_org | ( | const VisBuffer2 & | vb, | |
const ImageInterface< Complex > & | image, | |||
ImageInterface< Float > & | theavgPB, | |||
Bool | reset = True | |||
) | [protected] |
static void casa::refim::AWConvFunc::makeConjPolAxis | ( | CoordinateSystem & | cs, | |
Int | conjStokes_in = -1 | |||
) | [static] |
Global methods (services).
virtual void casa::refim::AWConvFunc::makeConvFunction | ( | const ImageInterface< Complex > & | image, | |
const VisBuffer2 & | vb, | |||
const Int | wConvSize, | |||
const CountedPtr< PolOuterProduct > & | pop, | |||
const Float | pa, | |||
const Float | dpa, | |||
const Vector< Double > & | uvScale, | |||
const Vector< Double > & | uvOffset, | |||
const Matrix< Double > & | vbFreqSelection, | |||
CFStore2 & | cfs, | |||
CFStore2 & | cfwts, | |||
Bool | fillCF = True | |||
) | [virtual] |
This method computes the convolution function and the convolution function used for gridding the weights (typically these are the same) and returns them in the cfs and cfwts parameters.
The required information about the image and visibility parameters is dervided from the given image and VisBuffer objects. wConvSize is the number of w-term planes and pa is the Parallactic Angle in radians for which the convolution function(s) are computed.
Implements casa::refim::ConvolutionFunction.
Reimplemented in casa::refim::AWConvFuncEPJones.
static void casa::refim::AWConvFunc::makeConvFunction2 | ( | const String & | uvGridDiskimage, | |
const Vector< Double > & | uvScale, | |||
const Vector< Double > & | uvOffset, | |||
const Matrix< Double > & | vbFreqSelection, | |||
CFStore2 & | cfs, | |||
CFStore2 & | cfwts, | |||
const Bool | psTermOn, | |||
const Bool | aTermOn | |||
) | [static] |
virtual Vector<Double> casa::refim::AWConvFunc::makeFreqValList | ( | Double & | freqScale, | |
const VisBuffer2 & | vb, | |||
const ImageInterface< Complex > & | uvGrid | |||
) | [virtual] |
void casa::refim::AWConvFunc::makePBSq | ( | ImageInterface< Complex > & | inImage | ) | [protected] |
virtual Vector<Double> casa::refim::AWConvFunc::makeWValList | ( | const Double & | dW, | |
const Int & | nW | |||
) | [virtual] |
Int casa::refim::AWConvFunc::mapAntIDToAntType | ( | const Int & | ant | ) | [inline, virtual] |
Reimplemented from casa::refim::ConvolutionFunction.
Definition at line 120 of file AWConvFunc.h.
References aTerm_p.
void casa::refim::AWConvFunc::normalizeAvgPB | ( | ImageInterface< Complex > & | inImage, | |
ImageInterface< Float > & | outImage | |||
) | [protected] |
AWConvFunc& casa::refim::AWConvFunc::operator= | ( | const AWConvFunc & | other | ) |
Reimplemented in casa::refim::AWConvFuncEPJones.
virtual void casa::refim::AWConvFunc::prepareConvFunction | ( | const VisBuffer2 & | vb, | |
VBRow2CFBMapType & | theMap | |||
) | [virtual] |
virtual void setParams(const Vector<Int>& polMap, const Vector<Int>& feedStokes) {setPolMap(polMap); setFeedStokes(feedStokes);};
virtual void prepareConvFunction(const VisBuffer2& vb, CFStore2& cfs)=0;
Implements casa::refim::ConvolutionFunction.
static Bool casa::refim::AWConvFunc::resizeCF | ( | Array< Complex > & | func, | |
Int & | xSupport, | |||
Int & | ySupport, | |||
const Int & | supportBuffer, | |||
const Float & | sampling, | |||
const Complex & | peak | |||
) | [static] |
virtual void casa::refim::AWConvFunc::setMiscInfo | ( | const RecordInterface & | params | ) | [virtual] |
Reimplemented from casa::refim::ConvolutionFunction.
virtual void casa::refim::AWConvFunc::setPolMap | ( | const Vector< Int > & | polMap | ) | [inline, virtual] |
Implements casa::refim::ConvolutionFunction.
Definition at line 114 of file AWConvFunc.h.
References aTerm_p.
static Bool casa::refim::AWConvFunc::setUpCFSupport | ( | Array< Complex > & | func, | |
Int & | xSupport, | |||
Int & | ySupport, | |||
const Float & | sampling, | |||
const Complex & | peak | |||
) | [static] |
CountedPtr<ATerm> casa::refim::AWConvFunc::aTerm_p |
Definition at line 146 of file AWConvFunc.h.
Referenced by getTerm(), getVisParams(), mapAntIDToAntType(), and setPolMap().
CountedPtr<CFBuffer> casa::refim::AWConvFunc::baseCFB_p [protected] |
Definition at line 163 of file AWConvFunc.h.
Double casa::refim::AWConvFunc::imRefFreq_p [protected] |
Definition at line 161 of file AWConvFunc.h.
Vector<Double> casa::refim::AWConvFunc::pixFieldGrad_p [protected] |
Definition at line 160 of file AWConvFunc.h.
Referenced by AWConvFunc().
CountedPtr<PSTerm> casa::refim::AWConvFunc::psTerm_p |
Definition at line 147 of file AWConvFunc.h.
Vector<Double> casa::refim::AWConvFunc::thePix_p [protected] |
Definition at line 160 of file AWConvFunc.h.
Bool casa::refim::AWConvFunc::wbAWP_p [protected] |
Definition at line 162 of file AWConvFunc.h.
CountedPtr<WTerm> casa::refim::AWConvFunc::wTerm_p |
Definition at line 148 of file AWConvFunc.h.