casa::refim::VisibilityResamplerBase Class Reference

#include <VisibilityResamplerBase.h>

Inheritance diagram for casa::refim::VisibilityResamplerBase:
casa::refim::VisibilityResampler casa::refim::AWVisResampler

List of all members.

Public Member Functions

 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);};.
virtual ~VisibilityResamplerBase ()
VisibilityResamplerBaseoperator= (const VisibilityResamplerBase &other)
virtual VisibilityResamplerBaseclone ()=0
virtual void copy (const VisibilityResamplerBase &other)
virtual void setParams (const Vector< Double > &uvwScale, const Vector< Double > &offset, const Vector< Double > &dphase)=0
virtual void setMaps (const Vector< Int > &chanMap, const Vector< Int > &polMap)=0
virtual void setCFMaps (const Vector< Int > &cfMap, const Vector< Int > &conjCFMap)=0
virtual void setFreqMaps (const Matrix< Double > &spwChanFreqs, const Matrix< Double > &spwnChanConjFreqs)=0
virtual void setConvFunc (const CFStore &cfs)=0
virtual void DataToGrid (Array< DComplex > &griddedData, VBStore &vbs, Matrix< Double > &sumwt, const Bool &dopsf, Bool useConjFreqCF=False)=0
 ------------------------------------------------------------------------------
virtual void DataToGrid (Array< Complex > &griddedData, VBStore &vbs, Matrix< Double > &sumwt, const Bool &dopsf, Bool useConjFreqCF=False)=0
virtual void GridToData (VBStore &vbs, const Array< Complex > &griddedData)=0
 ------------------------------------------------------------------------------
virtual void ComputeResiduals (VBStore &vbs)=0
 virtual void GridToData(VBStore& vbs, Array<Complex>& griddedData);
virtual void init (const Bool &doublePrecision)=0
 Forward looking genealogical baggage -- required for the MultiThreadedVisibilityResampler.
virtual void GatherGrids (Array< DComplex > &griddedData, Matrix< Double > &sumwt)=0
virtual void GatherGrids (Array< Complex > &griddedData, Matrix< Double > &sumwt)=0
virtual void initializePutBuffers (const Array< DComplex > &griddedData, const Matrix< Double > &sumwt)=0
virtual void initializePutBuffers (const Array< Complex > &griddedData, const Matrix< Double > &sumwt)=0
virtual void initializeDataBuffers (VBStore &vbs)=0
void finalizeToSky (Array< DComplex > &griddedData, Matrix< Double > &sumwt)
 Aliases for more readable code at the FTMachine layer.
void finalizeToSky (Array< Complex > &griddedData, Matrix< Double > &sumwt)
void initializeToSky (const Array< DComplex > &griddedData, const Matrix< Double > &sumwt)
void initializeToSky (const Array< Complex > &griddedData, const Matrix< Double > &sumwt)
const Vector< Int > getCFMap ()
const Vector< Int > getConjCFMap ()
virtual void releaseBuffers ()=0
VBRow2CFMapTypegetVBRow2CFMap ()
VBRow2CFBMapTypegetVBRow2CFBMap ()
virtual Int makeVBRow2CFMap (CFStore2 &cfs, ConvolutionFunction &cf, const VisBuffer2 &vb, const Quantity &dPA, const Vector< Int > &dataChan2ImChanMap, const Vector< Int > &dataPol2ImPolMap, const Vector< Double > &pointingOffset)

Public Attributes

Double runTimeG_p
Double runTimeDG_p
Double runTimeG1_p
Double runTimeG2_p
Double runTimeG3_p
Double runTimeG4_p
Double runTimeG5_p
Double runTimeG6_p
Double runTimeG7_p
Timer timer_p

Protected Member Functions

void sgrid (Int &ndim, Double *__restrict__ pos, Int *__restrict__ loc, Int *__restrict__ off, Complex &phasor, const Int &irow, const Double *__restrict__ uvw, const Double &dphase, const Double &freq, const Double *__restrict__ scale, const Double *__restrict__ offset, const Float *__restrict__ sampling)
Bool onGrid (const Int &nx, const Int &ny, const Vector< Int > &__restrict__ loc, const Vector< Int > &__restrict__ support) __restrict__
Bool onGrid (const Int &nx, const Int &ny, const Int &loc0, const Int &loc1, const Int &support) __restrict__
void cacheAxisIncrements (const Int &n0, const Int &n1, const Int &n2, const Int &n3)
 Array assignment operator in CASACore requires lhs.nelements() == 0 or lhs.nelements()=rhs.nelements() template <class t>=""> inline void SETVEC(Vector<T>& lhs, const Vector<T>& rhs) {lhs.resize(rhs.shape()); lhs = rhs;};.
