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 VisBuffer &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 VisBuffer &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 (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) |
In AWProjectWBFT and its derivatives, sensitivity image is computed by accumulating weight functions (images) during the first gridding cycle. More... | |
virtual 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 VisBuffer &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::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 VisBuffer &vb) |
Vectorized version of initializeToVis. More... | |
virtual void | initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const VisBuffer &vb) |
Initialize transform to Visibility plane. 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 > °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 (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 > °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 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... | |
virtual void | makeImage (FTMachine::Type, ROVisibilityIterator &, casacore::ImageInterface< casacore::Complex > &, casacore::Matrix< casacore::Float > &) |
Make the entire image using a ROVisIter. More... | |
void | makeImage (FTMachine::Type type, VisSet &vs, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight) |
Make the entire image. 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 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 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 VisBuffer &vb, const casacore::Vector< casacore::Int > cfPolMap, casacore::Vector< casacore::Int > &conjPolMap) |
void | makeCFPolMap (const VisBuffer &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 (VisBuffer &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) |
Public Member Functions inherited from casa::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 the default cloner clones via a Record copy 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::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 (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... | |
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... | |
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 VisBuffer &vb) |
Has this operator changed since the last application? 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::MPosition & | getLocation () |
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 () |
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 () |
Private Attributes | |
casacore::String | tt_pp |
casacore::Vector< casacore::Int > | fieldIds_p |
casacore::TempImage < casacore::Complex > | griddedWeights |
casacore::TempImage < casacore::Complex > | griddedConjWeights |
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::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::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::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::AWProjectFT | |
CFBStruct | cfbst_pub |
casacore::Vector < casacore::Double > | uvScale |
Image Scaling and offset. More... | |
casacore::Vector < casacore::Double > | uvOffset |
Public Attributes inherited from casa::FTMachine | |
casacore::Bool | isDryRun |
Definition at line 41 of file AWProjectWBFT.h.
casa::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::AWProjectWBFT::AWProjectWBFT | ( | const casacore::RecordInterface & | stateRec | ) |
Construct from a casacore::Record containing the AWProjectWBFT state.
|
inline |
|
inline |
Definition at line 74 of file AWProjectWBFT.h.
|
inlinevirtual |
Returns true if accumulation during gridding to compute the average PB must be done.
Reimplemented in casa::MultiTermAWProjectWBFT.
Definition at line 159 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::AWProjectFT.
|
virtual |
casacore::Bool changed(const VisBuffer& vb) {return vpSJ->changed(vb,1);}; casacore::Bool changed(const VisBuffer& vb) {return false;}
Reimplemented from casa::AWProjectFT.
|
protectedvirtual |
Reimplemented in casa::AWProjectWBFTNew.
|
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::AWProjectFT.
Reimplemented in casa::MultiTermAWProjectWBFT.
|
virtual |
Initialize transform to Sky plane: initializes the image.
Reimplemented from casa::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::AWProjectFT.
|
virtual |
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.
Reimplemented from casa::AWProjectFT.
Reimplemented in casa::MultiTermAWProjectWBFT.
|
virtual |
|
inlinevirtual |
Return the name of the machine.
Reimplemented from casa::AWProjectFT.
Reimplemented in casa::MultiTermAWProjectWBFT, and casa::AWProjectWBFTNew.
Definition at line 76 of file AWProjectWBFT.h.
|
virtual |
Reimplemented from casa::AWProjectFT.
|
inlinevirtual |
Reimplemented from casa::AWProjectFT.
Reimplemented in casa::MultiTermAWProjectWBFT.
Definition at line 82 of file AWProjectWBFT.h.
AWProjectWBFT& casa::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::AWProjectFT.
Definition at line 139 of file AWProjectWBFT.h.
|
protected |
virtual void resampleGridToData(VBStore& vbs, const VisBuffer& vb);
|
protectedvirtual |
Reimplemented from casa::AWProjectFT.
|
protectedvirtual |
Reimplemented from casa::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(VisBuffer&vb, casacore::Bool useCorrected) {};
Reimplemented from casa::FTMachine.
|
inline |
Definition at line 150 of file AWProjectWBFT.h.
References casa::FTMachine::mLocation_p.
|
inlinevirtual |
Reimplemented from casa::AWProjectFT.
Definition at line 152 of file AWProjectWBFT.h.
|
protected |
Definition at line 182 of file AWProjectWBFT.h.
Referenced by casa::MultiTermAWProjectWBFT::computeAvgPB(), and computeAvgPB().
|
private |
Definition at line 186 of file AWProjectWBFT.h.
|
private |
Definition at line 187 of file AWProjectWBFT.h.
|
private |
Definition at line 187 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, 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); 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);
Definition at line 241 of file AWProjectWBFT.h.
|
protected |
Definition at line 182 of file AWProjectWBFT.h.
|
private |
Definition at line 188 of file AWProjectWBFT.h.
|
private |
Definition at line 185 of file AWProjectWBFT.h.
|
private |
Definition at line 189 of file AWProjectWBFT.h.
|
protected |
Definition at line 182 of file AWProjectWBFT.h.