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

#include <AWProjectWBFTNew.h>

Inheritance diagram for casa::refim::AWProjectWBFTNew:
casa::refim::AWProjectWBFT casa::refim::AWProjectFT casa::refim::FTMachine

Public Member Functions

 AWProjectWBFTNew (casacore::Int nFacets, casacore::Long cachesize, casacore::CountedPtr< CFCache > &cfcache, casacore::CountedPtr< ConvolutionFunction > &cf, casacore::CountedPtr< VisibilityResamplerBase > &visResampler, casacore::Bool applyPointingOffset=true, casacore::Bool doPBCorr=true, casacore::Int tilesize=16, casacore::Float paSteps=5.0, casacore::Float pbLimit=5e-4, casacore::Bool usezero=false, casacore::Bool conjBeams_p=true, casacore::Bool doublePrecGrid=false)
 
 AWProjectWBFTNew (const casacore::RecordInterface &stateRec)
 Construct from a casacore::Record containing the AWProjectWBFT state. More...
 
virtual casacore::String name () const
 
Copy constructor

AWProjectWBFTNew(const AWProjectWBFTNew &other):AWProjectWBFT() {operator=(other);}; More...

 
 ~AWProjectWBFTNew ()
 
FTMachinecloneFTM ()
 clone copy should make it pure virtual forcing every ftm to have a cloner More...
 
virtual casacore::Bool useWeightImage ()
 All FTMachines that fill weightimage, need to set this. More...
 
virtual void setDryRun (casacore::Bool val)
 
