casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
casa::PBMosaicFT Class Reference

class nPBWProjectFT; More...

#include <PBMosaicFT.h>

Inheritance diagram for casa::PBMosaicFT:
casa::nPBWProjectFT casa::FTMachine

Public Member Functions

 PBMosaicFT (casacore::MeasurementSet &ms, casacore::Int nFacets, casacore::Long cachesize, casacore::String &cfCacheDirName, casacore::Bool applyPointingOffset=true, casacore::Bool doPBCorr=true, casacore::Int tilesize=16, casacore::Float paSteps=5.0, casacore::Float pbLimit=5e-2, casacore::Bool usezero=false)
 Constructor: cachesize is the size of the cache in words (e.g. More...
 
 PBMosaicFT (const casacore::RecordInterface &stateRec)
 Construct from a casacore::Record containing the PBMosaicFT state. More...
 
PBMosaicFToperator= (const PBMosaicFT &othher)
 Copy constructor PBMosaicFT(const PBMosaicFT &other);. More...
 
 ~PBMosaicFT ()
 
casacore::Bool makeAveragePB0 (const VisBuffer &vb, const casacore::ImageInterface< casacore::Complex > &image, casacore::Int &polInUse, casacore::TempImage< casacore::Float > &avgPB)
 
casacore::Int findPointingOffsets (const VisBuffer &vb, casacore::Array< casacore::Float > &l_off, casacore::Array< casacore::Float > &m_off, casacore::Bool Evaluate)
 
void normalizeAvgPB ()
 VLACalcIlluminationConvFunc vlaPB;. More...
 
void normalizePB (casacore::ImageInterface< casacore::Float > &pb, const casacore::Float &nSamp=1)
 
virtual
casacore::ImageInterface
< casacore::Complex > & 
getImage (casacore::Matrix< casacore::Float > &, casacore::Bool normalize=true)
 Get the final image: do the Fourier transform and grid-correct, then optionally normalize by the summed weights. More...
 
virtual casacore::Float pbFunc (casacore::Float &a)
 
void setObservatoryLocation (const casacore::MPosition &mLocation)
 
virtual void finalizeToSky ()
 Finalize transform to Sky plane: flushes the image cache and shows statistics if it is being used. More...
 
virtual void initializeToSky (casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight, const VisBuffer &vb)
 Initialize transform to Sky plane: initializes the image. More...
 
virtual casacore::String name ()
 
virtual casacore::Bool verifyShapes (casacore::IPosition, casacore::IPosition)
 
- Public Member Functions inherited from casa::nPBWProjectFT
 nPBWProjectFT (casacore::Int nFacets, casacore::Long cachesize, casacore::String &cfCacheDirName, casacore::Bool applyPointingOffset=true, casacore::Bool doPBCorr=true, casacore::Int tilesize=16, casacore::Float paSteps=5.0, casacore::Float pbLimit=5e-2, casacore::Bool usezero=false)
 Constructor: cachesize is the size of the cache in words (e.g. More...
 
 nPBWProjectFT (const casacore::RecordInterface &stateRec)
 Construct from a casacore::Record containing the nPBWProjectFT state. More...
 
 nPBWProjectFT (const nPBWProjectFT &other)
 Copy constructor. More...
 
nPBWProjectFToperator= (const nPBWProjectFT &other)
 Assignment operator. More...
 
 ~nPBWProjectFT ()
 
void setEPJones (SolvableVisJones *ep_j)
 void setEPJones(EPJones* ep_j) {epJ = ep_j;} More...
 
void setDOPBCorrection (casacore::Bool doit=true)
 
virtual void initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const VisBuffer &vb)
 Initialize transform to Visibility plane using the image as a template. More...
 
virtual void initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const VisBuffer &vb, casacore::Array< casacore::Complex > &griddedVis, casacore::Vector< casacore::Double > &uvscale)
 This version returns the gridded vis...should be used in conjunction with the version of 'get' that needs the gridded visdata. More...
 
virtual void finalizeToVis ()
 Finalize transform to Visibility plane: flushes the image cache and shows statistics if it is being used. More...
 
virtual void initVisBuffer (VisBuffer &vb, Type whichVBColumn)
 
void initVisBuffer (VisBuffer &vb, Type whichVBColumn, casacore::Int row)
 
void get (VisBuffer &vb, casacore::Int row=-1)
 Get actual coherence from grid by degridding. More...
 
void get (VisBuffer &vb, casacore::Cube< casacore::Complex > &degrid, casacore::Array< casacore::Complex > &griddedVis, casacore::Vector< casacore::Double > &scale, casacore::Int row=-1)
 Get the coherence from grid return it in the degrid is used especially when scratch columns are not present in ms. More...
 
void get (VisBuffer &vb, casacore::Cube< casacore::Float > &pointingOffsets, casacore::Int row=-1, Type whichVBColumn=FTMachine::MODEL, casacore::Int Conj=0)
 
void get (VisBuffer &vb, VisBuffer &gradAzVB, VisBuffer &gradElVB, casacore::Cube< casacore::Float > &pointingOffsets, casacore::Int row=-1, Type whichVBColumn=FTMachine::MODEL, Type whichGradVBColumn=FTMachine::MODEL, casacore::Int Conj=0, casacore::Int doGrad=1)
 