void cacheAxisIncrements (const Vector< Int > &n)
void cacheAxisIncrements (const Vector< Int > &n, Vector< Int > &inc)
void cacheAxisIncrements (const Int n[4], Int inc[4])
void addTo4DArray (DComplex *__restrict__ &store, Int *__restrict__ &iPos, Complex &nvalue, Double &wt) __restrict__
 Version that use internally cached inc_p template <class t>="">.
void addTo4DArray (Complex *__restrict__ &store, Int *__restrict__ &iPos, Complex &nvalue, Double &wt) __restrict__
void addTo4DArray (DComplex *__restrict__ &store, Int *__restrict__ &iPos, Int *__restrict__ inc, Complex &nvalue, Double &wt) __restrict__
 Version where inc_p is supplied from outside.
void addTo4DArray (Complex *__restrict__ &store, Int *__restrict__ &iPos, Int *__restrict__ inc, Complex &nvalue, Double &wt) __restrict__
Complex getFrom4DArray (const Complex *__restrict__ &store, const Int *__restrict__ &iPos, const Vector< Int > &inc)
 __restrict__
Complex getFrom4DArray (const Complex *__restrict__ &store, const Vector< Int > iPos, const Vector< Int > &inc)
 __restrict__
DComplex getFrom4DArray (const DComplex *__restrict__ &store, const Int *__restrict__ &iPos, const Vector< Int > &inc)
 __restrict__
DComplex getFrom4DArray (const DComplex *__restrict__ &store, const Vector< Int > iPos, const Vector< Int > &inc)
 __restrict__
Complex getFrom4DArray (const Complex *__restrict__ &store, const Int *__restrict__ &iPos)
 The following two methods are called in the innermost loop.
DComplex getFrom4DArray (const DComplex *__restrict__ &store, const Int *__restrict__ &iPos)
 __restrict__

Protected Attributes

Vector< Double > uvwScale_p
 ------------------------------------------------------------------------------ ----------------------------Private parts------------------------------------- ------------------------------------------------------------------------------
Vector< Double > offset_p
Vector< Double > dphase_p
Vector< Int > chanMap_p
Vector< Int > polMap_p
Matrix< Double > spwChanFreq_p
Matrix< Double > spwChanConjFreq_p
CFStore convFuncStore_p
Vector< Int > inc_p
 Int inc0_p, inc1_p, inc2_p, inc3_p;.
Int *__restrict__ incPtr_p
Vector< Int > cfMap_p
Vector< Int > conjCFMap_p
VBRow2CFMapType vbRow2CFMap_p
VBRow2CFBMapType vbRow2CFBMap_p

Detailed Description

Definition at line 50 of file VisibilityResamplerBase.h.


Constructor & Destructor Documentation

casa::refim::VisibilityResamplerBase::VisibilityResamplerBase (  )  [inline]

Definition at line 53 of file VisibilityResamplerBase.h.

casa::refim::VisibilityResamplerBase::VisibilityResamplerBase ( const VisibilityResamplerBase other  )  [inline]

VisibilityResamplerBase(const CFStore& cfs): uvwScale_p(), offset_p(), chanMap_p(), polMap_p(), convFuncStore_p(), inc_p(), cfMap_p(), conjCFMap_p() {setConvFunc(cfs);};.

Definition at line 65 of file VisibilityResamplerBase.h.

References copy().

virtual casa::refim::VisibilityResamplerBase::~VisibilityResamplerBase (  )  [inline, virtual]

Definition at line 70 of file VisibilityResamplerBase.h.


Member Function Documentation

void casa::refim::VisibilityResamplerBase::addTo4DArray ( Complex *__restrict__ &  store,
Int *__restrict__ &  iPos,
Int *__restrict__  inc,
Complex &  nvalue,
Double &  wt 
) [inline, protected]

