casa
5.7.0-16
|
#include <AWProjectWBFT.h>
Public Member Functions | |
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... | |
AWProjectWBFT & | operator= (const AWProjectWBFT &other) |
Assignment operator. More... | |
~AWProjectWBFT () | |
virtual casacore::String | name () const |
Return the name of the machine. More... | |
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... | |
AWProjectFT & | operator= (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 > °rid, 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 > °rid, 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) | |
FTMachine & | operator= (const FTMachine &other) |
void | setBasePrivates (const FTMachine &other) |
virtual | ~FTMachine () |
virtual FTMachine * | cloneFTM () |
clone copy should make it pure virtual forcing every ftm to have a cloner More... | |
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 | useWeightImage () |
All FTMachines that fill weightimage, need to set this. More... | |
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::MPosition & | getLocation () |
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< CFCache > | getCFCache () |
casacore::String | getCacheDir () |
virtual void | setDryRun (casacore::Bool val) |
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::Int > | channelMap (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... | |
Private Attributes | |
casacore::String | tt_pp |
casacore::Vector< casacore::Int > | fieldIds_p |
casacore::TempImage < casacore::Complex > | griddedWeights |
casacore::TempImage < casacore::DComplex > | griddedWeights_D |
CFStore | rotatedCFWts_p |
casacore::CountedPtr < VisibilityResamplerBase > | visResamplerWt_p |
casacore::Bool | oneTimeMessage_p |
// These ugly methods (ugly due to their flirtation with FORTRAN) should go! More... | |
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 ATerm * | createTelescopeATerm (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 |
Definition at line 42 of file AWProjectWBFT.h.
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.
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::AWProjectWBFT::AWProjectWBFT | ( | const casacore::RecordInterface & | stateRec | ) |
Construct from a casacore::Record containing the AWProjectWBFT state.
|
inline |
|
inline |
Definition at line 75 of file AWProjectWBFT.h.
|
inlinevirtual |
Returns true if accumulation during gridding to compute the average PB must be done.
Definition at line 164 of file AWProjectWBFT.h.
References avgPBReady_p.
|
virtual |
{casacore::Float tt=(pbPixValue);return (abs(tt) >= pbLimit)?tt:1.0;};
{casacore::Float tt=sqrt(pbPixValue);return (abs(tt) >= pbLimit)?tt:1.0;};
Reimplemented from casa::refim::AWProjectFT.
|
virtual |
casacore::Bool changed(const VisBuffer& vb) {return vpSJ->changed(vb,1);}; casacore::Bool changed(const VisBuffer& vb) {return false;}
Reimplemented from casa::refim::AWProjectFT.
|
protected |
|
virtual |
Method used to make normalized image from gridded visibilites.
This calls makeSensitivityImage() to make the sensitivity image and AWProjectFT::getImage() to make the image from gridded visibilites. AWProjectFT::getImage() internally calls normalizeImage() which uses the sensitivty image computed by makeSensitivtyImage().
Reimplemented from casa::refim::AWProjectFT.
|
virtual |
Initialize transform to Sky plane: initializes the image.
Reimplemented from casa::refim::AWProjectFT.
|
virtual |
This method is called from AWProjectFT to compute the sensitivity image by accumulating in the image domain (i.e.
directly accumulate the Primay Beam functions). This is called from findConvFunction() so that sensitivity pattern is also pre-computed along with the convolution functions. This in-turn calls the ATerm::makeAverageResponse().
For AWProjectWBFT class of FTMachines, this just issues a log message indicating that this is only setting up things for accumulation of weight images in the first gridding cycle. The actual sensitivity patterns are computed by overloaded function below.
Reimplemented from casa::refim::AWProjectFT.
|
virtual |
void casa::refim::AWProjectWBFT::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.
AWProjectFT::makeSensitivityImage() is overloaded in AWProjectWBFT and only issues a log message.
The following method is used to Fourier transform normalize the accumulated weight images. doFFTNorm when true, the FFT normalization (by pixel volume) is also done.
void casa::refim::AWProjectWBFT::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 |
||
) |
|
inlinevirtual |
Return the name of the machine.
Reimplemented from casa::refim::AWProjectFT.
Reimplemented in casa::refim::AWProjectWBFTNew.
Definition at line 77 of file AWProjectWBFT.h.
|
virtual |
Reimplemented from casa::refim::AWProjectFT.
|
inlinevirtual |
Reimplemented from casa::refim::AWProjectFT.
Definition at line 83 of file AWProjectWBFT.h.
AWProjectWBFT& casa::refim::AWProjectWBFT::operator= | ( | const AWProjectWBFT & | other | ) |
Assignment operator.
Referenced by AWProjectWBFT().
|
inlinevirtual |
Method used to convert the pixel value of the PB image, passed as pbPixValue, to a value used for PB-normalization.
Typically, this will depend on the units of the "PB image" constructed by the makeSensitivtyImage() methods. pbLimit is the fractional pb-gain below which imaging is not required (this value is typically the user-defined parameter in the private member variable pbLimit_p).
Reimplemented from casa::refim::AWProjectFT.
Definition at line 144 of file AWProjectWBFT.h.
|
protected |
virtual void resampleGridToData(VBStore& vbs, const VisBuffer2& vb);
|
protectedvirtual |
Reimplemented from casa::refim::AWProjectFT.
|
protectedvirtual |
Reimplemented from casa::refim::AWProjectFT.
|
virtual |
virtual void setMiscInfo(const casacore::Int qualifier) {sensitivityPatternQualifier_p=qualifier;} {qualifier_p = qualifier;taylorQualifier_p = "_MFS_"+casacore::String::toString(qualifier_p)+"_";};
virtual void ComputeResiduals(VisBuffer2&vb, casacore::Bool useCorrected) {};
Reimplemented from casa::refim::FTMachine.
|
inline |
Definition at line 155 of file AWProjectWBFT.h.
References casa::refim::FTMachine::mLocation_p.
|
inlinevirtual |
Reimplemented from casa::refim::AWProjectFT.
Definition at line 157 of file AWProjectWBFT.h.
|
protected |
Definition at line 189 of file AWProjectWBFT.h.
Referenced by computeAvgPB().
|
private |
Definition at line 193 of file AWProjectWBFT.h.
|
private |
Definition at line 194 of file AWProjectWBFT.h.
|
private |
Definition at line 195 of file AWProjectWBFT.h.
|
private |
//
These ugly methods (ugly due to their flirtation with FORTRAN) should go!
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); 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); 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, 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);
Definition at line 249 of file AWProjectWBFT.h.
|
protected |
Definition at line 189 of file AWProjectWBFT.h.
|
private |
Definition at line 196 of file AWProjectWBFT.h.
|
private |
Definition at line 192 of file AWProjectWBFT.h.
|
private |
Definition at line 197 of file AWProjectWBFT.h.
|
protected |
Definition at line 189 of file AWProjectWBFT.h.