casa
$Rev:20696$
|
#include <VisibilityResampler.h>
Public Member Functions | |
VisibilityResampler () | |
VisibilityResampler (const VisibilityResampler &other) | |
VisibilityResampler(const CFStore& cfs): VisibilityResamplerBase(cfs) {};. | |
virtual | ~VisibilityResampler () |
{setConvFunc(cfs);}; | |
void | copy (const VisibilityResamplerBase &other) |
VisibilityResampler& operator=(const VisibilityResampler& other);. | |
virtual VisibilityResamplerBase * | clone () |
virtual void | getParams (Vector< Double > &uvwScale, Vector< Double > &offset, Vector< Double > &dphase) |
virtual void | setParams (const Vector< Double > &uvwScale, const Vector< Double > &offset, const Vector< Double > &dphase) |
virtual void | setMaps (const Vector< Int > &chanMap, const Vector< Int > &polMap) |
virtual void | setFreqMaps (const Matrix< Double > &spwChanFreqs, const Matrix< Double > &spwChanConjFreqs) |
virtual void | setConvFunc (const CFStore &cfs) |
virtual void | setCFMaps (const Vector< Int > &cfMap, const Vector< Int > &conjCFMap) |
virtual void | DataToGrid (Array< DComplex > &griddedData, VBStore &vbs, Matrix< Double > &sumwt, const Bool &dopsf, Bool=False) |
virtual void | DataToGrid (Array< Complex > &griddedData, VBStore &vbs, Matrix< Double > &sumwt, const Bool &dopsf, Bool=False) |
virtual void | GridToData (VBStore &vbs, const Array< Complex > &griddedData) |
virtual void | ComputeResiduals (VBStore &vbs) |
virtual void GridToData(VBStore& vbs, Array<Complex>& griddedData); | |
virtual void | setMutex (async::Mutex *mu) |
virtual void | init (const Bool &doublePrecision) |
Genealogical baggage -- required for the MultiThreadedVisibilityResampler -- that everyone else has to carray around. | |
virtual void | GatherGrids (Array< DComplex > &griddedData, Matrix< Double > &sumwt) |
virtual void | GatherGrids (Array< Complex > &griddedData, Matrix< Double > &sumwt) |
virtual void | initializePutBuffers (const Array< DComplex > &griddedData, const Matrix< Double > &sumwt) |
virtual void | initializePutBuffers (const Array< Complex > &griddedData, const Matrix< Double > &sumwt) |
virtual void | releaseBuffers () |
Protected Member Functions | |
template<class T > | |
void | DataToGridImpl_p (Array< T > &griddedData, VBStore &vb, const Bool &dopsf, Matrix< Double > &sumwt, Bool useConjFreqCF=False) |
Vector<Double> uvwScale_p, offset_p, dphase_p; Vector<Int> chanMap_p, polMap_p; CFStore convFuncStore_p; Int inc0_p, inc1_p, inc2_p, inc3_p;. | |
void | cacheAxisIncrements (Int &n0, Int &n1, Int &n2, Int &n3) |
void sgrid(Vector<Double>& pos, Vector<Int>& loc, Vector<Int>& off, Complex& phasor, const Int& irow, const Matrix<Double>& uvw, const Double& dphase, const Double& freq, const Vector<Double>& scale, const Vector<Double>& offset, const Vector<Float>& sampling); | |
Complex | getFrom4DArray (const Complex *__restrict__ store, const Int *__restrict__ iPos) __restrict__ |
The following two methods are called in the innermost loop. | |
template<class T > | |
void | addTo4DArray (T *__restrict__ store, const Int *__restrict__ iPos, Complex &nvalue, Double &wt) __restrict__ |
Protected Attributes | |
async::Mutex * | myMutex_p |
----------------------------Private parts------------------------------------- |
Definition at line 46 of file VisibilityResampler.h.
casa::VisibilityResampler::VisibilityResampler | ( | ) | [inline] |
Definition at line 49 of file VisibilityResampler.h.
Referenced by clone().
casa::VisibilityResampler::VisibilityResampler | ( | const VisibilityResampler & | other | ) | [inline] |
VisibilityResampler(const CFStore& cfs): VisibilityResamplerBase(cfs) {};.
Definition at line 51 of file VisibilityResampler.h.
References copy().
virtual casa::VisibilityResampler::~VisibilityResampler | ( | ) | [inline, virtual] |
{setConvFunc(cfs);};
Definition at line 55 of file VisibilityResampler.h.
void casa::VisibilityResampler::addTo4DArray | ( | T *__restrict__ | store, |
const Int *__restrict__ | iPos, | ||
Complex & | nvalue, | ||
Double & | wt | ||
) | [inline, protected] |
Definition at line 212 of file VisibilityResampler.h.
void casa::VisibilityResampler::cacheAxisIncrements | ( | Int & | n0, |
Int & | n1, | ||
Int & | n2, | ||
Int & | n3 | ||
) | [inline, protected] |
void sgrid(Vector<Double>& pos, Vector<Int>& loc, Vector<Int>& off, Complex& phasor, const Int& irow, const Matrix<Double>& uvw, const Double& dphase, const Double& freq, const Vector<Double>& scale, const Vector<Double>& offset, const Vector<Float>& sampling);
Definition at line 202 of file VisibilityResampler.h.
virtual VisibilityResamplerBase* casa::VisibilityResampler::clone | ( | ) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler.
Definition at line 62 of file VisibilityResampler.h.
References VisibilityResampler().
virtual void casa::VisibilityResampler::ComputeResiduals | ( | VBStore & | vbs | ) | [virtual] |
virtual void GridToData(VBStore& vbs, Array<Complex>& griddedData);
Implements casa::VisibilityResamplerBase.
void casa::VisibilityResampler::copy | ( | const VisibilityResamplerBase & | other | ) | [inline, virtual] |
VisibilityResampler& operator=(const VisibilityResampler& other);.
Reimplemented from casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler.
Definition at line 59 of file VisibilityResampler.h.
Referenced by VisibilityResampler().
virtual void casa::VisibilityResampler::DataToGrid | ( | Array< DComplex > & | griddedData, |
VBStore & | vbs, | ||
Matrix< Double > & | sumwt, | ||
const Bool & | dopsf, | ||
Bool | = False |
||
) | [inline, virtual] |
Re-sample the griddedData on the VisBuffer (a.k.a gridding).
In this class, these just call the private templated version. The first variant grids onto a double precision grid while the second one does it on a single precision grid.
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler.
Definition at line 106 of file VisibilityResampler.h.
References DataToGridImpl_p().
virtual void casa::VisibilityResampler::DataToGrid | ( | Array< Complex > & | griddedData, |
VBStore & | vbs, | ||
Matrix< Double > & | sumwt, | ||
const Bool & | dopsf, | ||
Bool | = False |
||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler.
Definition at line 111 of file VisibilityResampler.h.
References DataToGridImpl_p().
void casa::VisibilityResampler::DataToGridImpl_p | ( | Array< T > & | griddedData, |
VBStore & | vb, | ||
const Bool & | dopsf, | ||
Matrix< Double > & | sumwt, | ||
Bool | useConjFreqCF = False |
||
) | [protected] |
Vector<Double> uvwScale_p, offset_p, dphase_p; Vector<Int> chanMap_p, polMap_p; CFStore convFuncStore_p; Int inc0_p, inc1_p, inc2_p, inc3_p;.
Re-sample the griddedData on the VisBuffer (a.k.a de-gridding).
Referenced by DataToGrid().
virtual void casa::VisibilityResampler::GatherGrids | ( | Array< DComplex > & | griddedData, |
Matrix< Double > & | sumwt | ||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 134 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::GatherGrids | ( | Array< Complex > & | griddedData, |
Matrix< Double > & | sumwt | ||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 135 of file VisibilityResampler.h.
Complex casa::VisibilityResampler::getFrom4DArray | ( | const Complex *__restrict__ | store, |
const Int *__restrict__ | iPos | ||
) | [inline, protected] |
The following two methods are called in the innermost loop.
Definition at line 207 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::getParams | ( | Vector< Double > & | uvwScale, |
Vector< Double > & | offset, | ||
Vector< Double > & | dphase | ||
) | [inline, virtual] |
Definition at line 65 of file VisibilityResampler.h.
References casa::Vector< T >::assign(), casa::VisibilityResamplerBase::dphase_p, casa::VisibilityResamplerBase::offset_p, and casa::VisibilityResamplerBase::uvwScale_p.
virtual void casa::VisibilityResampler::GridToData | ( | VBStore & | vbs, |
const Array< Complex > & | griddedData | ||
) | [virtual] |
Re-sample VisBuffer to a regular grid (griddedData) (a.k.a. de-gridding)
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler.
virtual void casa::VisibilityResampler::init | ( | const Bool & | doublePrecision | ) | [inline, virtual] |
Genealogical baggage -- required for the MultiThreadedVisibilityResampler -- that everyone else has to carray around.
These are no-ops for unithreaded samplers.
Implements casa::VisibilityResamplerBase.
Definition at line 133 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::initializePutBuffers | ( | const Array< DComplex > & | griddedData, |
const Matrix< Double > & | sumwt | ||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 136 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::initializePutBuffers | ( | const Array< Complex > & | griddedData, |
const Matrix< Double > & | sumwt | ||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 138 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::releaseBuffers | ( | ) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 142 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::setCFMaps | ( | const Vector< Int > & | cfMap, |
const Vector< Int > & | conjCFMap | ||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler.
Definition at line 96 of file VisibilityResampler.h.
virtual void casa::VisibilityResampler::setConvFunc | ( | const CFStore & | cfs | ) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 92 of file VisibilityResampler.h.
References casa::VisibilityResamplerBase::convFuncStore_p.
virtual void casa::VisibilityResampler::setFreqMaps | ( | const Matrix< Double > & | spwChanFreqs, |
const Matrix< Double > & | spwChanConjFreqs | ||
) | [inline, virtual] |
Implements casa::VisibilityResamplerBase.
Definition at line 86 of file VisibilityResampler.h.
References casa::Matrix< T >::assign(), casa::VisibilityResamplerBase::spwChanConjFreq_p, and casa::VisibilityResamplerBase::spwChanFreq_p.
virtual void casa::VisibilityResampler::setMaps | ( | const Vector< Int > & | chanMap, |
const Vector< Int > & | polMap | ||
) | [inline, virtual] |
SynthesisUtils::SETVEC(chanMap_p,chanMap); SynthesisUtils::SETVEC(polMap_p,polMap);
Implements casa::VisibilityResamplerBase.
Definition at line 78 of file VisibilityResampler.h.
References casa::VisibilityResamplerBase::chanMap_p, casa::VisibilityResamplerBase::polMap_p, and casa::Vector< T >::reference().
virtual void casa::VisibilityResampler::setMutex | ( | async::Mutex * | mu | ) | [inline, virtual] |
Definition at line 125 of file VisibilityResampler.h.
References myMutex_p.
virtual void casa::VisibilityResampler::setParams | ( | const Vector< Double > & | uvwScale, |
const Vector< Double > & | offset, | ||
const Vector< Double > & | dphase | ||
) | [inline, virtual] |
SynthesisUtils::SETVEC(uvwScale_p, uvwScale); SynthesisUtils::SETVEC(offset_p, offset); SynthesisUtils::SETVEC(dphase_p, dphase);
Implements casa::VisibilityResamplerBase.
Definition at line 67 of file VisibilityResampler.h.
References casa::VisibilityResamplerBase::dphase_p, casa::VisibilityResamplerBase::offset_p, casa::Vector< T >::reference(), and casa::VisibilityResamplerBase::uvwScale_p.
async::Mutex* casa::VisibilityResampler::myMutex_p [protected] |
Definition at line 142 of file VisibilityResampler.h.
Referenced by setMutex().