Definition at line 242 of file VisibilityResamplerBase.h.

void casa::refim::VisibilityResamplerBase::addTo4DArray ( DComplex *__restrict__ &  store,
Int *__restrict__ &  iPos,
Int *__restrict__  inc,
Complex &  nvalue,
Double &  wt 
) [inline, protected]

Version where inc_p is supplied from outside.

Definition at line 238 of file VisibilityResamplerBase.h.

void casa::refim::VisibilityResamplerBase::addTo4DArray ( Complex *__restrict__ &  store,
Int *__restrict__ &  iPos,
Complex &  nvalue,
Double &  wt 
) [inline, protected]

Definition at line 232 of file VisibilityResamplerBase.h.

References addTo4DArray(), and incPtr_p.

Referenced by addTo4DArray().

void casa::refim::VisibilityResamplerBase::addTo4DArray ( DComplex *__restrict__ &  store,
Int *__restrict__ &  iPos,
Complex &  nvalue,
Double &  wt 
) [inline, protected]

Version that use internally cached inc_p template <class t>="">.

Definition at line 228 of file VisibilityResamplerBase.h.

References addTo4DArray(), and incPtr_p.

Referenced by addTo4DArray().

void casa::refim::VisibilityResamplerBase::cacheAxisIncrements ( const Int  n[4],
Int  inc[4] 
) [inline, protected]

Definition at line 223 of file VisibilityResamplerBase.h.

void casa::refim::VisibilityResamplerBase::cacheAxisIncrements ( const Vector< Int > &  n,
Vector< Int > &  inc 
) [inline, protected]

Definition at line 220 of file VisibilityResamplerBase.h.

void casa::refim::VisibilityResamplerBase::cacheAxisIncrements ( const Vector< Int > &  n  )  [inline, protected]

Definition at line 217 of file VisibilityResamplerBase.h.

References cacheAxisIncrements().

Referenced by cacheAxisIncrements().

void casa::refim::VisibilityResamplerBase::cacheAxisIncrements ( const Int &  n0,
const Int &  n1,
const Int &  n2,
const Int &  n3 
) [inline, protected]

Array assignment operator in CASACore requires lhs.nelements() == 0 or lhs.nelements()=rhs.nelements() template <class t>=""> inline void SETVEC(Vector<T>& lhs, const Vector<T>& rhs) {lhs.resize(rhs.shape()); lhs = rhs;};.

=============================================================================== CASACORE-LEVEL MATERIAL =============================================================================== Internal methods to address a 4D array. These should ulimately moved to a Array4D class in CASACore

This is called less frequently. Currently once per VisBuffer

inc0_p=1, inc1_p=inc0_p*n0, inc2_p=inc1_p*n1, inc3_p=inc2_p*n2;(void)n3;

Definition at line 209 of file VisibilityResamplerBase.h.

References inc_p, and incPtr_p.

virtual VisibilityResamplerBase* casa::refim::VisibilityResamplerBase::clone (  )  [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::ComputeResiduals ( VBStore vbs  )  [pure virtual]

virtual void GridToData(VBStore& vbs, Array<Complex>& griddedData);

Implemented in casa::refim::VisibilityResampler.

virtual void casa::refim::VisibilityResamplerBase::copy ( const VisibilityResamplerBase other  )  [virtual]

Reimplemented in casa::refim::AWVisResampler.

Referenced by VisibilityResamplerBase().

virtual void casa::refim::VisibilityResamplerBase::DataToGrid ( Array< Complex > &  griddedData,
VBStore vbs,
Matrix< Double > &  sumwt,
const Bool &  dopsf,
Bool  useConjFreqCF = False 
) [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::DataToGrid ( Array< DComplex > &  griddedData,
VBStore vbs,
Matrix< Double > &  sumwt,
const Bool &  dopsf,
Bool  useConjFreqCF = False 
) [pure 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.

Implemented in casa::refim::AWVisResampler, and casa::refim::VisibilityResampler.

void casa::refim::VisibilityResamplerBase::finalizeToSky ( Array< Complex > &  griddedData,
Matrix< Double > &  sumwt 
) [inline]

Definition at line 127 of file VisibilityResamplerBase.h.

References GatherGrids().

void casa::refim::VisibilityResamplerBase::finalizeToSky ( Array< DComplex > &  griddedData,
Matrix< Double > &  sumwt 
) [inline]

Aliases for more readable code at the FTMachine layer.

Definition at line 125 of file VisibilityResamplerBase.h.

References GatherGrids().

virtual void casa::refim::VisibilityResamplerBase::GatherGrids ( Array< Complex > &  griddedData,
Matrix< Double > &  sumwt 
) [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::GatherGrids ( Array< DComplex > &  griddedData,
Matrix< Double > &  sumwt 
) [pure virtual]

Implemented in casa::refim::VisibilityResampler.

Referenced by finalizeToSky().

const Vector<Int> casa::refim::VisibilityResamplerBase::getCFMap (  )  [inline]

Definition at line 133 of file VisibilityResamplerBase.h.

References cfMap_p.

const Vector<Int> casa::refim::VisibilityResamplerBase::getConjCFMap (  )  [inline]

Definition at line 134 of file VisibilityResamplerBase.h.

References conjCFMap_p.

DComplex casa::refim::VisibilityResamplerBase::getFrom4DArray ( const DComplex *__restrict__ &  store,
const Int *__restrict__ &  iPos 
) [inline, protected]

__restrict__

Definition at line 275 of file VisibilityResamplerBase.h.

References getFrom4DArray(), and inc_p.

Referenced by getFrom4DArray().

Complex casa::refim::VisibilityResamplerBase::getFrom4DArray ( const Complex *__restrict__ &  store,
const Int *__restrict__ &  iPos 
) [inline, protected]

The following two methods are called in the innermost loop.

__restrict__

Definition at line 271 of file VisibilityResamplerBase.h.

References getFrom4DArray(), and inc_p.

Referenced by getFrom4DArray().

DComplex casa::refim::VisibilityResamplerBase::getFrom4DArray ( const DComplex *__restrict__ &  store,
const Vector< Int >  iPos,
const Vector< Int > &  inc 
) [inline, protected]

__restrict__

Definition at line 264 of file VisibilityResamplerBase.h.

DComplex casa::refim::VisibilityResamplerBase::getFrom4DArray ( const DComplex *__restrict__ &  store,
const Int *__restrict__ &  iPos,
const Vector< Int > &  inc 
) [inline, protected]

__restrict__

Definition at line 258 of file VisibilityResamplerBase.h.

Complex casa::refim::VisibilityResamplerBase::getFrom4DArray ( const Complex *__restrict__ &  store,
const Vector< Int >  iPos,
const Vector< Int > &  inc 
) [inline, protected]

__restrict__

Definition at line 253 of file VisibilityResamplerBase.h.

Complex casa::refim::VisibilityResamplerBase::getFrom4DArray ( const Complex *__restrict__ &  store,
const Int *__restrict__ &  iPos,
const Vector< Int > &  inc 
) [inline, protected]

__restrict__

Definition at line 247 of file VisibilityResamplerBase.h.

VBRow2CFBMapType& casa::refim::VisibilityResamplerBase::getVBRow2CFBMap (  )  [inline]

Definition at line 139 of file VisibilityResamplerBase.h.

References vbRow2CFBMap_p.

VBRow2CFMapType& casa::refim::VisibilityResamplerBase::getVBRow2CFMap (  )  [inline]

Definition at line 138 of file VisibilityResamplerBase.h.

References vbRow2CFMap_p.

virtual void casa::refim::VisibilityResamplerBase::GridToData ( VBStore vbs,
const Array< Complex > &  griddedData 
) [pure virtual]

------------------------------------------------------------------------------

Re-sample VisBuffer to a regular grid (griddedData) (a.k.a. de-gridding)

Implemented in casa::refim::AWVisResampler, and casa::refim::VisibilityResampler.

virtual void casa::refim::VisibilityResamplerBase::init ( const Bool &  doublePrecision  )  [pure virtual]

Forward looking genealogical baggage -- required for the MultiThreadedVisibilityResampler.

Implemented in casa::refim::VisibilityResampler.

virtual void casa::refim::VisibilityResamplerBase::initializeDataBuffers ( VBStore vbs  )  [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::initializePutBuffers ( const Array< Complex > &  griddedData,
const Matrix< Double > &  sumwt 
) [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::initializePutBuffers ( const Array< DComplex > &  griddedData,
const Matrix< Double > &  sumwt 
) [pure virtual]

Implemented in casa::refim::VisibilityResampler.

Referenced by initializeToSky().

void casa::refim::VisibilityResamplerBase::initializeToSky ( const Array< Complex > &  griddedData,
const Matrix< Double > &  sumwt 
) [inline]

Definition at line 131 of file VisibilityResamplerBase.h.

References initializePutBuffers().

void casa::refim::VisibilityResamplerBase::initializeToSky ( const Array< DComplex > &  griddedData,
const Matrix< Double > &  sumwt 
) [inline]

Definition at line 129 of file VisibilityResamplerBase.h.

References initializePutBuffers().

virtual Int casa::refim::VisibilityResamplerBase::makeVBRow2CFMap ( CFStore2 cfs,
ConvolutionFunction cf,
const VisBuffer2 vb,
const Quantity &  dPA,
const Vector< Int > &  dataChan2ImChanMap,
const Vector< Int > &  dataPol2ImPolMap,
const Vector< Double > &  pointingOffset 
) [virtual]
Bool casa::refim::VisibilityResamplerBase::onGrid ( const Int &  nx,
const Int &  ny,
const Int &  loc0,
const Int &  loc1,
const Int &  support 
) [inline, protected]

Definition at line 186 of file VisibilityResamplerBase.h.

Bool casa::refim::VisibilityResamplerBase::onGrid ( const Int &  nx,
const Int &  ny,
const Vector< Int > &__restrict__  loc,
const Vector< Int > &__restrict__  support 
) [inline, protected]

Definition at line 179 of file VisibilityResamplerBase.h.

VisibilityResamplerBase& casa::refim::VisibilityResamplerBase::operator= ( const VisibilityResamplerBase other  ) 

Reimplemented in casa::refim::AWVisResampler.

virtual void casa::refim::VisibilityResamplerBase::releaseBuffers (  )  [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::setCFMaps ( const Vector< Int > &  cfMap,
const Vector< Int > &  conjCFMap 
) [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::setConvFunc ( const CFStore cfs  )  [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::setFreqMaps ( const Matrix< Double > &  spwChanFreqs,
const Matrix< Double > &  spwnChanConjFreqs 
) [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::setMaps ( const Vector< Int > &  chanMap,
const Vector< Int > &  polMap 
) [pure virtual]
virtual void casa::refim::VisibilityResamplerBase::setParams ( const Vector< Double > &  uvwScale,
const Vector< Double > &  offset,
const Vector< Double > &  dphase 
) [pure virtual]
void casa::refim::VisibilityResamplerBase::sgrid ( Int &  ndim,
Double *__restrict__  pos,
Int *__restrict__  loc,
Int *__restrict__  off,
Complex &  phasor,
const Int &  irow,
const Double *__restrict__  uvw,
const Double &  dphase,
const Double &  freq,
const Double *__restrict__  scale,
const Double *__restrict__  offset,
const Float *__restrict__  sampling 
) [protected]

Member Data Documentation

Int inc0_p, inc1_p, inc2_p, inc3_p;.

Definition at line 161 of file VisibilityResamplerBase.h.

Referenced by cacheAxisIncrements(), and getFrom4DArray().

Int* __restrict__ casa::refim::VisibilityResamplerBase::incPtr_p [protected]

Definition at line 162 of file VisibilityResamplerBase.h.

Referenced by addTo4DArray(), and cacheAxisIncrements().

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 147 of file VisibilityResamplerBase.h.

Definition at line 148 of file VisibilityResamplerBase.h.

------------------------------------------------------------------------------ ----------------------------Private parts------------------------------------- ------------------------------------------------------------------------------

private:

Definition at line 156 of file VisibilityResamplerBase.h.

Referenced by casa::refim::VisibilityResampler::getParams(), and casa::refim::VisibilityResampler::setParams().

Definition at line 165 of file VisibilityResamplerBase.h.

Referenced by getVBRow2CFBMap().

Definition at line 164 of file VisibilityResamplerBase.h.

Referenced by getVBRow2CFMap().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1