casa
$Rev:20696$
|
#include <IlluminationConvFunc.h>
Public Member Functions | |
IlluminationConvFunc () | |
IlluminationConvFunc (Int n) | |
~IlluminationConvFunc () | |
IlluminationConvFunc & | operator= (const IlluminationConvFunc &) |
IlluminationConvFunc & | operator= (const ConvolutionFunction &) |
void | initExpTable (Int n, CF_TYPE step) |
void | initCExpTable (Int n) |
void | setSigma (Double s) |
Bool | isReady () |
CF_TYPE | area (Vector< Int > &convSupport, Vector< Double > &uvScale) |
Vector< Int > | supportSize (Vector< Double > &uvScale) |
CF_TYPE | getValue (Vector< CF_TYPE > &coord, Vector< CF_TYPE > &offset) |
Given the pixel co-ordinates and an offset values, this returns the value of the convolution function. | |
virtual CF_TYPE | getValue (Double *coord, Double *raoff1, Double *raoff2, Double *decoff1, Double *decoff2, Double *area, Int *doGrad, Complex &weight, Complex &dweight1, Complex &dweight2, Double ¤tCFPA) |
int | getVisParams (const casa::VisBuffer &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. | |
void | makeConvFunction (const casa::ImageInterface< std::complex< float > > &, const casa::VisBuffer &, casa::Int, const CountedPtr< PolOuterProduct > &, casa::Float, casa::Float, const Vector< Double > &, const Vector< Double > &, const Matrix< Double > &, casa::CFStore2 &, casa::CFStore2 &) |
void | setPolMap (const casa::Vector< int > &polMap) |
void | setFeedStokes (const casa::Vector< int > &feedStokes) |
void | setParams (const casa::Vector< int > &polMap, const casa::Vector< int > &feedStokes) |
Bool | findSupport (Array< Complex > &, Float &, Int &, Int &) |
virtual void setFeedStokes(const Vector<Int>& feedStokes) = 0; | |
virtual Vector< Double > | findPointingOffset (const ImageInterface< Complex > &, const VisBuffer &) |
virtual void | prepareConvFunction (const VisBuffer &, VBRow2CFBMapType &) |
virtual void setParams(const Vector<Int>& polMap, const Vector<Int>& feedStokes) {setPolMap(polMap); setFeedStokes(feedStokes);}; | |
virtual Bool | makeAverageResponse (const VisBuffer &, const ImageInterface< Complex > &, ImageInterface< Float > &, Bool) |
This method computes the average response function. | |
virtual Bool | makeAverageResponse (const VisBuffer &, const ImageInterface< Complex > &, ImageInterface< Complex > &, Bool) |
Private Attributes | |
ExpCache< CF_TYPE > | ExpTable |
CExp3< CF_TYPE > | CExpTable |
Double | sigma |
Double | pa_p |
Bool | expTableReady |
Bool | cexpTableReady |
Bool | sigmaReady |
Definition at line 40 of file IlluminationConvFunc.h.
casa::IlluminationConvFunc::IlluminationConvFunc | ( | ) | [inline] |
Definition at line 43 of file IlluminationConvFunc.h.
References cexpTableReady, expTableReady, casa::False, pa_p, and sigmaReady.
casa::IlluminationConvFunc::IlluminationConvFunc | ( | Int | n | ) | [inline] |
Definition at line 45 of file IlluminationConvFunc.h.
References cexpTableReady, expTableReady, casa::False, pa_p, and sigmaReady.
casa::IlluminationConvFunc::~IlluminationConvFunc | ( | ) | [inline] |
Definition at line 47 of file IlluminationConvFunc.h.
CF_TYPE casa::IlluminationConvFunc::area | ( | Vector< Int > & | convSupport, |
Vector< Double > & | uvScale | ||
) |
virtual Vector<Double> casa::IlluminationConvFunc::findPointingOffset | ( | const ImageInterface< Complex > & | , |
const VisBuffer & | |||
) | [inline, virtual] |
Implements casa::ConvolutionFunction.
Definition at line 99 of file IlluminationConvFunc.h.
Bool casa::IlluminationConvFunc::findSupport | ( | Array< Complex > & | func, |
Float & | threshold, | ||
Int & | origin, | ||
Int & | R | ||
) | [inline, virtual] |
virtual void setFeedStokes(const Vector<Int>& feedStokes) = 0;
Implements casa::ConvolutionFunction.
Reimplemented in casa::VLACalcIlluminationConvFunc.
Definition at line 97 of file IlluminationConvFunc.h.
CF_TYPE casa::IlluminationConvFunc::getValue | ( | Vector< CF_TYPE > & | , |
Vector< CF_TYPE > & | |||
) | [inline, virtual] |
Given the pixel co-ordinates and an offset values, this returns the value of the convolution function.
This is however not used anywhere yet (and is therefore also not a pure virtual function).
Reimplemented from casa::ConvolutionFunction.
Definition at line 66 of file IlluminationConvFunc.h.
virtual CF_TYPE casa::IlluminationConvFunc::getValue | ( | Double * | coord, |
Double * | raoff1, | ||
Double * | raoff2, | ||
Double * | decoff1, | ||
Double * | decoff2, | ||
Double * | area, | ||
Int * | doGrad, | ||
Complex & | weight, | ||
Complex & | dweight1, | ||
Complex & | dweight2, | ||
Double & | currentCFPA | ||
) | [virtual] |
currentCFPA,Double | lsigma |
int casa::IlluminationConvFunc::getVisParams | ( | const casa::VisBuffer & | 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::ConvolutionFunction.
Definition at line 83 of file IlluminationConvFunc.h.
void casa::IlluminationConvFunc::initCExpTable | ( | Int | n | ) | [inline] |
Definition at line 58 of file IlluminationConvFunc.h.
References casa::CExp3< T >::build(), CExpTable, cexpTableReady, and casa::True.
void casa::IlluminationConvFunc::initExpTable | ( | Int | n, |
CF_TYPE | step | ||
) | [inline] |
Definition at line 57 of file IlluminationConvFunc.h.
References casa::ExpCache< T >::build(), ExpTable, expTableReady, and casa::True.
Bool casa::IlluminationConvFunc::isReady | ( | ) | [inline] |
Definition at line 61 of file IlluminationConvFunc.h.
References cexpTableReady, expTableReady, and sigmaReady.
virtual Bool casa::IlluminationConvFunc::makeAverageResponse | ( | const VisBuffer & | vb, |
const ImageInterface< Complex > & | image, | ||
ImageInterface< Float > & | theavgPB, | ||
Bool | reset | ||
) | [inline, 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::ConvolutionFunction.
Reimplemented in casa::VLACalcIlluminationConvFunc.
Definition at line 105 of file IlluminationConvFunc.h.
virtual Bool casa::IlluminationConvFunc::makeAverageResponse | ( | const VisBuffer & | , |
const ImageInterface< Complex > & | , | ||
ImageInterface< Complex > & | , | ||
Bool | |||
) | [inline, virtual] |
Implements casa::ConvolutionFunction.
Definition at line 111 of file IlluminationConvFunc.h.
void casa::IlluminationConvFunc::makeConvFunction | ( | const casa::ImageInterface< std::complex< float > > & | , |
const casa::VisBuffer & | , | ||
casa::Int | , | ||
const CountedPtr< PolOuterProduct > & | , | ||
casa::Float | , | ||
casa::Float | , | ||
const Vector< Double > & | , | ||
const Vector< Double > & | , | ||
const Matrix< Double > & | , | ||
casa::CFStore2 & | , | ||
casa::CFStore2 & | |||
) | [inline] |
Definition at line 85 of file IlluminationConvFunc.h.
IlluminationConvFunc& casa::IlluminationConvFunc::operator= | ( | const IlluminationConvFunc & | ) | [inline] |
Definition at line 49 of file IlluminationConvFunc.h.
IlluminationConvFunc& casa::IlluminationConvFunc::operator= | ( | const ConvolutionFunction & | ) | [inline] |
Definition at line 53 of file IlluminationConvFunc.h.
virtual void casa::IlluminationConvFunc::prepareConvFunction | ( | const VisBuffer & | vb, |
VBRow2CFBMapType & | theMap | ||
) | [inline, virtual] |
virtual void setParams(const Vector<Int>& polMap, const Vector<Int>& feedStokes) {setPolMap(polMap); setFeedStokes(feedStokes);};
virtual void prepareConvFunction(const VisBuffer& vb, CFStore2& cfs)=0;
Implements casa::ConvolutionFunction.
Definition at line 102 of file IlluminationConvFunc.h.
void casa::IlluminationConvFunc::setFeedStokes | ( | const casa::Vector< int > & | feedStokes | ) | [inline] |
Definition at line 93 of file IlluminationConvFunc.h.
void casa::IlluminationConvFunc::setParams | ( | const casa::Vector< int > & | polMap, |
const casa::Vector< int > & | feedStokes | ||
) | [inline] |
Definition at line 94 of file IlluminationConvFunc.h.
void casa::IlluminationConvFunc::setPolMap | ( | const casa::Vector< int > & | polMap | ) | [inline, virtual] |
Implements casa::ConvolutionFunction.
Definition at line 92 of file IlluminationConvFunc.h.
void casa::IlluminationConvFunc::setSigma | ( | Double | s | ) | [inline] |
Definition at line 59 of file IlluminationConvFunc.h.
References sigma, sigmaReady, and casa::True.
Vector<Int> casa::IlluminationConvFunc::supportSize | ( | Vector< Double > & | uvScale | ) |
CExp3<CF_TYPE> casa::IlluminationConvFunc::CExpTable [private] |
Definition at line 120 of file IlluminationConvFunc.h.
Referenced by initCExpTable().
Definition at line 122 of file IlluminationConvFunc.h.
Referenced by IlluminationConvFunc(), initCExpTable(), and isReady().
ExpCache<CF_TYPE> casa::IlluminationConvFunc::ExpTable [private] |
Definition at line 115 of file IlluminationConvFunc.h.
Referenced by initExpTable().
Definition at line 122 of file IlluminationConvFunc.h.
Referenced by IlluminationConvFunc(), initExpTable(), and isReady().
Double casa::IlluminationConvFunc::pa_p [private] |
Definition at line 121 of file IlluminationConvFunc.h.
Referenced by IlluminationConvFunc().
Double casa::IlluminationConvFunc::sigma [private] |
Definition at line 121 of file IlluminationConvFunc.h.
Referenced by setSigma().
Bool casa::IlluminationConvFunc::sigmaReady [private] |
Definition at line 122 of file IlluminationConvFunc.h.
Referenced by IlluminationConvFunc(), isReady(), and setSigma().