casa
5.7.0-16
|
#include <VisibilityResampler.h>
Public Member Functions | |
VisibilityResampler () | |
VisibilityResampler (const VisibilityResampler &other) | |
VisibilityResampler(const CFStore& cfs): VisibilityResamplerBase(cfs) {};. More... | |
virtual | ~VisibilityResampler () |
{setConvFunc(cfs);}; More... | |
void | copy (const VisibilityResamplerBase &other) |
VisibilityResampler& operator=(const VisibilityResampler& other);. More... | |
virtual VisibilityResamplerBase * | clone () |
virtual void | getParams (casacore::Vector< casacore::Double > &uvwScale, casacore::Vector< casacore::Double > &offset, casacore::Vector< casacore::Double > &dphase) |
virtual void | setParams (const casacore::Vector< casacore::Double > &uvwScale, const casacore::Vector< casacore::Double > &offset, const casacore::Vector< casacore::Double > &dphase) |
virtual void | setMaps (const casacore::Vector< casacore::Int > &chanMap, const casacore::Vector< casacore::Int > &polMap) |
virtual void | setFreqMaps (const casacore::Matrix< casacore::Double > &spwChanFreqs, const casacore::Matrix< casacore::Double > &spwChanConjFreqs) |
virtual void | setConvFunc (const CFStore &cfs) |
virtual void | setCFMaps (const casacore::Vector< casacore::Int > &cfMap, const casacore::Vector< casacore::Int > &conjCFMap) |
virtual void | setPATolerance (const double &dPA) |
virtual void | DataToGrid (casacore::Array< casacore::DComplex > &griddedData, VBStore &vbs, casacore::Matrix< casacore::Double > &sumwt, const casacore::Bool &dopsf, casacore::Bool=false) |
More... | |
virtual void | DataToGrid (casacore::Array< casacore::Complex > &griddedData, VBStore &vbs, casacore::Matrix< casacore::Double > &sumwt, const casacore::Bool &dopsf, casacore::Bool=false) |
virtual void | GridToData (VBStore &vbs, const casacore::Array< casacore::Complex > &griddedData) |
More... | |
virtual void | ComputeResiduals (VBStore &vbs) |
virtual void GridToData(VBStore& vbs, casacore::Array<casacore::Complex>& griddedData); More... | |
virtual void | setMutex (async::Mutex *mu) |
virtual void | init (const casacore::Bool &doublePrecision) |
Genealogical baggage – required for the MultiThreadedVisibilityResampler – that everyone else has to carray around. More... | |
virtual void | GatherGrids (casacore::Array< casacore::DComplex > &griddedData, casacore::Matrix< casacore::Double > &sumwt) |
virtual void | GatherGrids (casacore::Array< casacore::Complex > &griddedData, casacore::Matrix< casacore::Double > &sumwt) |
virtual void | initializePutBuffers (const casacore::Array< casacore::DComplex > &griddedData, const casacore::Matrix< casacore::Double > &sumwt) |
virtual void | initializePutBuffers (const casacore::Array< casacore::Complex > &griddedData, const casacore::Matrix< casacore::Double > &sumwt) |
virtual void | initializeDataBuffers (VBStore &vbs) |
virtual void | releaseBuffers () |
Public Member Functions inherited from casa::VisibilityResamplerBase | |
VisibilityResamplerBase () | |
VisibilityResamplerBase (const VisibilityResamplerBase &other) | |
VisibilityResamplerBase(const CFStore& cfs): uvwScale_p(), offset_p(), chanMap_p(), polMap_p(), convFuncStore_p(), inc_p(), cfMap_p(), conjCFMap_p() {setConvFunc(cfs);};. More... | |
virtual | ~VisibilityResamplerBase () |
VisibilityResamplerBase & | operator= (const VisibilityResamplerBase &other) |
void | finalizeToSky (casacore::Array< casacore::DComplex > &griddedData, casacore::Matrix< casacore::Double > &sumwt) |
Aliases for more readable code at the FTMachine layer. More... | |
void | finalizeToSky (casacore::Array< casacore::Complex > &griddedData, casacore::Matrix< casacore::Double > &sumwt) |
void | initializeToSky (const casacore::Array< casacore::DComplex > &griddedData, const casacore::Matrix< casacore::Double > &sumwt) |
void | initializeToSky (const casacore::Array< casacore::Complex > &griddedData, const casacore::Matrix< casacore::Double > &sumwt) |
const casacore::Vector < casacore::Int > | getCFMap () |
const casacore::Vector < casacore::Int > | getConjCFMap () |
VBRow2CFMapType & | getVBRow2CFMap () |
VBRow2CFBMapType & | getVBRow2CFBMap () |
virtual casacore::Int | makeVBRow2CFMap (CFStore2 &cfs, ConvolutionFunction &cf, const VisBuffer &vb, const casacore::Quantity &dPA, const casacore::Vector< casacore::Int > &dataChan2ImChanMap, const casacore::Vector< casacore::Int > &dataPol2ImPolMap, const casacore::Vector< casacore::Double > &pointingOffset) |
Protected Member Functions | |
template<class T > | |
void | DataToGridImpl_p (casacore::Array< T > &griddedData, VBStore &vb, const casacore::Bool &dopsf, casacore::Matrix< casacore::Double > &sumwt, casacore::Bool useConjFreqCF=false) |
casacore::Vector<casacore::Double> uvwScale_p, offset_p, dphase_p; casacore::Vector<casacore::Int> chanMap_p, polMap_p; CFStore convFuncStore_p; casacore::Int inc0_p, inc1_p, inc2_p, inc3_p; More... | |
void | cacheAxisIncrements (casacore::Int &n0, casacore::Int &n1, casacore::Int &n2, casacore::Int &n3) |
void sgrid(casacore::Vector<casacore::Double>& pos, casacore::Vector<casacore::Int>& loc, casacore::Vector<casacore::Int>& off, casacore::Complex& phasor, const casacore::Int& irow, const casacore::Matrix<casacore::Double>& uvw, const casacore::Double& dphase, const casacore::Double& freq, const casacore::Vector<casacore::Double>& scale, const casacore::Vector<casacore::Double>& offset, const casacore::Vector<casacore::Float>& sampling); More... | |
casacore::Complex | getFrom4DArray (const casacore::Complex *__restrict__ store, const casacore::Int *__restrict__ iPos) __restrict__ |
The following two methods are called in the innermost loop. More... | |
template<class T > | |
void | addTo4DArray (T *__restrict__ store, const casacore::Int *__restrict__ iPos, casacore::Complex &nvalue, casacore::Double &wt) __restrict__ |
Protected Member Functions inherited from casa::VisibilityResamplerBase | |
void | sgrid (casacore::Int &ndim, casacore::Double *__restrict__ pos, casacore::Int *__restrict__ loc, casacore::Int *__restrict__ off, casacore::Complex &phasor, const casacore::Int &irow, const casacore::Double *__restrict__ uvw, const casacore::Double &dphase, const casacore::Double &freq, const casacore::Double *__restrict__ scale, const casacore::Double *__restrict__ offset, const casacore::Float *__restrict__ sampling) |
casacore::Bool | onGrid (const casacore::Int &nx, const casacore::Int &ny, const casacore::Vector< casacore::Int > &__restrict__ loc, const casacore::Vector< casacore::Int > &__restrict__ support) __restrict__ |
casacore::Bool | onGrid (const casacore::Int &nx, const casacore::Int &ny, const casacore::Int &loc0, const casacore::Int &loc1, const casacore::Int &support) __restrict__ |
void | cacheAxisIncrements (const casacore::Int &n0, const casacore::Int &n1, const casacore::Int &n2, const casacore::Int &n3) |
casacore::Array assignment operator in CASACore requires lhs.nelements() == 0 or lhs.nelements()=rhs.nelements() template <class t>=""> inline void SETVEC(casacore::Vector<T>& lhs, const casacore::Vector<T>& rhs) {lhs.resize(rhs.shape()); lhs = rhs;}; More... | |
void | cacheAxisIncrements (const casacore::Vector< casacore::Int > &n) |
void | cacheAxisIncrements (const casacore::Vector< casacore::Int > &n, casacore::Vector< casacore::Int > &inc) |
void | cacheAxisIncrements (const casacore::Int n[4], casacore::Int inc[4]) |
void | addTo4DArray (casacore::DComplex *__restrict__ &store, casacore::Int *__restrict__ &iPos, casacore::Complex &nvalue, casacore::Double &wt) __restrict__ |
Version that use internally cached inc_p template <class t>=""> More... | |
void | addTo4DArray (casacore::Complex *__restrict__ &store, casacore::Int *__restrict__ &iPos, casacore::Complex &nvalue, casacore::Double &wt) __restrict__ |
void | addTo4DArray (casacore::DComplex *__restrict__ &store, casacore::Int *__restrict__ &iPos, casacore::Int *__restrict__ inc, casacore::Complex &nvalue, casacore::Double &wt) __restrict__ |
Version where inc_p is supplied from outside. More... | |
void | addTo4DArray (casacore::Complex *__restrict__ &store, casacore::Int *__restrict__ &iPos, casacore::Int *__restrict__ inc, casacore::Complex &nvalue, casacore::Double &wt) __restrict__ |
casacore::Complex | getFrom4DArray (const casacore::Complex *__restrict__ &store, const casacore::Int *__restrict__ &iPos, const casacore::Vector< casacore::Int > &inc) |
restrict More... | |
casacore::Complex | getFrom4DArray (const casacore::Complex *__restrict__ &store, const casacore::Vector< casacore::Int > iPos, const casacore::Vector< casacore::Int > &inc) |
restrict More... | |
casacore::DComplex | getFrom4DArray (const casacore::DComplex *__restrict__ &store, const casacore::Int *__restrict__ &iPos, const casacore::Vector< casacore::Int > &inc) |
restrict More... | |
casacore::DComplex | getFrom4DArray (const casacore::DComplex *__restrict__ &store, const casacore::Vector< casacore::Int > iPos, const casacore::Vector< casacore::Int > &inc) |
restrict More... | |
casacore::Complex | getFrom4DArray (const casacore::Complex *__restrict__ &store, const casacore::Int *__restrict__ &iPos) |
The following two methods are called in the innermost loop. More... | |
casacore::DComplex | getFrom4DArray (const casacore::DComplex *__restrict__ &store, const casacore::Int *__restrict__ &iPos) |
restrict More... | |
Protected Attributes | |
async::Mutex * | myMutex_p |
-------------------------—Private parts----------------------------------—More... | |
Protected Attributes inherited from casa::VisibilityResamplerBase | |
casacore::Vector < casacore::Double > | uvwScale_p |
-------------------------—Private parts----------------------------------—More... | |
casacore::Vector < casacore::Double > | offset_p |
casacore::Vector < casacore::Double > | dphase_p |
casacore::Vector< casacore::Int > | chanMap_p |
casacore::Vector< casacore::Int > | polMap_p |
casacore::Matrix < casacore::Double > | spwChanFreq_p |
casacore::Matrix < casacore::Double > | spwChanConjFreq_p |
CFStore | convFuncStore_p |
casacore::Vector< casacore::Int > | inc_p |
casacore::Int inc0_p, inc1_p, inc2_p, inc3_p; More... | |
casacore::Int *__restrict__ | incPtr_p |
casacore::Vector< casacore::Int > | cfMap_p |
casacore::Vector< casacore::Int > | conjCFMap_p |
VBRow2CFMapType | vbRow2CFMap_p |
VBRow2CFBMapType | vbRow2CFBMap_p |
double | paTolerance_p |
Additional Inherited Members | |
Public Attributes inherited from casa::VisibilityResamplerBase | |
casacore::Double | runTimeG_p |
casacore::Double | runTimeDG_p |
casacore::Double | runTimeG1_p |
casacore::Double | runTimeG2_p |
casacore::Double | runTimeG3_p |
casacore::Double | runTimeG4_p |
casacore::Double | runTimeG5_p |
casacore::Double | runTimeG6_p |
casacore::Double | runTimeG7_p |
casacore::Timer | timer_p |
Definition at line 46 of file VisibilityResampler.h.
|
inline |
Definition at line 49 of file VisibilityResampler.h.
Referenced by clone().
|
inline |
VisibilityResampler(const CFStore& cfs): VisibilityResamplerBase(cfs) {};.
Definition at line 51 of file VisibilityResampler.h.
References copy().
|
inlinevirtual |
{setConvFunc(cfs);};
Definition at line 55 of file VisibilityResampler.h.
|
inlineprotected |
Definition at line 215 of file VisibilityResampler.h.
|
inlineprotected |
void sgrid(casacore::Vector<casacore::Double>& pos, casacore::Vector<casacore::Int>& loc, casacore::Vector<casacore::Int>& off, casacore::Complex& phasor, const casacore::Int& irow, const casacore::Matrix<casacore::Double>& uvw, const casacore::Double& dphase, const casacore::Double& freq, const casacore::Vector<casacore::Double>& scale, const casacore::Vector<casacore::Double>& offset, const casacore::Vector<casacore::Float>& sampling);
Definition at line 205 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler, and casa::ProtoVR.
Definition at line 62 of file VisibilityResampler.h.
References VisibilityResampler().
|
virtual |
virtual void GridToData(VBStore& vbs, casacore::Array<casacore::Complex>& griddedData);
Implements casa::VisibilityResamplerBase.
|
inlinevirtual |
VisibilityResampler& operator=(const VisibilityResampler& other);.
Reimplemented from casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler, and casa::ProtoVR.
Definition at line 59 of file VisibilityResampler.h.
References casa::VisibilityResamplerBase::copy().
Referenced by casa::ProtoVR::copy(), casa::AWVisResampler::copy(), and VisibilityResampler().
|
inlinevirtual |
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::ProtoVR, and casa::AWVisResampler.
Definition at line 108 of file VisibilityResampler.h.
References DataToGridImpl_p().
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::ProtoVR, and casa::AWVisResampler.
Definition at line 113 of file VisibilityResampler.h.
References DataToGridImpl_p().
|
protected |
casacore::Vector<casacore::Double> uvwScale_p, offset_p, dphase_p; casacore::Vector<casacore::Int> chanMap_p, polMap_p; CFStore convFuncStore_p; casacore::Int inc0_p, inc1_p, inc2_p, inc3_p;
Re-sample the griddedData on the VisBuffer (a.k.a de-gridding).
Referenced by DataToGrid().
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 136 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 137 of file VisibilityResampler.h.
|
inlineprotected |
The following two methods are called in the innermost loop.
Definition at line 210 of file VisibilityResampler.h.
|
inlinevirtual |
Definition at line 65 of file VisibilityResampler.h.
References casacore::Vector< T >::assign(), casa::VisibilityResamplerBase::dphase_p, casa::VisibilityResamplerBase::offset_p, and casa::VisibilityResamplerBase::uvwScale_p.
|
virtual |
Re-sample VisBuffer to a regular grid (griddedData) (a.k.a. de-gridding)
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::ProtoVR, and casa::AWVisResampler.
|
inlinevirtual |
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 135 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 142 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 138 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 140 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 145 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Reimplemented in casa::AWVisResampler, and casa::ProtoVR.
Definition at line 96 of file VisibilityResampler.h.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 92 of file VisibilityResampler.h.
References casa::VisibilityResamplerBase::convFuncStore_p.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 86 of file VisibilityResampler.h.
References casacore::Matrix< T >::assign(), casa::VisibilityResamplerBase::spwChanConjFreq_p, and casa::VisibilityResamplerBase::spwChanFreq_p.
|
inlinevirtual |
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 casacore::Vector< T >::reference().
|
inlinevirtual |
Definition at line 127 of file VisibilityResampler.h.
References atm::constants::mu, and myMutex_p.
|
inlinevirtual |
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, casacore::Vector< T >::reference(), and casa::VisibilityResamplerBase::uvwScale_p.
|
inlinevirtual |
Implements casa::VisibilityResamplerBase.
Definition at line 98 of file VisibilityResampler.h.
References casa::VisibilityResamplerBase::paTolerance_p.
|
protected |
Definition at line 145 of file VisibilityResampler.h.
Referenced by setMutex().