- Public Member Functions inherited from casa::refim::AWProjectWBFT
 AWProjectWBFT (casacore::Int nFacets, casacore::Long cachesize, casacore::CountedPtr< CFCache > &cfcache, casacore::CountedPtr< ConvolutionFunction > &cf, casacore::CountedPtr< VisibilityResamplerBase > &visResampler, casacore::Bool applyPointingOffset=true, casacore::Bool doPBCorr=true, casacore::Int tilesize=16, casacore::Float paSteps=5.0, casacore::Float pbLimit=5e-4, casacore::Bool usezero=false, casacore::Bool conjBeams_p=true, casacore::Bool doublePrecGrid=false)
 Constructor: cachesize is the size of the cache in words (e.g. More...
 
 AWProjectWBFT (const casacore::RecordInterface &stateRec)
 Construct from a casacore::Record containing the AWProjectWBFT state. More...
 
 AWProjectWBFT (const AWProjectWBFT &other)
 Copy constructor. More...
 
AWProjectWBFToperator= (const AWProjectWBFT &other)
 Assignment operator. More...
 
 ~AWProjectWBFT ()
 
casacore::Int findPointingOffsets (const VisBuffer2 &vb, casacore::Array< casacore::Float > &l_off, casacore::Array< casacore::Float > &m_off, casacore::Bool Evaluate)
 casacore::Bool changed(const VisBuffer& vb) {return vpSJ->changed(vb,1);}; casacore::Bool changed(const VisBuffer& vb) {return false;} More...
 
void normalizeAvgPB ()
 
More...
 
void normalizeAvgPB (casacore::ImageInterface< casacore::Complex > &, casacore::ImageInterface< casacore::Float > &)
 
virtual void makeSensitivityImage (const VisBuffer2 &vb, const casacore::ImageInterface< casacore::Complex > &imageTemplate, casacore::ImageInterface< casacore::Float > &sensitivityImage)
 This method is called from AWProjectFT to compute the sensitivity image by accumulating in the image domain (i.e. More...
 
virtual void makeSensitivityImage (const VisBuffer2 &vb, const casacore::ImageInterface< casacore::DComplex > &imageTemplate, casacore::ImageInterface< casacore::Float > &sensitivityImage)
 
template<class T >
void makeSensitivityImage (casacore::Lattice< T > &wtImage, casacore::ImageInterface< casacore::Float > &sensitivityImage, const casacore::Matrix< casacore::Float > &sumWt=casacore::Matrix< casacore::Float >(), const casacore::Bool &doFFTNorm=true)
 In AWProjectWBFT and its derivatives, sensitivity image is computed by accumulating weight functions (images) during the first gridding cycle. More...
 
void makeSensitivitySqImage (casacore::Lattice< casacore::Complex > &wtImage, casacore::ImageInterface< casacore::Complex > &sensitivitySqImage, const casacore::Matrix< casacore::Float > &sumWt=casacore::Matrix< casacore::Float >(), const casacore::Bool &doFFTNorm=true)
 
virtual
casacore::ImageInterface
< casacore::Complex > & 
getImage (casacore::Matrix< casacore::Float > &, casacore::Bool normalize=true)
 Method used to make normalized image from gridded visibilites. More...
 
virtual casacore::Float pbFunc (const casacore::Float &, const casacore::Float &)
 Method used to convert the pixel value of the PB image, passed as pbPixValue, to a value used for PB-normalization. More...
 
virtual void finalizeToSky ()
 {casacore::Float tt=(pbPixValue);return (abs(tt) >= pbLimit)?tt:1.0;}; More...
 
virtual void initializeToSky (casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight, const VisBuffer2 &vb)
 Initialize transform to Sky plane: initializes the image. More...
 
void setObservatoryLocation (const casacore::MPosition &mLocation)
 
virtual casacore::Bool verifyShapes (casacore::IPosition shape0, casacore::IPosition shape1)
 
virtual casacore::Bool computeAvgPB (const casacore::Double &, const casacore::Double &)
 Returns true if accumulation during gridding to compute the average PB must be done. More...
 
virtual void setCFCache (casacore::CountedPtr< CFCache > &cfc, const casacore::Bool resetCFC=true)
 virtual void setMiscInfo(const casacore::Int qualifier) {sensitivityPatternQualifier_p=qualifier;} {qualifier_p = qualifier;taylorQualifier_p = "_MFS_"+casacore::String::toString(qualifier_p)+"_";}; More...
 
- Public Member Functions inherited from casa::refim::AWProjectFT
 AWProjectFT ()
 
 AWProjectFT (casacore::Int nFacets, casacore::Long cachesize, casacore::CountedPtr< CFCache > &cfcache, casacore::CountedPtr< ConvolutionFunction > &cf, casacore::CountedPtr< VisibilityResamplerBase > &visResampler, casacore::Bool applyPointingOffset=true, casacore::Bool doPBCorr=true, casacore::Int tilesize=16, casacore::Float pbLimit=5e-4, casacore::Bool usezero=false, casacore::Bool conjBeams_p=true, casacore::Bool doublePrecGrid=false, PolOuterProduct::MuellerType muellerType=PolOuterProduct::FULL)
 Constructor: cachesize is the size of the cache in words (e.g. More...
 
 AWProjectFT (const casacore::RecordInterface &stateRec)
 Construct from a casacore::Record containing the AWProjectFT state. More...
 
 AWProjectFT (const AWProjectFT &other)
 Copy constructor. More...
 
AWProjectFToperator= (const AWProjectFT &other)
 Assignment operator. More...
 
 ~AWProjectFT ()
 
void setEPJones (SolvableVisJones *ep_j)
 void setEPJones(EPJones* ep_j) {epJ = ep_j;} More...
 
virtual void setDOPBCorrection (casacore::Bool doit=true)
 
virtual casacore::Bool getDOPBCorrection ()
 
virtual void setConjBeams (casacore::Bool useit=true)
 
virtual casacore::Bool getConjBeams ()
 
virtual casacore::Float getPBLimit ()
 
void setObservatoryLocation (const casacore::MPosition &mLocation)
 Initialize transform to Visibility plane using the image as a template. 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 vi::VisBuffer2 &vb)
 Vectorized version of initializeToVis. More...
 
virtual void initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const vi::VisBuffer2 &vb)
 Initialize transform to Visibility plane. More...
 
virtual void initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const vi::VisBuffer2 &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 (vi::VisBuffer2 &vb, Type whichVBColumn)
 
void initVisBuffer (vi::VisBuffer2 &vb, Type whichVBColumn, casacore::Int row)
 
void get (vi::VisBuffer2 &vb, casacore::Int row=-1)
 Get actual coherence from grid by degridding. More...
 
void get (vi::VisBuffer2 &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 (vi::VisBuffer2 &vb, casacore::Cube< casacore::Float > &pointingOffsets, casacore::Int row=-1, FTMachine::Type whichVBColumn=FTMachine::MODEL, casacore::Int Conj=0)
 
void get (vi::VisBuffer2 &vb, vi::VisBuffer2 &gradAzVB, vi::VisBuffer2 &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 (vi::VisBuffer2 &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 (vi::VisBuffer2 &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 vi::VisBuffer2 &, casacore::TempImage< casacore::Complex > &, casacore::Vector< casacore::Double > &, int, casacore::UVWMachine *, casacore::Bool)
 Put coherence to grid by gridding. More...
 
void put (const vi::VisBuffer2 &vb, casacore::Int row=-1, casacore::Bool dopsf=false, FTMachine::Type type=FTMachine::OBSERVED)
 Put coherence to grid. More...
 
void getWeightImage (casacore::ImageInterface< casacore::Float > &, casacore::Matrix< casacore::Float > &)
 Get the final weights image. More...
 
casacore::Bool toRecord (casacore::RecordInterface &outRec, casacore::Bool withImage=false)
 Save and restore the AWProjectFT to and from a record. More...
 
casacore::Bool fromRecord (const casacore::RecordInterface &inRec)
 
casacore::Bool isFourier ()
 Can this FTMachine be represented by Fourier convolutions? More...
 
virtual casacore::Int findPointingOffsets (const vi::VisBuffer2 &, casacore::Cube< casacore::Float > &, casacore::Array< casacore::Float > &, casacore::Array< casacore::Float > &, casacore::Bool Evaluate=true)
 
virtual casacore::Double getVBPA (const vi::VisBuffer2 &vb)
 
casacore::MDirection::Convert makeCoordinateMachine (const vi::VisBuffer2 &, const casacore::MDirection::Types &, const casacore::MDirection::Types &, casacore::MEpoch &last)
 
virtual void makeSensitivityImage (casacore::Lattice< casacore::Complex > &, casacore::ImageInterface< casacore::Float > &, const casacore::Matrix< casacore::Float > &, const casacore::Bool &)
 Make a sensitivity image (sensitivityImage), given the gridded weights (wtImage). More...
 
virtual
casacore::ImageInterface
< casacore::Float > & 
getSensitivityImage ()
 Given the sky image (Fourier transform of the visibilities), sum of weights and the sensitivity image, this method replaces the skyImage with the normalized image of the sky. More...
 
virtual casacore::Matrix
< casacore::Double > & 
getSumOfWeights ()
 
virtual casacore::Matrix
< casacore::Double > & 
getSumOfCFWeights ()
 
void makeConjPolMap (const vi::VisBuffer2 &vb, const casacore::Vector< casacore::Int > cfPolMap, casacore::Vector< casacore::Int > &conjPolMap)
 
void makeCFPolMap (const vi::VisBuffer2 &vb, const casacore::Vector< casacore::Int > &cfstokes, 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 &computePAIncr, const casacore::Quantity &rotateOTFPAIncr)
 
casacore::Vector< casacore::Int > & getPolMap ()
 
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)
 
virtual casacore::Complex pbFunc (const casacore::Complex &a, const casacore::Float &limit)
 {if (abs(a) >= limit) return (a);else return 1.0;}; More...
 
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 (vi::VisBuffer2 &vb, casacore::Bool useCorrected)
 Make the VB and VBStore interefaces for the interim re-factoring work. More...
 
void makeWBCFWt (CFStore2 &cfs, const casacore::Double imRefFreq)
 
virtual const
casacore::CountedPtr
< refim::FTMachine > & 
getFTM2 (const casacore::Bool)
 
- Public Member Functions inherited from casa::refim::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 void initializeToVisNew (const vi::VisBuffer2 &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void initializeToSkyNew (const casacore::Bool dopsf, const vi::VisBuffer2 &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void initBriggsWeightor (vi::VisibilityIterator2 &vi)
 

This function has to be called after initMaps to initialize Briggs Cube weighting scheme More...

 
virtual void finalizeToSky (casacore::ImageInterface< casacore::Complex > &iimage)
 
virtual void finalizeToSkyNew (casacore::Bool dopsf, const vi::VisBuffer2 &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void put (vi::VisBuffer2 &vb, casacore::Int row=-1, casacore::Bool dopsf=false, refim::FTMachine::Type type=refim::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::Lattice< casacore::Complex > &, const casacore::Matrix< casacore::Double > &, casacore::Lattice< casacore::Float > &, casacore::Bool)
 
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 isSkyJonesSet ()
 
virtual casacore::Bool isSkyJonesChanged (vi::VisBuffer2 &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 vi::VisBuffer2 &vb, casacore::Bool &firstRow, casacore::Bool &internalRow)
 
template<typename T >
void getGrid (casacore::Array< T > &thegrid)
 
More...
 
virtual const
casacore::CountedPtr
< refim::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, vi::VisibilityIterator2 &vi, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight)
 Make the entire image Make the entire image using a ROVisIter. More...
 
void rotateUVW (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const vi::VisBuffer2 &vb)
 
More...
 
void girarUVW (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const vi::VisBuffer2 &vb)
 rotate with facetting style rephasing..for multifield mosaic More...
 
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 vi::VisBuffer2 &vb)
 Refocus on a finite distance. More...
 
virtual casacore::Bool toRecord (casacore::String &error, casacore::RecordInterface &outRecord, casacore::Bool withImage=false, const casacore::String diskimagename="")
 Save and restore the FTMachine to and from a record. More...
 
virtual casacore::Bool fromRecord (casacore::String &error, const casacore::RecordInterface &inRecord)
 
virtual casacore::Bool changed (const vi::VisBuffer2 &vb)
 Has this operator changed since the last application? More...
 
casacore::Bool setFrameValidity (casacore::Bool validFrame)
 set otf spectral frame transform is on or off; 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...
 
virtual void setLocation (const casacore::MPosition &loc)
 set and get the location used for frame More...
 
virtual casacore::MPositiongetLocation ()
 
virtual void setMovingSource (const casacore::String &sourcename, const casacore::String &ephemtable="")
 set a moving source aka planets or comets => adjust phase center on the fly for gridding More...
 
virtual void setMovingSource (const casacore::MDirection &mdir)
 
virtual void setFreqInterpolation (const casacore::String &method)
 set frequency interpolation type More...
 
virtual void setFreqInterpolation (const casacore::InterpolateArray1D< casacore::Double, casacore::Complex >::InterpolationMethod type)
 
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 void setSpwFreqSelection (const casacore::Matrix< casacore::Double > &spwfreqs)
 
virtual void setCanComputeResiduals (casacore::Bool &b)
 
virtual casacore::Bool canComputeResiduals ()
 
void setnumthreads (casacore::Int n)
 virtual void ComputeResiduals(VBStore& vb)=0; get and set numthreads More...
 
casacore::Int getnumthreads ()
 
casacore::CountedPtr< CFCachegetCFCache ()
 
casacore::String getCacheDir ()
 
virtual casacore::Bool dryRun ()
 
virtual casacore::Bool isUsingCFCache ()
 
void setPseudoIStokes (casacore::Bool pseudoI)
 
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 ()
 
casacore::Vector< casacore::IntchannelMap (const vi::VisBuffer2 &vb)
 
casacore::Matrix
< casacore::Double
getSumWeights ()
 
void setBriggsCubeWeight (casacore::CountedPtr< refim::BriggsCubeWeightor > bwght)
 Functions associated with Briggs weighting for cubes. More...
 
void getImagingWeight (casacore::Matrix< casacore::Float > &imwght, const vi::VisBuffer2 &vb)
 
virtual casacore::Long estimateRAM (const casacore::CountedPtr< SIImageStore > &imstore)
 utility function that returns a rough estimate of memory needed. More...
 

Protected Member Functions

void ftWeightImage (casacore::Lattice< casacore::Complex > &wtImage, const casacore::Matrix< casacore::Float > &sumWt, const casacore::Bool &doFFTNorm)
 
- Protected Member Functions inherited from casa::refim::AWProjectWBFT
template<class T >
void ftWeightImage (casacore::Lattice< T > &wtImage, const casacore::Matrix< casacore::Float > &sumWt, const casacore::Bool &doFFTNorm)
 
virtual void resampleDataToGrid (casacore::Array< casacore::Complex > &griddedData, VBStore &vbs, const VisBuffer2 &vb, casacore::Bool &dopsf)
 
virtual void resampleDataToGrid (casacore::Array< casacore::DComplex > &griddedData, VBStore &vbs, const VisBuffer2 &vb, casacore::Bool &dopsf)
 
template<class T >
void resampleCFToGrid (casacore::Array< T > &wtsGrid, VBStore &vbs, const VisBuffer2 &vb)
 virtual void resampleGridToData(VBStore& vbs, const VisBuffer2& vb); More...
 
- Protected Member Functions inherited from casa::refim::AWProjectFT
casacore::Int nint (casacore::Double val)
 
void findConvFunction (const casacore::ImageInterface< casacore::Complex > &image, const vi::VisBuffer2 &vb)
 Locate convolution functions on the disk casacore::Int locateConvFunction(const casacore::Int Nw, const casacore::Float pa); void cacheConvFunction(casacore::Int which, casacore::Array<casacore::Complex>& cf, casacore::CoordinateSystem& coord); Find the convolution function. More...
 
casacore::Array
< casacore::Complex > * 
getDataPointer (const casacore::IPosition &, casacore::Bool)
 Get the appropriate data pointer. More...
 
void ok ()
 
void init ()
 
casacore::Bool recordOnGrid (const vi::VisBuffer2 &vb, casacore::Int rownr) const
 virtual void initPolInfo(const vi::VisBuffer2& vb); Is this record on Grid? check both ends. More...
 
virtual void resampleGridToData (VBStore &vbs, casacore::Array< casacore::Complex > &griddedData, const vi::VisBuffer2 &vb)
 
virtual void makeThGridCoords (VBStore &vbs, const casacore::Vector< casacore::Int > &gridShape)
 
virtual void setupVBStore (VBStore &vbs, const vi::VisBuffer2 &vb, const casacore::Matrix< casacore::Float > &imagingweight, const casacore::Cube< casacore::Complex > &visData, const casacore::Matrix< casacore::Double > &uvw, const casacore::Cube< casacore::Int > &flagCube, const casacore::Vector< casacore::Double > &dphase, const casacore::Bool &doPSF, const casacore::Vector< casacore::Int > &gridShape)
 
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, VisBuffer2 &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)
 -*- C++ -*- 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 VisBuffer2 &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)
 
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, VisBuffer2 &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::refim::FTMachine
casacore::LogIOlogIO ()
 
virtual void initMaps (const vi::VisBuffer2 &vb)
 
virtual void initPolInfo (const vi::VisBuffer2 &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 matchChannel (const vi::VisBuffer2 &vb)
 
casacore::Bool matchAllSpwChans (const VisBuffer &vb)
 redo all spw chan match especially if ms has changed underneath More...
 
virtual casacore::Bool interpolateFrequencyTogrid (const vi::VisBuffer2 &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)
 casacore::Bool matchAllSpwChans(const vi::VisBuffer2& vb); 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 (vi::VisBuffer2 &vb, casacore::Cube< casacore::Complex > &data, FTMachine::Type type=FTMachine::MODEL)
 degridded data interpolated back onto visibilities More...
 
virtual void getInterpolateArrays (const vi::VisBuffer2 &vb, casacore::Cube< casacore::Complex > &data, casacore::Cube< casacore::Int > &flag)
 Interpolate visibilities to be degridded upon. More...
 
void setSpectralFlag (const vi::VisBuffer2 &vb, casacore::Cube< casacore::Bool > &modflagcube)
 
casacore::Bool storeMovingSourceState (casacore::String &error, casacore::RecordInterface &outRecord)
 Save/Recover some elements of state of ftmachine in/from record. More...
 
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...
 
casacore::Bool recoverMovingSourceState (casacore::String &error, const casacore::RecordInterface &inRecord)
 
casacore::Matrix
< casacore::Double
negateUV (const vi::VisBuffer2 &vb)
 
virtual void findGridSector (const casacore::Int &nxp, const casacore::Int &nyp, const casacore::Int &ixsub, const casacore::Int &iysub, const casacore::Int &minx, const casacore::Int &miny, const casacore::Int &icounter, casacore::Int &x0, casacore::Int &y0, casacore::Int &nxsub, casacore::Int &nysub, const casacore::Bool linear)
 
virtual void tweakGridSector (const casacore::Int &nx, const casacore::Int &ny, const casacore::Int &ixsub, const casacore::Int &iysub)
 
void initSourceFreqConv ()
 
void shiftFreqToSource (casacore::Vector< casacore::Double > &freqs)
 

Additional Inherited Members

- Public Types inherited from casa::refim::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::refim::AWProjectFT
static ATermcreateTelescopeATerm (const casacore::String &telescopeName, const casacore::Bool &isATermOn)
 
static casacore::CountedPtr
< ConvolutionFunction
makeCFObject (const casacore::String &telescopeName, const casacore::Bool aTermOn, const casacore::Bool psTermOn, const casacore::Bool wTermOn, const casacore::Bool mTermOn, const casacore::Bool wBAWP, const casacore::Bool conjBeams)
 
- Static Public Member Functions inherited from casa::refim::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::refim::AWProjectFT
CFBStruct cfbst_pub
 
casacore::Vector
< casacore::Double
uvScale
 Image Scaling and offset. More...
 
casacore::Vector
< casacore::Double
uvOffset
 
- Public Attributes inherited from casa::refim::FTMachine
casacore::Bool isDryRun
 
- Protected Attributes inherited from casa::refim::AWProjectWBFT
casacore::Bool avgPBReady_p
 
casacore::Bool resetPBs_p
 
casacore::Bool wtImageFTDone_p
 
- Protected Attributes inherited from casa::refim::AWProjectFT
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 More...
 
casacore::CountedPtr
< casacore::Lattice
< casacore::Complex > > 
lattice
 Lattice. More...
 
casacore::Float maxAbsData
 
casacore::IPosition centerLoc
 Useful IPositions. More...
 
casacore::IPosition offsetLoc
 
casacore::MDirection::ConvertpointingToImage
 // Image Scaling and offset casacore::Vector<casacore::Double> uvScale, uvOffset; More...
 
casacore::Bool usezero_p
 Grid/degrid zero spacing points? More...
 
casacore::Int convSampling
 casacore::CountedPtr<ConvolutionFunction> telescopeConvFunc_p; CFStore cfs_p, cfwts_p; casacore::Array<casacore::Complex> convFunc_p, convWeights_p; More...
 
casacore::Int wConvSize
 
casacore::Int lastIndex_p
 
casacore::CountedPtr
< casacore::ImageInterface
< casacore::Float > > 
avgPB_p
 The average PB for sky image normalization. More...
 
casacore::CountedPtr
< casacore::ImageInterface
< casacore::Complex > > 
avgPBSq_p
 
casacore::Int maxConvSupport
 No. More...
 
casacore::CountedPtr
< SolvableVisJones
epJ_p
 Percentage of the peak of the PB after which the image is set to zero. More...
 
casacore::Double sigma
 
casacore::Int Nant_p
 
casacore::Int doPointing
 
casacore::Bool doPBCorrection
 
casacore::Bool makingPSF
 
casacore::Bool conjBeams_p
 
ParAngleChangeDetector paChangeDetector
 casacore::CountedPtr<CFCache> cfCache_p; More...
 
casacore::Double rotateOTFPAIncr_p
 
casacore::Double computePAIncr_p
 
casacore::Unit Second
 
casacore::Unit Radian
 
casacore::Unit Day
 
casacore::Array< casacore::Floatl_offsets
 
casacore::Array< casacore::Floatm_offsets
 
casacore::Vector< casacore::FloatpbPeaks
 
casacore::Vector< casacore::FloatpaList
 
casacore::Double currentCFPA
 
casacore::Double cfRefFreq_p
 
casacore::Double imRefFreq_p
 
casacore::Float lastPAUsedForWtImg
 
casacore::Bool pbNormalized_p
 
casacore::Vector< casacore::BoolpaNdxProcessed_p
 
casacore::CountedPtr
< VisibilityResamplerBase
visResampler_p
 AWVisResampler visResampler_p;. More...
 
casacore::Int sensitivityPatternQualifier_p
 
casacore::String sensitivityPatternQualifierStr_p
 
CFStore rotatedConvFunc_p
 
casacore::Vector< casacore::IntConjCFMap_p
 casacore::CountedPtr<CFStore2> cfs2_p, cfwts2_p; More...
 
casacore::Vector< casacore::IntCFMap_p
 
casacore::Timer timer_p
 
casacore::Double runTime1_p
 
PolOuterProduct::MuellerType muellerType_p
 
PhaseGrad phaseGrad_p
 
casacore::Int previousSPWID_p
 
casacore::CountedPtr
< refim::FTMachine
self_p
 
casacore::CountedPtr
< refim::VB2CFBMap
vb2CFBMap_p
 
- Protected Attributes inherited from casa::refim::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::String ephemTableName_p
 
casacore::MDirection firstMovingDir_p
 
casacore::MVDirection movingDirShift_p
 This will hold the angular difference between movingDir and firstMovingDir with the frame conversion done properly etc. More...
 
casacore::Double distance_p
 
casacore::uInt nAntenna_p
 
casacore::Int lastFieldId_p
 
casacore::Int lastMSId_p
 
casacore::CountedPtr
< casacore::ROMSColumns
romscol_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 isPseudoI_p
 Stokes pseudo I only? single parallel flagged will be allowed. More...
 
casacore::MPosition mLocation_p
 Default Position used for phase rotations. More...
 
casacore::Bool doUVWRotation_p
 Set if uvwrotation is necessary. More...
 
casacore::Vector< casacore::IntnVisChan_p
 
setup multiple spectral window for cubes

casacore::Block <casacore::Vector <casacore::Int> > multiChanMap_p; casacore::Vector<casacore::Int> selectedSpw_p; More...

 
casacore::SpectralCoordinate spectralCoord_p
 Private variables needed for spectral frame conversion. More...
 
casacore::Bool freqFrameValid_p
 casacore::Vector<casacore::Bool> doConversion_p; More...
 
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...
 
casacore::CountedPtr
< VisBufferUtil
vbutil_p
 
casacore::Double phaseCenterTime_p
 
casacore::Int doneThreadPartition_p
 Some parameters and helpers for multithreaded gridders. More...
 
casacore::Vector< casacore::Intxsect_p
 
casacore::Vector< casacore::Intysect_p
 
casacore::Vector< casacore::Intnxsect_p
 
casacore::Vector< casacore::Intnysect_p
 
casacore::CountedPtr
< refim::BriggsCubeWeightor
briggsWeightor_p
 
casacore::MRadialVelocity::Convert obsvelconv_p
 moving source spectral frame stuff More...
 
casacore::MeasTable::Types mtype_p
 
FFT2D ft_p
 

Detailed Description

Definition at line 40 of file AWProjectWBFTNew.h.

Constructor & Destructor Documentation

casa::refim::AWProjectWBFTNew::AWProjectWBFTNew ( casacore::Int  nFacets,
casacore::Long  cachesize,
casacore::CountedPtr< CFCache > &  cfcache,
casacore::CountedPtr< ConvolutionFunction > &  cf,
casacore::CountedPtr< VisibilityResamplerBase > &  visResampler,
casacore::Bool  applyPointingOffset = true,
casacore::Bool  doPBCorr = true,
casacore::Int  tilesize = 16,
casacore::Float  paSteps = 5.0,
casacore::Float  pbLimit = 5e-4,
casacore::Bool  usezero = false,
casacore::Bool  conjBeams_p = true,
casacore::Bool  doublePrecGrid = false 
)
inline

Definition at line 43 of file AWProjectWBFTNew.h.

casa::refim::AWProjectWBFTNew::AWProjectWBFTNew ( const casacore::RecordInterface stateRec)
inline

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

Definition at line 59 of file AWProjectWBFTNew.h.

casa::refim::AWProjectWBFTNew::~AWProjectWBFTNew ( )
inline

Definition at line 66 of file AWProjectWBFTNew.h.

Member Function Documentation

FTMachine* casa::refim::AWProjectWBFTNew::cloneFTM ( )
virtual

clone copy should make it pure virtual forcing every ftm to have a cloner

Reimplemented from casa::refim::FTMachine.

void casa::refim::AWProjectWBFTNew::ftWeightImage ( casacore::Lattice< casacore::Complex > &  wtImage,
const casacore::Matrix< casacore::Float > &  sumWt,
const casacore::Bool doFFTNorm 
)
protected
virtual casacore::String casa::refim::AWProjectWBFTNew::name ( ) const
inlinevirtual

Copy constructor

AWProjectWBFTNew(const AWProjectWBFTNew &other):AWProjectWBFT() {operator=(other);};

Reimplemented from casa::refim::AWProjectWBFT.

Definition at line 64 of file AWProjectWBFTNew.h.

virtual void casa::refim::AWProjectWBFTNew::setDryRun ( casacore::Bool  val)
inlinevirtual

cerr << "###### " << isDryRun << endl;

Reimplemented from casa::refim::FTMachine.

Definition at line 71 of file AWProjectWBFTNew.h.

References casa::refim::FTMachine::isDryRun.

virtual casacore::Bool casa::refim::AWProjectWBFTNew::useWeightImage ( )
inlinevirtual

All FTMachines that fill weightimage, need to set this.

TODO : Make this pure virtual.

Reimplemented from casa::refim::FTMachine.

Definition at line 70 of file AWProjectWBFTNew.h.


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