void nget (VisBuffer &vb, casacore::Array< casacore::Float > &l_off, casacore::Array< casacore::Float > &m_off, casacore::Cube< casacore::Complex > &Mout, casacore::Cube< casacore::Complex > &dMout1, casacore::Cube< casacore::Complex > &dMout2, casacore::Int Conj=0, casacore::Int doGrad=1)
 
void get (VisBuffer &vb, casacore::Cube< casacore::Complex > &degrid, casacore::Array< casacore::Complex > &griddedVis, casacore::Vector< casacore::Double > &scale, casacore::Cube< casacore::Float > &pointingOffsets, casacore::Int row=-1)
 Get the coherence from grid return it in the degrid is used especially when scratch columns are not present in ms. More...
 
void put (const VisBuffer &, casacore::TempImage< casacore::Complex > &, casacore::Vector< casacore::Double > &, int, casacore::UVWMachine *, casacore::Bool)
 Put coherence to grid by gridding. More...
 
void put (const VisBuffer &vb, casacore::Int row=-1, casacore::Bool dopsf=false, FTMachine::Type type=FTMachine::OBSERVED)
 Put coherence to grid. More...
 
void makeImage (FTMachine::Type type, VisSet &vs, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight)
 Make the entire image. More...
 
virtual void normalizeImage (casacore::Lattice< casacore::Complex > &, const casacore::Matrix< casacore::Double > &, casacore::Lattice< casacore::Float > &, casacore::Bool)
 
void getWeightImage (casacore::ImageInterface< casacore::Float > &, casacore::Matrix< casacore::Float > &)
 Get the final weights image. More...
 
casacore::Bool toRecord (casacore::String &error, casacore::RecordInterface &outRec, casacore::Bool withImage=false, const casacore::String diskimage="")
 Save and restore the nPBWProjectFT to and from a record. More...
 
casacore::Bool fromRecord (casacore::String &error, const casacore::RecordInterface &inRec)
 
casacore::Bool isFourier ()
 Can this FTMachine be represented by Fourier convolutions? More...
 
casacore::Bool changed (const VisBuffer &)
 casacore::Bool changed(const VisBuffer& vb) {return vpSJ->changed(vb,1);}; More...
 
virtual casacore::Int findPointingOffsets (const VisBuffer &, casacore::Cube< casacore::Float > &, casacore::Array< casacore::Float > &, casacore::Array< casacore::Float > &, casacore::Bool Evaluate=true)
 
virtual casacore::Double getVBPA (const VisBuffer &vb)
 
casacore::MDirection::Convert makeCoordinateMachine (const VisBuffer &, const casacore::MDirection::Types &, const casacore::MDirection::Types &, casacore::MEpoch &last)
 
virtual void makeSensitivityImage (casacore::Lattice< casacore::Complex > &wtImage, casacore::ImageInterface< casacore::Float > &sensitivityImage, const casacore::Matrix< casacore::Float > &sumWt=casacore::Matrix< casacore::Float >(), const casacore::Bool &doFFTNorm=true)
 Make a sensitivity image (sensitivityImage), given the gridded weights (wtImage). More...
 
void makeConjPolMap (const VisBuffer &vb, const casacore::Vector< casacore::Int > cfPolMap, casacore::Vector< casacore::Int > &conjPolMap)
 
void makeCFPolMap (const VisBuffer &vb, casacore::Vector< casacore::Int > &polM)
 casacore::Vector<casacore::Int> makeConjPolMap(const VisBuffer& vb); More...
 
void reset ()
 void reset() {vpSJ->reset();} More...
 
void setPAIncrement (const casacore::Quantity &paIncrement)
 
casacore::Vector< casacore::Int > & getPolMap ()
 
virtual casacore::String name () const
 Return the name of the machine. More...
 
virtual casacore::Bool verifyAvgPB (casacore::ImageInterface< casacore::Float > &pb, casacore::ImageInterface< casacore::Float > &sky)
 
virtual casacore::Bool verifyAvgPB (casacore::ImageInterface< casacore::Float > &pb, casacore::ImageInterface< casacore::Complex > &sky)
 
casacore::Bool findSupport (casacore::Array< casacore::Complex > &func, casacore::Float &threshold, casacore::Int &origin, casacore::Int &R)
 
void makeAntiAliasingOp (casacore::Vector< casacore::Complex > &val, const casacore::Int len)
 
void makeAntiAliasingCorrection (casacore::Vector< casacore::Complex > &correction, const casacore::Vector< casacore::Complex > &op, const casacore::Int nx)
 
void applyAntiAliasingOp (casacore::ImageInterface< casacore::Complex > &cf, casacore::Vector< casacore::IPosition > &offset, casacore::Int op=0, casacore::Bool Square=false)
 
void applyAntiAliasingOp (casacore::ImageInterface< casacore::Float > &cf, casacore::Vector< casacore::IPosition > &offset, casacore::Int op=0, casacore::Bool Square=false)
 
void correctAntiAliasing (casacore::Lattice< casacore::Complex > &cf)
 
virtual void setMiscInfo (const casacore::Int qualifier)
 set the order of the Taylor term for MFS this is to tell A-casacore::Projection to qualify the accumulated avgPB for each Taylor term in the CFCache. More...
 
