casa::refim::MosaicFT Class Reference

#include <MosaicFT.h>

Inheritance diagram for casa::refim::MosaicFT:
casa::refim::FTMachine casa::refim::MosaicFTNew

List of all members.

Public Member Functions

 MosaicFT (SkyJones *sj, MPosition mloc, String stokes, Long cachesize, Int tilesize=16, Bool usezero=True, Bool useDoublePrec=False)
 Constructor: cachesize is the size of the cache in words (e.g.
 MosaicFT (const RecordInterface &stateRec)
 Construct from a Record containing the MosaicFT state.
 MosaicFT (const MosaicFT &other)
 Copy constructor.
MosaicFToperator= (const MosaicFT &other)
 Assignment operator.
 ~MosaicFT ()
void initializeToVis (ImageInterface< Complex > &image, const vi::VisBuffer2 &vb)
 Initialize transform to Visibility plane using the image as a template.
void finalizeToVis ()
 Finalize transform to Visibility plane: flushes the image cache and shows statistics if it is being used.
void initializeToSky (ImageInterface< Complex > &image, Matrix< Float > &weight, const vi::VisBuffer2 &vb)
 Initialize transform to Sky plane: initializes the image.
void get (vi::VisBuffer2 &vb, Int row=-1)
 Get actual coherence from grid by degridding.
void put (const vi::VisBuffer2 &vb, Int row=-1, Bool dopsf=False, FTMachine::Type type=FTMachine::OBSERVED)
 Put coherence to grid by gridding.
void makeImage (FTMachine::Type type, vi::VisibilityIterator2 &vs, ImageInterface< Complex > &image, Matrix< Float > &weight)
 Make the entire image.
ImageInterface< Complex > & getImage (Matrix< Float > &, Bool normalize=True)
 Get the final image: do the Fourier transform and grid-correct, then optionally normalize by the summed weights.
virtual void normalizeImage (Lattice< Complex > &, const Matrix< Double > &, Lattice< Float > &, Bool)
void getWeightImage (ImageInterface< Float > &, Matrix< Float > &)
 Get the final weights image.
virtual void getFluxImage (ImageInterface< Float > &image)
 Get a flux (divide by this to get a flux density correct image) image if there is one.
Bool toRecord (String &error, RecordInterface &outRec, Bool withImage=False, const String diskimage="")
 Save and restore the MosaicFT to and from a record.
Bool fromRecord (String &error, const RecordInterface &inRec)
Bool isFourier ()
 Can this FTMachine be represented by Fourier convolutions?
virtual String name () const
 Return name of this machine.
virtual Bool useWeightImage ()
 All FTMachines that fill weightimage, need to set this.
void setConvFunc (CountedPtr< SimplePBConvFunc > &pbconvFunc)
 Copy convolution function etc to another FT machine necessary if ft and ift are distinct but can share convfunctions.
CountedPtr< SimplePBConvFunc > & getConvFunc ()
CountedPtr< TempImage< Float > > & getConvWeightImage ()
virtual void reset ()
 reset weight image
virtual void setMiscInfo (const Int qualifier)
 set the order of the Taylor term for MFS this is to tell A-Projection to qualify the accumulated avgPB for each Taylor term in the CFCache.
virtual void ComputeResiduals (vi::VisBuffer2 &, Bool)
 Make the VB and VBStore interefaces for the interim re-factoring work.

Public Attributes

Finalize transform to Sky plane: flushes the image cache and shows statistics if it is being used. DOES NOT DO THE FINAL TRANSFORM! */ void finalizeToSky()

Protected Member Functions

Int nint (Double val)
void findConvFunction (const ImageInterface< Complex > &image, const vi::VisBuffer2 &vb)
 Find the convolution function.
void girarUVW (Matrix< Double > &uvw, Vector< Double > &dphase, const vi::VisBuffer2 &vb)
void addBeamCoverage (ImageInterface< Complex > &image)
void prepGridForDegrid ()
Array< Complex > * getDataPointer (const IPosition &, Bool)
 Get the appropriate data pointer.
void ok ()
void init ()
Bool recordOnGrid (const vi::VisBuffer2 &vb, Int rownr) const
 Is this record on Grid? check both ends.
Int getIndex (const ROMSPointingColumns &mspc, const Double &time, const Double &interval)
Bool getXYPos (const vi::VisBuffer2 &vb, Int row)

Protected Attributes

SkyJonessj_p
 Vector<SkyJones *> sj_p;.
LatticeCache< Complex > * imageCache
 Image cache.
Long cachesize
 Sizes.
Int tilesize
ConvolveGridder< Double,
Complex > * 
gridder
 Gridder.
Bool isTiled
 Is this tiled?
CountedPtr< Lattice< Complex > > arrayLattice
 Array lattice.
CountedPtr< Lattice< Complex > > lattice
 Lattice.
CountedPtr< Lattice< Complex > > weightLattice
Float maxAbsData
IPosition centerLoc
 Useful IPositions.
IPosition offsetLoc
Vector< Double > uvScale
 Image Scaling and offset.
Vector< Double > uvOffset
Array< Complex > griddedWeight
 Array for non-tiled gridding.
Array< DComplex > griddedWeight2
MSPointingColumns * mspc
 Pointing columns.
MSAntennaColumns * msac
 Antenna columns.
DirectionCoordinate directionCoord
MDirection::Convert * pointingToImage
Vector< Double > xyPos
MDirection worldPosMeas
Int priorCacheSize
Bool usezero_p
 Grid/degrid zero spacing points?
Array< Complex > convFunc
Array< Complex > weightConvFunc_p
Int convSampling
Int convSize
Int convSupport
Vector< Int > convSupportPlanes_p
Vector< Int > convSizePlanes_p
Vector< Int > convRowMap_p
Vector< Int > convChanMap_p
Vector< Int > convPolMap_p
Int wConvSize
Int lastIndex_p
CountedPtr< TempImage< Float > > skyCoverage_p
TempImage< Complex > * convWeightImage_p
CountedPtr< SimplePBConvFuncpbConvFunc_p
CountedPtr< UVWMachine > phaseShifter_p
String machineName_p
 Later this.
Bool doneWeightImage_p
String stokes_p

Detailed Description

Definition at line 133 of file MosaicFT.h.


Constructor & Destructor Documentation

casa::refim::MosaicFT::MosaicFT ( SkyJones sj,
MPosition  mloc,
String  stokes,
Long  cachesize,
Int  tilesize = 16,
Bool  usezero = True,
Bool  useDoublePrec = False 
)

Constructor: cachesize is the size of the cache in words (e.g.

a few million is a good number), tilesize is the size of the tile used in gridding (cannot be less than 12, 16 works in most cases).

casa::refim::MosaicFT::MosaicFT ( const RecordInterface &  stateRec  ) 

Construct from a Record containing the MosaicFT state.

casa::refim::MosaicFT::MosaicFT ( const MosaicFT other  ) 

Copy constructor.

casa::refim::MosaicFT::~MosaicFT (  ) 

Member Function Documentation

void casa::refim::MosaicFT::addBeamCoverage ( ImageInterface< Complex > &  image  )  [protected]
virtual void casa::refim::MosaicFT::ComputeResiduals ( vi::VisBuffer2 vb,
Bool  useCorrected 
) [inline, virtual]

Make the VB and VBStore interefaces for the interim re-factoring work.

Finally removed the VB interface.

Implements casa::refim::FTMachine.

Definition at line 232 of file MosaicFT.h.

void casa::refim::MosaicFT::finalizeToVis (  )  [virtual]

Finalize transform to Visibility plane: flushes the image cache and shows statistics if it is being used.

Implements casa::refim::FTMachine.

void casa::refim::MosaicFT::findConvFunction ( const ImageInterface< Complex > &  image,
const vi::VisBuffer2 vb 
) [protected, virtual]

Find the convolution function.

Reimplemented from casa::refim::FTMachine.

Bool casa::refim::MosaicFT::fromRecord ( String &  error,
const RecordInterface &  inRec 
) [virtual]

Reimplemented from casa::refim::FTMachine.

void casa::refim::MosaicFT::get ( vi::VisBuffer2 vb,
Int  row = -1 
) [virtual]

Get actual coherence from grid by degridding.

Implements casa::refim::FTMachine.

CountedPtr<SimplePBConvFunc>& casa::refim::MosaicFT::getConvFunc (  ) 
CountedPtr<TempImage<Float> >& casa::refim::MosaicFT::getConvWeightImage (  ) 
Array<Complex>* casa::refim::MosaicFT::getDataPointer ( const IPosition &  ,
Bool   
) [protected]

Get the appropriate data pointer.

virtual void casa::refim::MosaicFT::getFluxImage ( ImageInterface< Float > &  image  )  [virtual]

Get a flux (divide by this to get a flux density correct image) image if there is one.

Reimplemented from casa::refim::FTMachine.

ImageInterface<Complex>& casa::refim::MosaicFT::getImage ( Matrix< Float > &  ,
Bool  normalize = True 
) [virtual]

Get the final image: do the Fourier transform and grid-correct, then optionally normalize by the summed weights.

Implements casa::refim::FTMachine.

Reimplemented in casa::refim::MosaicFTNew.

Int casa::refim::MosaicFT::getIndex ( const ROMSPointingColumns &  mspc,
const Double &  time,
const Double &  interval 
) [protected]
void casa::refim::MosaicFT::getWeightImage ( ImageInterface< Float > &  ,
Matrix< Float > &   
) [virtual]

Get the final weights image.

Implements casa::refim::FTMachine.

Reimplemented in casa::refim::MosaicFTNew.

Bool casa::refim::MosaicFT::getXYPos ( const vi::VisBuffer2 vb,
Int  row 
) [protected]
void casa::refim::MosaicFT::girarUVW ( Matrix< Double > &  uvw,
Vector< Double > &  dphase,
const vi::VisBuffer2 vb 
) [protected]
void casa::refim::MosaicFT::init (  )  [protected]
void casa::refim::MosaicFT::initializeToSky ( ImageInterface< Complex > &  image,
Matrix< Float > &  weight,
const vi::VisBuffer2 vb 
) [virtual]

Initialize transform to Sky plane: initializes the image.

Implements casa::refim::FTMachine.

void casa::refim::MosaicFT::initializeToVis ( ImageInterface< Complex > &  image,
const vi::VisBuffer2 vb 
) [virtual]

Initialize transform to Visibility plane using the image as a template.

The image is loaded and Fourier transformed.

Implements casa::refim::FTMachine.

Bool casa::refim::MosaicFT::isFourier (  )  [inline, virtual]

Can this FTMachine be represented by Fourier convolutions?

Reimplemented from casa::refim::FTMachine.

Definition at line 213 of file MosaicFT.h.

References casacore::True.

void casa::refim::MosaicFT::makeImage ( FTMachine::Type  type,
vi::VisibilityIterator2 vs,
ImageInterface< Complex > &  image,
Matrix< Float > &  weight 
) [virtual]

Make the entire image.

Reimplemented from casa::refim::FTMachine.

virtual String casa::refim::MosaicFT::name (  )  const [virtual]

Return name of this machine.

Implements casa::refim::FTMachine.

Reimplemented in casa::refim::MosaicFTNew.

Int casa::refim::MosaicFT::nint ( Double  val  )  [inline, protected]

Definition at line 236 of file MosaicFT.h.

References casacore::floor().

virtual void casa::refim::MosaicFT::normalizeImage ( Lattice< Complex > &  ,
const Matrix< Double > &  ,
Lattice< Float > &  ,
Bool   
) [inline, virtual]

Reimplemented from casa::refim::FTMachine.

Definition at line 193 of file MosaicFT.h.

void casa::refim::MosaicFT::ok (  )  [protected, virtual]

Reimplemented from casa::refim::FTMachine.

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

Assignment operator.

Reimplemented from casa::refim::FTMachine.

void casa::refim::MosaicFT::prepGridForDegrid (  )  [protected]
void casa::refim::MosaicFT::put ( const vi::VisBuffer2 vb,
Int  row = -1,
Bool  dopsf = False,
FTMachine::Type  type = FTMachine::OBSERVED 
) [virtual]

Put coherence to grid by gridding.

Implements casa::refim::FTMachine.

Bool casa::refim::MosaicFT::recordOnGrid ( const vi::VisBuffer2 vb,
Int  rownr 
) const [protected]

Is this record on Grid? check both ends.

This assumes that the ends bracket the middle

virtual void casa::refim::MosaicFT::reset (  )  [virtual]

reset weight image

Reimplemented from casa::refim::FTMachine.

void casa::refim::MosaicFT::setConvFunc ( CountedPtr< SimplePBConvFunc > &  pbconvFunc  ) 

Copy convolution function etc to another FT machine necessary if ft and ift are distinct but can share convfunctions.

virtual void casa::refim::MosaicFT::setMiscInfo ( const Int  qualifier  )  [inline, virtual]

set the order of the Taylor term for MFS this is to tell A-Projection to qualify the accumulated avgPB for each Taylor term in the CFCache.

Implements casa::refim::FTMachine.

Definition at line 231 of file MosaicFT.h.

Bool casa::refim::MosaicFT::toRecord ( String &  error,
RecordInterface &  outRec,
Bool  withImage = False,
const String  diskimage = "" 
) [virtual]

Save and restore the MosaicFT to and from a record.

Reimplemented from casa::refim::FTMachine.

virtual Bool casa::refim::MosaicFT::useWeightImage (  )  [inline, virtual]

All FTMachines that fill weightimage, need to set this.

TODO : Make this pure virtual.

Reimplemented from casa::refim::FTMachine.

Definition at line 218 of file MosaicFT.h.

References casacore::True.


Member Data Documentation

CountedPtr<Lattice<Complex> > casa::refim::MosaicFT::arrayLattice [protected]

Array lattice.

Definition at line 277 of file MosaicFT.h.

Sizes.

Definition at line 267 of file MosaicFT.h.

IPosition casa::refim::MosaicFT::centerLoc [protected]

Useful IPositions.

Definition at line 287 of file MosaicFT.h.

Vector<Int> casa::refim::MosaicFT::convChanMap_p [protected]

Definition at line 322 of file MosaicFT.h.

Array<Complex> casa::refim::MosaicFT::convFunc [protected]

Definition at line 314 of file MosaicFT.h.

Vector<Int> casa::refim::MosaicFT::convPolMap_p [protected]

Definition at line 323 of file MosaicFT.h.

Vector<Int> casa::refim::MosaicFT::convRowMap_p [protected]

Definition at line 321 of file MosaicFT.h.

Definition at line 316 of file MosaicFT.h.

Definition at line 317 of file MosaicFT.h.

Vector<Int> casa::refim::MosaicFT::convSizePlanes_p [protected]

Definition at line 320 of file MosaicFT.h.

Definition at line 318 of file MosaicFT.h.

Definition at line 319 of file MosaicFT.h.

TempImage<Complex>* casa::refim::MosaicFT::convWeightImage_p [protected]

Definition at line 335 of file MosaicFT.h.

DirectionCoordinate casa::refim::MosaicFT::directionCoord [protected]

Definition at line 301 of file MosaicFT.h.

Definition at line 340 of file MosaicFT.h.

Array<Complex> casa::refim::MosaicFT::griddedWeight [protected]

Array for non-tiled gridding.

Definition at line 293 of file MosaicFT.h.

Array<DComplex> casa::refim::MosaicFT::griddedWeight2 [protected]

Definition at line 294 of file MosaicFT.h.

ConvolveGridder<Double, Complex>* casa::refim::MosaicFT::gridder [protected]

Gridder.

Definition at line 271 of file MosaicFT.h.

LatticeCache<Complex>* casa::refim::MosaicFT::imageCache [protected]

Image cache.

Definition at line 264 of file MosaicFT.h.

Is this tiled?

Definition at line 274 of file MosaicFT.h.

Definition at line 327 of file MosaicFT.h.

CountedPtr<Lattice<Complex> > casa::refim::MosaicFT::lattice [protected]

Lattice.

For non-tiled gridding, this will point to arrayLattice, whereas for tiled gridding, this points to the image

Definition at line 281 of file MosaicFT.h.

Later this.

Definition at line 339 of file MosaicFT.h.

Definition at line 284 of file MosaicFT.h.

MSAntennaColumns* casa::refim::MosaicFT::msac [protected]

Antenna columns.

Definition at line 299 of file MosaicFT.h.

MSPointingColumns* casa::refim::MosaicFT::mspc [protected]

Pointing columns.

Definition at line 296 of file MosaicFT.h.

IPosition casa::refim::MosaicFT::offsetLoc [protected]

Definition at line 287 of file MosaicFT.h.

Definition at line 336 of file MosaicFT.h.

CountedPtr<UVWMachine> casa::refim::MosaicFT::phaseShifter_p [protected]

Definition at line 337 of file MosaicFT.h.

Finalize transform to Sky casa::refim::MosaicFT::plane

Definition at line 174 of file MosaicFT.h.

MDirection::Convert* casa::refim::MosaicFT::pointingToImage [protected]

Definition at line 303 of file MosaicFT.h.

Definition at line 309 of file MosaicFT.h.

Vector<SkyJones *> sj_p;.

Reimplemented from casa::refim::FTMachine.

Definition at line 248 of file MosaicFT.h.

CountedPtr<TempImage<Float> > casa::refim::MosaicFT::skyCoverage_p [protected]

Definition at line 334 of file MosaicFT.h.

String casa::refim::MosaicFT::stokes_p [protected]

Definition at line 341 of file MosaicFT.h.

Definition at line 268 of file MosaicFT.h.

Grid/degrid zero spacing points?

Definition at line 312 of file MosaicFT.h.

Vector<Double> casa::refim::MosaicFT::uvOffset [protected]

Definition at line 290 of file MosaicFT.h.

Vector<Double> casa::refim::MosaicFT::uvScale [protected]

Image Scaling and offset.

Definition at line 290 of file MosaicFT.h.

Definition at line 325 of file MosaicFT.h.

Array<Complex> casa::refim::MosaicFT::weightConvFunc_p [protected]

Definition at line 315 of file MosaicFT.h.

CountedPtr<Lattice<Complex> > casa::refim::MosaicFT::weightLattice [protected]

Definition at line 282 of file MosaicFT.h.

MDirection casa::refim::MosaicFT::worldPosMeas [protected]

Definition at line 307 of file MosaicFT.h.

Vector<Double> casa::refim::MosaicFT::xyPos [protected]

Definition at line 305 of file MosaicFT.h.


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