virtual void ComputeResiduals (VisBuffer &, casacore::Bool)
 Make the VB and VBStore interefaces for the interim re-factoring work. More...
 
- Public Member Functions inherited from casa::FTMachine
 FTMachine ()
 
 FTMachine (casacore::CountedPtr< CFCache > &cfcache, casacore::CountedPtr< ConvolutionFunction > &cfctor)
 
 FTMachine (const FTMachine &other)
 
FTMachineoperator= (const FTMachine &other)
 
void setBasePrivates (const FTMachine &other)
 
virtual ~FTMachine ()
 
virtual FTMachinecloneFTM ()
 clone copy the default cloner clones via a Record copy More...
 
virtual void initializeToVis (casacore::Block< casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > > &compImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &modelImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &weightImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &fluxScaleVec, casacore::Block< casacore::Matrix< casacore::Float > > &weightsVec, const VisBuffer &vb)
 Vectorized InitializeToVis. More...
 
virtual void initializeToVisNew (const VisBuffer &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void initializeToSky (casacore::Block< casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > > &compImageVec, casacore::Block< casacore::Matrix< casacore::Float > > &weightsVec, const VisBuffer &vb, const casacore::Bool dopsf=false)
 Vectorized InitializeToSky. More...
 
virtual void initializeToSkyNew (const casacore::Bool dopsf, const VisBuffer &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void finalizeToSky (casacore::ImageInterface< casacore::Complex > &iimage)
 
virtual void finalizeToSky (casacore::Block< casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > > &compImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &resImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &weightImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &fluxScaleVec, casacore::Bool dopsf, casacore::Block< casacore::Matrix< casacore::Float > > &weightsVec, const VisBuffer &vb)
 Vectorized finalizeToSky. More...
 
virtual void finalizeToSkyNew (casacore::Bool dopsf, const VisBuffer &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void put (VisBuffer &vb, casacore::Int row=-1, casacore::Bool dopsf=false, FTMachine::Type type=FTMachine::OBSERVED)
 Non const vb version - so that weights can be modified in-place Currently, used only by MultiTermFT. More...
 
virtual void correlationToStokes (casacore::ImageInterface< casacore::Complex > &compImage, casacore::ImageInterface< casacore::Float > &resImage, const casacore::Bool dopsf)
 
More...
 
virtual void stokesToCorrelation (casacore::ImageInterface< casacore::Float > &modelImage, casacore::ImageInterface< casacore::Complex > &compImage)
 
virtual void normalizeImage (casacore::ImageInterface< casacore::Float > &skyImage, casacore::Matrix< casacore::Float > &sumOfWts, casacore::ImageInterface< casacore::Float > &sensitivityImage, casacore::Bool dopsf, casacore::Float pblimit, casacore::Int normtype)
 
virtual casacore::Bool useWeightImage ()
 All FTMachines that fill weightimage, need to set this. More...
 
virtual casacore::Bool isSkyJonesSet ()
 
virtual casacore::Bool isSkyJonesChanged (VisBuffer &vb, casacore::Int row)
 
virtual void setSkyJones (casacore::Vector< casacore::CountedPtr< SkyJones > > &sj)
 Set SkyJones if image domain corrections /applycation are needed To reset the the FTMachine for stopping image based correction/applycation set in a casacore::Vector of size 0. More...
 
casacore::Bool changedSkyJonesLogic (const VisBuffer &vb, casacore::Bool &firstRow, casacore::Bool &internalRow)
 
template<typename T >
void getGrid (casacore::Array< T > &thegrid)
 
More...
 
virtual const
casacore::CountedPtr
< ConvolutionFunction > & 
getAWConvFunc ()
 
virtual void getFluxImage (casacore::ImageInterface< casacore::Float > &image)
 Get a flux (divide by this to get a flux density correct image) image if there is one. More...
 
virtual void makeImage (FTMachine::Type type, ROVisibilityIterator &vi, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight)
 Make the entire image using a ROVisIter. More...
 
void girarUVW (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const VisBuffer &vb)
 
More...
 
void rotateUVW (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const VisBuffer &vb)
 
void refocus (casacore::Matrix< casacore::Double > &uvw, const casacore::Vector< casacore::Int > &ant1, const casacore::Vector< casacore::Int > &ant2, casacore::Vector< casacore::Double > &dphase, const VisBuffer &vb)
 Refocus on a finite distance. More...
 
casacore::Bool setSpw (casacore::Vector< casacore::Int > &spw, casacore::Bool validFrame)
 set spw for cube that will be used; More...
 
virtual casacore::Bool doublePrecGrid ()
 return whether the ftmachine is using a double precision grid More...
 
virtual void setNoPadding (casacore::Bool nopad)
 To make sure no padding is used in certain gridders. More...
 
void setLocation (const casacore::MPosition &loc)
 set and get the location used for frame More...
 
casacore::MPositiongetLocation ()
 
virtual void setMovingSource (const casacore::String &sourcename)
 set a moving source aka planets or comets => adjust phase center on the fly for gridding More...
 
virtual void setMovingSource (const casacore::MDirection &mdir)
 
void setPhaseCenterTime (const casacore::Double time)
 set and get Time to calculate phasecenter -1.0 means using the time available at each iteration..this is used when the phasecenter in the field table is either a polynomial or has a ephemerides tables associated with it Using double in the units and epoch-frame of the ms(s)..caller is responsible for conversion More...
 
casacore::Double getPhaseCenterTime ()
 
virtual void setFreqInterpolation (const casacore::String &method)
 set frequency interpolation type More...
 
virtual void setPointingDirColumn (const casacore::String &column="DIRECTION")
 tell ftmachine which Pointing table column to use for Direction Mosaic or Single dish ft use this for example More...
 
virtual casacore::String getPointingDirColumnInUse ()
 
virtual void setSpwChanSelection (const casacore::Cube< casacore::Int > &spwchansels)
 
virtual casacore::Cube
< casacore::Int
getSpwChanSelection ()
 
virtual void setSpwFreqSelection (const casacore::Matrix< casacore::Double > &spwfreqs)
 
virtual casacore::Matrix
< casacore::Double
getSpwFreqSelection ()
 
virtual void setCanComputeResiduals (casacore::Bool &b)
 
virtual casacore::Bool canComputeResiduals ()
 
virtual casacore::Float getPBLimit ()
 
void setnumthreads (casacore::Int n)
 virtual void ComputeResiduals(VBStore& vb)=0; get and set numthreads More...
 
casacore::Int getnumthreads ()
 
virtual void setCFCache (casacore::CountedPtr< CFCache > &cfc, const casacore::Bool resetCFC=true)
 
casacore::CountedPtr< CFCachegetCFCache ()
 
casacore::String getCacheDir ()
 
virtual void setDryRun (casacore::Bool val)
 
virtual casacore::Bool dryRun ()
 
virtual casacore::Bool isUsingCFCache ()
 

Private Member Functions

virtual void runFortranGet (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, casacore::Cube< casacore::Complex > &visdata, casacore::IPosition &s, casacore::Int &Conj, casacore::Cube< casacore::Int > &flags, casacore::Vector< casacore::Int > &rowFlags, casacore::Int &rownr, casacore::Vector< casacore::Double > &actualOffset, casacore::Array< casacore::Complex > *dataPtr, casacore::Int &aNx, casacore::Int &aNy, casacore::Int &npol, casacore::Int &nchan, VisBuffer &vb, casacore::Int &Nant_p, casacore::Int &scanNo, casacore::Double &sigma, casacore::Array< casacore::Float > &raoffsets, casacore::Array< casacore::Float > &decoffsets, casacore::Double area, casacore::Int &doGrad, casacore::Int paIndex)
 casacore::Float pbNorm; More...
 
virtual void runFortranPut (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const casacore::Complex &visdata_p, casacore::IPosition &s, casacore::Int &Conj, casacore::Cube< casacore::Int > &flags, casacore::Vector< casacore::Int > &rowFlags, const casacore::Matrix< casacore::Float > &weight, casacore::Int &rownr, casacore::Vector< casacore::Double > &actualOffset, casacore::Array< casacore::Complex > &dataPtr, casacore::Int &aNx, casacore::Int &aNy, casacore::Int &npol, casacore::Int &nchan, const VisBuffer &vb, casacore::Int &Nant_p, casacore::Int &scanNo, casacore::Double &sigma, casacore::Array< casacore::Float > &raoffsets, casacore::Array< casacore::Float > &decoffsets, casacore::Matrix< casacore::Double > &sumWeight, casacore::Double &area, casacore::Int &doGrad, casacore::Int &doPSF, casacore::Int paIndex)
 
virtual void runFortranGetGrad (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, casacore::Cube< casacore::Complex > &visdata, casacore::IPosition &s, casacore::Cube< casacore::Complex > &gradVisAzData, casacore::Cube< casacore::Complex > &gradVisElData, casacore::Int &Conj, casacore::Cube< casacore::Int > &flags, casacore::Vector< casacore::Int > &rowFlags, casacore::Int &rownr, casacore::Vector< casacore::Double > &actualOffset, casacore::Array< casacore::Complex > *dataPtr, casacore::Int &aNx, casacore::Int &aNy, casacore::Int &npol, casacore::Int &nchan, VisBuffer &vb, casacore::Int &Nant_p, casacore::Int &scanNo, casacore::Double &sigma, casacore::Array< casacore::Float > &l_off, casacore::Array< casacore::Float > &m_off, casacore::Double area, casacore::Int &doGrad, casacore::Int paIndex)
 

Private Attributes

casacore::Complex nApertures
 
casacore::Vector< casacore::IntfieldIds_p
 
casacore::TempImage
< casacore::Complex > 
griddedWeights
 

Additional Inherited Members

- Public Types inherited from casa::FTMachine
enum  Type {
  OBSERVED,
  MODEL,
  CORRECTED,
  RESIDUAL,
  PSF,
  COVERAGE,
  N_types,
  DEFAULT
}
 Types of known Images that may be made using the makeImage method. More...
 
- Static Public Member Functions inherited from casa::FTMachine
static void locateuvw (const casacore::Double *&uvw, const casacore::Double *&dphase, const casacore::Double *&freq, const casacore::Int &nchan, const casacore::Double *&scale, const casacore::Double *&offset, const casacore::Int &sampling, casacore::Int *&loc, casacore::Int *&off, casacore::Complex *&phasor, const casacore::Int &row, const casacore::Bool &doW=false)
 helper function for openmp to call...no private dependency More...
 
- Public Attributes inherited from casa::FTMachine
casacore::Bool isDryRun
 
- Protected Member Functions inherited from casa::nPBWProjectFT
casacore::Int nint (casacore::Double val)
 
casacore::Int makePBPolnCoords (casacore::CoordinateSystem &coord, const VisBuffer &vb)
 Make the PB part of the convolution function. More...
 
casacore::Int locateConvFunction (casacore::Int Nw, casacore::Int polInUse, const VisBuffer &vb, casacore::Float &pa)
 Locate convolution functions on the disk. More...
 
void cacheConvFunction (casacore::Int which, casacore::Array< casacore::Complex > &cf, casacore::CoordinateSystem &coord)
 
void findConvFunction (const casacore::ImageInterface< casacore::Complex > &image, const VisBuffer &vb)
 Find the convolution function. More...
 
void makeConvFunction (const casacore::ImageInterface< casacore::Complex > &image, const VisBuffer &vb, casacore::Float pa)
 
casacore::Array
< casacore::Complex > * 
getDataPointer (const casacore::IPosition &, casacore::Bool)
 Get the appropriate data pointer. More...
 
void ok ()
 
void init ()
 
casacore::Int getVisParams (const VisBuffer &vb)
 casacore::Int getVisParams(); More...
 
casacore::Bool recordOnGrid (const VisBuffer &vb, casacore::Int rownr) const
 Is this record on Grid? check both ends. More...
 
casacore::Int getIndex (const casacore::ROMSPointingColumns &mspc, const casacore::Double &time, const casacore::Double &interval)
 
casacore::Bool getXYPos (const VisBuffer &vb, casacore::Int row)
 
void runFortranGetGrad (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, casacore::Cube< casacore::Complex > &visdata, casacore::IPosition &s, casacore::Cube< casacore::Complex > &gradVisAzData, casacore::Cube< casacore::Complex > &gradVisElData, casacore::Int &Conj, casacore::Cube< casacore::Int > &flags, casacore::Vector< casacore::Int > &rowFlags, casacore::Int &rownr, casacore::Vector< casacore::Double > &actualOffset, casacore::Array< casacore::Complex > *dataPtr, casacore::Int &aNx, casacore::Int &aNy, casacore::Int &npol, casacore::Int &nchan, VisBuffer &vb, casacore::Int &Nant_p, casacore::Int &scanNo, casacore::Double &sigma, casacore::Array< casacore::Float > &l_off, casacore::Array< casacore::Float > &m_off, casacore::Double area, casacore::Int &doGrad, casacore::Int paIndex)
 
- Protected Member Functions inherited from casa::FTMachine
casacore::LogIOlogIO ()
 
virtual void initMaps (const VisBuffer &vb)
 
virtual void initPolInfo (const VisBuffer &vb)
 
virtual void gridOk (casacore::Int gridsupport)
 check if image is big enough for gridding More...
 
casacore::Bool matchChannel (const casacore::Int &spw, const VisBuffer &vb)
 
casacore::Bool matchAllSpwChans (const VisBuffer &vb)
 redo all spw chan match especially if ms has changed underneath More...
 
virtual casacore::Bool interpolateFrequencyTogrid (const VisBuffer &vb, const casacore::Matrix< casacore::Float > &wt, casacore::Cube< casacore::Complex > &data, casacore::Cube< casacore::Int > &flag, casacore::Matrix< casacore::Float > &weight, FTMachine::Type type=FTMachine::OBSERVED)
 interpolate visibility data of vb to grid frequency definition flag will be set the one as described in interpolateArray1D return false if no interpolation is done...for e.g for nearest case More...
 
virtual casacore::Bool interpolateFrequencyFromgrid (VisBuffer &vb, casacore::Cube< casacore::Complex > &data, FTMachine::Type type=FTMachine::MODEL)
 degridded data interpolated back onto visibilities More...
 
virtual void getInterpolateArrays (const VisBuffer &vb, casacore::Cube< casacore::Complex > &data, casacore::Cube< casacore::Int > &flag)
 Interpolate visibilities to be degridded upon. More...
 
void setSpectralFlag (const VisBuffer &vb, casacore::Cube< casacore::Bool > &modflagcube)
 
casacore::Bool saveMeasure (casacore::RecordInterface &rec, const casacore::String &name, casacore::String &error, const casacore::Measure &ms)
 helper to save Measures in a record More...
 
- Protected Attributes inherited from casa::nPBWProjectFT
casacore::Float padding_p
 Padding in FFT. More...
 
casacore::Int nWPlanes_p
 
casacore::LatticeCache
< casacore::Complex > * 
imageCache
 Image cache. More...
 
casacore::Long cachesize
 Sizes. More...
 
casacore::Int tilesize
 
casacore::ConvolveGridder
< casacore::Double,
casacore::Complex > * 
gridder
 Gridder. More...
 
casacore::Bool isTiled
 Is this tiled? More...
 
casacore::CountedPtr
< casacore::Lattice
< casacore::Complex > > 
arrayLattice
 
casacore::Array lattice

casacore::Lattice<casacore::Complex> * arrayLattice; More...

 
casacore::CountedPtr
< casacore::Lattice
< casacore::Complex > > 
lattice
 Lattice. More...
 
casacore::Float maxAbsData
 
casacore::IPosition centerLoc
 Useful IPositions. More...
 
casacore::IPosition offsetLoc
 
casacore::Vector
< casacore::Double
uvScale
 Image Scaling and offset. More...
 
casacore::Vector
< casacore::Double
uvOffset
 
casacore::Array
< casacore::Complex > 
griddedData
 casacore::Array for non-tiled gridding More...
 
casacore::MSPointingColumnsmspc
 Pointing columns. More...
 
casacore::MSAntennaColumnsmsac
 Antenna columns. More...
 
casacore::DirectionCoordinate directionCoord
 
casacore::MDirection::ConvertpointingToImage
 
casacore::Vector
< casacore::Double
xyPos
 
casacore::MDirection worldPosMeas
 
casacore::Int priorCacheSize
 
casacore::Bool usezero_p
 Grid/degrid zero spacing points? More...
 
casacore::Array
< casacore::Complex > 
convFunc
 
casacore::Array
< casacore::Complex > 
convWeights
 
casacore::CoordinateSystem convFuncCS_p
 
casacore::Int convSize
 
casacore::Int convSampling
 casacore::Vector to hold the support size info. More...
 
casacore::Cube< casacore::IntconvSupport
 
casacore::Cube< casacore::IntconvWtSupport
 
casacore::PtrBlock
< casacore::Array
< casacore::Complex > * > 
convFuncCache
 Holder for the pointers to the convolution functions. More...
 
casacore::PtrBlock
< casacore::Array
< casacore::Complex > * > 
convWeightsCache
 
casacore::Int PAIndex
 casacore::Array<casacore::Complex>* convFunc_p; More...
 
casacore::Bool convFuncCacheReady
 If true, all convolution functions are in the cache. More...
 
casacore::Int wConvSize
 
casacore::Int lastIndex_p
 
casacore::TempImage
< casacore::Float
avgPB
 VPSkyJones *vpSJ;. More...
 
casacore::Int polInUse
 No. More...
 
casacore::Int bandID_p
 
casacore::Int maxConvSupport
 
casacore::Float pbLimit_p
 Percentage of the peak of the PB after which the image is set to zero. More...
 
SolvableVisJonesepJ
 EPJones *epJ;. More...
 
casacore::Double HPBW
 
casacore::Double Diameter_p
 
casacore::Double sigma
 
casacore::Int Nant_p
 
casacore::Int doPointing
 
casacore::Bool doPBCorrection
 
casacore::Bool makingPSF
 
casacore::Unit Second
 
casacore::Unit Radian
 
casacore::Unit Day
 
casacore::Array< casacore::Floatl_offsets
 
casacore::Array< casacore::Floatm_offsets
 
casacore::Int noOfPASteps
 
casacore::Vector< casacore::FloatpbPeaks
 
casacore::Bool pbNormalized
 
casacore::Bool resetPBs
 
casacore::Bool rotateAperture_p
 
casacore::Vector< casacore::FloatpaList
 
ConvFuncDiskCache cfCache
 
casacore::Double currentCFPA
 
ParAngleChangeDetector paChangeDetector
 
casacore::Vector< casacore::IntcfStokes
 
casacore::Vector
< casacore::Complex > 
Area
 
casacore::Double cfRefFreq_p
 
casacore::Bool avgPBSaved
 
casacore::Bool avgPBReady
 
casacore::Vector
< casacore::Complex > 
antiAliasingOp
 
casacore::Vector
< casacore::Complex > 
antiAliasingCorrection
 
casacore::Float lastPAUsedForWtImg
 
- Protected Attributes inherited from casa::FTMachine
casacore::LogIO logIO_p
 
casacore::ImageInterface
< casacore::Complex > * 
image
 
casacore::UVWMachineuvwMachine_p
 
casacore::CountedPtr
< casacore::UVWMachine
phaseShifter_p
 
casacore::MeasFrame mFrame_p
 
casacore::Bool tangentSpecified_p
 Direction of desired tangent plane. More...
 
casacore::MDirection mTangent_p
 
casacore::MDirection mImage_p
 
casacore::MDirection movingDir_p
 moving source stuff More...
 
casacore::Bool fixMovingSource_p
 
casacore::MDirection firstMovingDir_p
 
casacore::Double distance_p
 
casacore::uInt nAntenna_p
 
casacore::Int lastFieldId_p
 
casacore::Int lastMSId_p
 
casacore::Bool useDoubleGrid_p
 Use douple precision grid in gridding process. More...
 
casacore::Matrix
< casacore::Double
sumWeight
 Sum of weights per polarization and per chan. More...
 
casacore::Matrix
< casacore::Double
sumCFWeight
 
casacore::Int nx
 Sizes. More...
 
casacore::Int ny
 
casacore::Int npol
 
casacore::Int nchan
 
casacore::Int nvischan
 
casacore::Int nvispol
 
casacore::Vector< casacore::IntchanMap
 Maps of channels and polarization. More...
 
casacore::Vector< casacore::IntpolMap
 
casacore::Bool isIOnly
 Is casacore::Stokes I only? iso XX,XY,YX,YY or LL,LR,RL,RR. More...
 
casacore::MPosition mLocation_p
 Default Position used for phase rotations. More...
 
casacore::Bool doUVWRotation_p
 Set if uvwrotation is necessary. More...
 
casacore::Block
< casacore::Vector
< casacore::Int > > 
multiChanMap_p
 setup multiple spectral window for cubes More...
 
casacore::Vector< casacore::IntselectedSpw_p
 
casacore::Vector< casacore::IntnVisChan_p
 
casacore::SpectralCoordinate spectralCoord_p
 Private variables needed for spectral frame conversion. More...
 
casacore::Vector< casacore::BooldoConversion_p
 
casacore::Bool freqFrameValid_p
 
casacore::Vector
< casacore::Double
imageFreq_p
 
casacore::Vector
< casacore::Double
lsrFreq_p
 casacore::Vector of float lsrfreq needed for regridding More...
 
casacore::Vector
< casacore::Double
interpVisFreq_p
 
casacore::InterpolateArray1D
< casacore::Double,
casacore::Complex >
::InterpolationMethod 
freqInterpMethod_p
 
casacore::String pointingDirCol_p
 
casacore::Cube< casacore::IntspwChanSelFlag_p
 
casacore::Matrix
< casacore::Double
spwFreqSel_p
 
casacore::Matrix
< casacore::Double
expandedSpwFreqSel_p
 
casacore::Matrix
< casacore::Double
expandedSpwConjFreqSel_p
 
casacore::Vector< casacore::IntcfStokes_p
 
casacore::Int polInUse_p
 
casacore::CountedPtr< CFCachecfCache_p
 
CFStore cfs_p
 
CFStore cfwts_p
 
casacore::CountedPtr< CFStore2cfs2_p
 
casacore::CountedPtr< CFStore2cfwts2_p
 
casacore::CountedPtr
< ConvolutionFunction
convFuncCtor_p
 
casacore::CountedPtr
< PolOuterProduct
pop_p
 
casacore::Bool canComputeResiduals_p
 
casacore::Bool toVis_p
 
casacore::Int numthreads_p
 
casacore::Array
< casacore::Complex > 
griddedData
 casacore::Array for non-tiled gridding These are common to most FTmachines More...
 
casacore::Array
< casacore::DComplex > 
griddedData2
 
casacore::Float pbLimit_p
 
casacore::Vector
< casacore::CountedPtr
< SkyJones > > 
sj_p
 casacore::Vector<SkyJones *> sj_p; More...
 
casacore::CountedPtr
< casacore::ImageInterface
< casacore::Complex > > 
cmplxImage_p
 A holder for the complex image if nobody else is keeping it. More...
 
FFT2D ft_p
 
casacore::Double phaseCenterTime_p
 

Detailed Description

class nPBWProjectFT;

Definition at line 49 of file PBMosaicFT.h.

Constructor & Destructor Documentation

casa::PBMosaicFT::PBMosaicFT ( casacore::MeasurementSet ms,
casacore::Int  nFacets,
casacore::Long  cachesize,
casacore::String cfCacheDirName,
casacore::Bool  applyPointingOffset = true,
casacore::Bool  doPBCorr = true,
casacore::Int  tilesize = 16,
casacore::Float  paSteps = 5.0,
casacore::Float  pbLimit = 5e-2,
casacore::Bool  usezero = 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::PBMosaicFT::PBMosaicFT ( const casacore::RecordInterface stateRec)

Construct from a casacore::Record containing the PBMosaicFT state.

casa::PBMosaicFT::~PBMosaicFT ( )
inline

Definition at line 75 of file PBMosaicFT.h.

Member Function Documentation

virtual void casa::PBMosaicFT::finalizeToSky ( )
virtual

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

DOES NOT DO THE FINAL TRANSFORM!

Reimplemented from casa::nPBWProjectFT.

casacore::Int casa::PBMosaicFT::findPointingOffsets ( const VisBuffer vb,
casacore::Array< casacore::Float > &  l_off,
casacore::Array< casacore::Float > &  m_off,
casacore::Bool  Evaluate 
)
virtual

Reimplemented from casa::nPBWProjectFT.

virtual casacore::ImageInterface<casacore::Complex>& casa::PBMosaicFT::getImage ( casacore::Matrix< casacore::Float > &  ,
casacore::Bool  normalize = true 
)
virtual

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

Reimplemented from casa::nPBWProjectFT.

virtual void casa::PBMosaicFT::initializeToSky ( casacore::ImageInterface< casacore::Complex > &  image,
casacore::Matrix< casacore::Float > &  weight,
const VisBuffer vb 
)
virtual

Initialize transform to Sky plane: initializes the image.

Reimplemented from casa::nPBWProjectFT.

casacore::Bool casa::PBMosaicFT::makeAveragePB0 ( const VisBuffer vb,
const casacore::ImageInterface< casacore::Complex > &  image,
casacore::Int polInUse,
casacore::TempImage< casacore::Float > &  avgPB 
)
virtual

Reimplemented from casa::nPBWProjectFT.

virtual casacore::String casa::PBMosaicFT::name ( )
inlinevirtual

Definition at line 93 of file PBMosaicFT.h.

void casa::PBMosaicFT::normalizeAvgPB ( )
virtual

VLACalcIlluminationConvFunc vlaPB;.


Reimplemented from casa::nPBWProjectFT.

void casa::PBMosaicFT::normalizePB ( casacore::ImageInterface< casacore::Float > &  pb,
const casacore::Float nSamp = 1 
)
PBMosaicFT& casa::PBMosaicFT::operator= ( const PBMosaicFT othher)

Copy constructor PBMosaicFT(const PBMosaicFT &other);.

Assignment operator

virtual casacore::Float casa::PBMosaicFT::pbFunc ( casacore::Float a)
inlinevirtual

Definition at line 88 of file PBMosaicFT.h.

virtual void casa::PBMosaicFT::runFortranGet ( casacore::Matrix< casacore::Double > &  uvw,
casacore::Vector< casacore::Double > &  dphase,
casacore::Cube< casacore::Complex > &  visdata,
casacore::IPosition s,
casacore::Int Conj,
casacore::Cube< casacore::Int > &  flags,
casacore::Vector< casacore::Int > &  rowFlags,
casacore::Int rownr,
casacore::Vector< casacore::Double > &  actualOffset,
casacore::Array< casacore::Complex > *  dataPtr,
casacore::Int aNx,
casacore::Int aNy,
casacore::Int npol,
casacore::Int nchan,
VisBuffer vb,
casacore::Int Nant_p,
casacore::Int scanNo,
casacore::Double sigma,
casacore::Array< casacore::Float > &  raoffsets,
casacore::Array< casacore::Float > &  decoffsets,
casacore::Double  area,
casacore::Int doGrad,
casacore::Int  paIndex 
)
privatevirtual

casacore::Float pbNorm;

Parameters
Conjcasacore::Cube<casacore::Complex>& gradVisAzData, casacore::Cube<casacore::Complex>& gradVisElData, casacore::IPosition& gradS,

Reimplemented from casa::nPBWProjectFT.

virtual void casa::PBMosaicFT::runFortranGetGrad ( casacore::Matrix< casacore::Double > &  uvw,
casacore::Vector< casacore::Double > &  dphase,
casacore::Cube< casacore::Complex > &  visdata,
casacore::IPosition s,
casacore::Cube< casacore::Complex > &  gradVisAzData,
casacore::Cube< casacore::Complex > &  gradVisElData,
casacore::Int Conj,
casacore::Cube< casacore::Int > &  flags,
casacore::Vector< casacore::Int > &  rowFlags,
casacore::Int rownr,
casacore::Vector< casacore::Double > &  actualOffset,
casacore::Array< casacore::Complex > *  dataPtr,
casacore::Int aNx,
casacore::Int aNy,
casacore::Int npol,
casacore::Int nchan,
VisBuffer vb,
casacore::Int Nant_p,
casacore::Int scanNo,
casacore::Double sigma,
casacore::Array< casacore::Float > &  l_off,
casacore::Array< casacore::Float > &  m_off,
casacore::Double  area,
casacore::Int doGrad,
casacore::Int  paIndex 
)
privatevirtual
Parameters
Conjcasacore::IPosition& gradS,
virtual void casa::PBMosaicFT::runFortranPut ( casacore::Matrix< casacore::Double > &  uvw,
casacore::Vector< casacore::Double > &  dphase,
const casacore::Complex &  visdata_p,
casacore::IPosition s,
casacore::Int Conj,
casacore::Cube< casacore::Int > &  flags,
casacore::Vector< casacore::Int > &  rowFlags,
const casacore::Matrix< casacore::Float > &  weight,
casacore::Int rownr,
casacore::Vector< casacore::Double > &  actualOffset,
casacore::Array< casacore::Complex > &  dataPtr,
casacore::Int aNx,
casacore::Int aNy,
casacore::Int npol,
casacore::Int nchan,
const VisBuffer vb,
casacore::Int Nant_p,
casacore::Int scanNo,
casacore::Double sigma,
casacore::Array< casacore::Float > &  raoffsets,
casacore::Array< casacore::Float > &  decoffsets,
casacore::Matrix< casacore::Double > &  sumWeight,
casacore::Double area,
casacore::Int doGrad,
casacore::Int doPSF,
casacore::Int  paIndex 
)
privatevirtual
Parameters
Conjcasacore::Cube<casacore::Complex>& gradVisAzData, casacore::Cube<casacore::Complex>& gradVisElData, casacore::IPosition& gradS,

Reimplemented from casa::nPBWProjectFT.

void casa::PBMosaicFT::setObservatoryLocation ( const casacore::MPosition mLocation)
inline

Definition at line 89 of file PBMosaicFT.h.

References casa::FTMachine::mLocation_p.

virtual casacore::Bool casa::PBMosaicFT::verifyShapes ( casacore::IPosition  ,
casacore::IPosition   
)
inlinevirtual

Reimplemented from casa::nPBWProjectFT.

Definition at line 94 of file PBMosaicFT.h.

Member Data Documentation

casacore::Vector<casacore::Int> casa::PBMosaicFT::fieldIds_p
private

Definition at line 99 of file PBMosaicFT.h.

casacore::TempImage<casacore::Complex> casa::PBMosaicFT::griddedWeights
private

Definition at line 100 of file PBMosaicFT.h.

casacore::Complex casa::PBMosaicFT::nApertures
private

Definition at line 95 of file PBMosaicFT.h.


The documentation for this class was generated from the following file: