casa
5.7.0-16
|
defines interface for the Fourier Transform Machine More...
#include <FTMachine.h>
Public Types | |
enum | Type { OBSERVED, MODEL, CORRECTED, RESIDUAL, PSF, COVERAGE, N_types, DEFAULT } |
Types of known Images that may be made using the makeImage method. More... | |
Public Member Functions | |
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 | initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const vi::VisBuffer2 &vb)=0 |
Initialize transform to Visibility plane. More... | |
virtual void | initializeToVisNew (const vi::VisBuffer2 &vb, casacore::CountedPtr< SIImageStore > imstore) |
virtual void | finalizeToVis ()=0 |
Finalize transform to Visibility plane This is mostly a no-op, and is not-even called from CubeSkyEquation. More... | |
virtual void | initializeToSky (casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight, const vi::VisBuffer2 &vb)=0 |
Note : No vectorized form of finalizeToVis yet.... More... | |
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 ()=0 |
Finalize transform to Sky plane. 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 | get (vi::VisBuffer2 &vb, casacore::Int row=-1)=0 |
More... | |
virtual void | put (const vi::VisBuffer2 &vb, casacore::Int row=-1, casacore::Bool dopsf=false, refim::FTMachine::Type type=refim::FTMachine::OBSERVED)=0 |
Put coherence to grid. More... | |
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 casacore::ImageInterface < casacore::Complex > & | getImage (casacore::Matrix< casacore::Float > &, casacore::Bool normalize=true)=0 |
Get the final image. More... | |
virtual const casacore::CountedPtr < refim::ConvolutionFunction > & | getAWConvFunc () |
virtual void | findConvFunction (const casacore::ImageInterface< casacore::Complex > &, const vi::VisBuffer2 &) |
virtual void | getWeightImage (casacore::ImageInterface< casacore::Float > &weightImage, casacore::Matrix< casacore::Float > &weights)=0 |
Get the final weights image. More... | |
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... | |
virtual casacore::Bool | isFourier () |
Can this FTMachine be represented by Fourier convolutions? 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 casacore::String | name () const =0 |
Return the name of the machine. 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 | reset () |
reset stuff in an FTMachine More... | |
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 | setMiscInfo (const casacore::Int qualifier)=0 |
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 | setCanComputeResiduals (casacore::Bool &b) |
virtual casacore::Bool | canComputeResiduals () |
virtual void | ComputeResiduals (vi::VisBuffer2 &vb, casacore::Bool useCorrected)=0 |
Make the VB and VBStore interefaces for the interim re-factoring work. More... | |
virtual casacore::Float | getPBLimit () |
void | setnumthreads (casacore::Int n) |
virtual void ComputeResiduals(VBStore& vb)=0; get and set numthreads More... | |
casacore::Int | getnumthreads () |
virtual void | setCFCache (casacore::CountedPtr< CFCache > &cfc, const casacore::Bool resetCFC=true) |
casacore::CountedPtr< CFCache > | getCFCache () |
casacore::String | getCacheDir () |
virtual void | setDryRun (casacore::Bool val) |
virtual casacore::Bool | dryRun () |
virtual casacore::Bool | isUsingCFCache () |
virtual const casacore::CountedPtr < refim::FTMachine > & | getFTM2 (const casacore::Bool) |
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... | |
Static Public Member Functions | |
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 | |
casacore::Bool | isDryRun |
Protected Member Functions | |
casacore::LogIO & | logIO () |
virtual void | initMaps (const vi::VisBuffer2 &vb) |
virtual void | initPolInfo (const vi::VisBuffer2 &vb) |
virtual void | ok () |
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) |
Private Member Functions | |
void | swapyz (casacore::Cube< casacore::Complex > &out, const casacore::Cube< casacore::Complex > &in) |
Some temporary wasteful function for swapping axes because we don't Interpolation along the second axis...will need to implement interpolation on y axis of a cube. More... | |
void | swapyz (casacore::Cube< casacore::Complex > &out, const casacore::Cube< casacore::Bool > &outFlag, const casacore::Cube< casacore::Complex > &in) |
void | swapyz (casacore::Cube< casacore::Bool > &out, const casacore::Cube< casacore::Bool > &in) |
void | convUVW (casacore::Double &dphase, casacore::Vector< casacore::Double > &thisrow) |
Friends | |
class | VisModelData |
class | MultiTermFT |
class | MultiTermFTNew |
class | BriggsCubeWeightor |
defines interface for the Fourier Transform Machine
Public interface
FTMachine is a Machine for Fourier Transforms
The SkyEquation needs to be able to perform Fourier transforms on visibility data. FTMachine allows efficient Fourier Transform processing using a VisBuffer which encapsulates a chunk of visibility (typically all baselines for one time) together with all the information needed for processing (e.g. UVW coordinates).
A simple example of a FTMachine is found in GridFT. See the example for SkyModel.
Define an interface to allow efficient processing of chunks of visibility data
Note that the image must be Complex. It must contain the casacore::Complex casacore::Stokes values (e.g. RR,RL,LR,LL). FTMachine uses the image coordinate system to determine mappings between the polarization and frequency values in the casacore::PagedImage and in the VisBuffer.
Definition at line 122 of file FTMachine.h.
Types of known Images that may be made using the makeImage method.
Enumerator | |
---|---|
OBSERVED | |
MODEL | |
CORRECTED | |
RESIDUAL | |
PSF | |
COVERAGE | |
N_types | |
DEFAULT |
Definition at line 127 of file FTMachine.h.
casa::refim::FTMachine::FTMachine | ( | ) |
casa::refim::FTMachine::FTMachine | ( | casacore::CountedPtr< CFCache > & | cfcache, |
casacore::CountedPtr< ConvolutionFunction > & | cfctor | ||
) |
casa::refim::FTMachine::FTMachine | ( | const FTMachine & | other | ) |
|
virtual |
|
inlinevirtual |
Definition at line 346 of file FTMachine.h.
References canComputeResiduals_p.
|
virtual |
Has this operator changed since the last application?
Reimplemented in casa::refim::SDGrid.
casacore::Bool casa::refim::FTMachine::changedSkyJonesLogic | ( | const vi::VisBuffer2 & | vb, |
casacore::Bool & | firstRow, | ||
casacore::Bool & | internalRow | ||
) |
casacore::Vector<casacore::Int> casa::refim::FTMachine::channelMap | ( | const vi::VisBuffer2 & | vb | ) |
|
virtual |
clone copy should make it pure virtual forcing every ftm to have a cloner
Reimplemented in casa::refim::MultiTermFTNew, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SetJyGridFT, casa::refim::AWProjectWBFTNew, and casa::refim::MosaicFTNew.
|
pure virtual |
Make the VB and VBStore interefaces for the interim re-factoring work.
Finally removed the VB interface.
Implemented in casa::refim::AWProjectFT, casa::refim::MosaicFT, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SDGrid, and casa::refim::MultiTermFTNew.
|
private |
|
virtual |
|
virtual |
return whether the ftmachine is using a double precision grid
|
inlinevirtual |
Definition at line 362 of file FTMachine.h.
References isDryRun.
|
virtual |
utility function that returns a rough estimate of memory needed.
Reimplemented in casa::refim::GridFT, and casa::refim::MultiTermFTNew.
|
pure virtual |
Finalize transform to Sky plane.
Implemented in casa::refim::AWProjectFT, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SDGrid, casa::refim::AWProjectWBFT, and casa::refim::MultiTermFTNew.
|
inlinevirtual |
Definition at line 188 of file FTMachine.h.
|
virtual |
Reimplemented in casa::refim::MultiTermFTNew.
|
pure virtual |
Finalize transform to Visibility plane This is mostly a no-op, and is not-even called from CubeSkyEquation.
Implemented in casa::refim::AWProjectFT, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SDGrid, casa::refim::MosaicFT, and casa::refim::MultiTermFTNew.
|
inlinevirtual |
Reimplemented in casa::refim::AWProjectFT, casa::refim::WProjectFT, and casa::refim::MosaicFT.
Definition at line 258 of file FTMachine.h.
|
protectedvirtual |
|
virtual |
Reimplemented in casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::MosaicFT, casa::refim::MultiTermFTNew, and casa::refim::SetJyGridFT.
|
pure virtual |
Get actual coherence from grid
Implemented in casa::refim::AWProjectFT, casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::SDGrid, casa::refim::MosaicFT, casa::refim::MultiTermFTNew, and casa::refim::SetJyGridFT.
|
inlinevirtual |
Definition at line 256 of file FTMachine.h.
References convFuncCtor_p.
|
inline |
Definition at line 359 of file FTMachine.h.
References cfCache_p.
|
inline |
Definition at line 358 of file FTMachine.h.
References cfCache_p.
|
inlinevirtual |
Get a flux (divide by this to get a flux density correct image) image if there is one.
Reimplemented in casa::refim::MosaicFT.
Definition at line 265 of file FTMachine.h.
|
inlinevirtual |
Reimplemented in casa::refim::AWProjectFT, and casa::refim::MultiTermFTNew.
Definition at line 365 of file FTMachine.h.
void casa::refim::FTMachine::getGrid | ( | casacore::Array< T > & | thegrid | ) |
Get the gridded visibilities or weight
|
pure virtual |
Get the final image.
Implemented in casa::refim::AWProjectFT, casa::refim::GridFT, casa::refim::SDGrid, casa::refim::WProjectFT, casa::refim::MosaicFT, casa::refim::MultiTermFTNew, casa::refim::AWProjectWBFT, and casa::refim::MosaicFTNew.
void casa::refim::FTMachine::getImagingWeight | ( | casacore::Matrix< casacore::Float > & | imwght, |
const vi::VisBuffer2 & | vb | ||
) |
|
protectedvirtual |
Interpolate visibilities to be degridded upon.
|
virtual |
casacore::Int casa::refim::FTMachine::getnumthreads | ( | ) |
|
inlinevirtual |
Reimplemented in casa::refim::AWProjectFT.
Definition at line 351 of file FTMachine.h.
References pbLimit_p.
|
inline |
Definition at line 376 of file FTMachine.h.
References phaseCenterTime_p.
|
virtual |
|
inline |
Definition at line 378 of file FTMachine.h.
References sumWeight.
|
pure virtual |
Get the final weights image.
Implemented in casa::refim::AWProjectFT, casa::refim::SDGrid, casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::MosaicFT, casa::refim::MultiTermFTNew, and casa::refim::MosaicFTNew.
void casa::refim::FTMachine::girarUVW | ( | casacore::Matrix< casacore::Double > & | uvw, |
casacore::Vector< casacore::Double > & | dphase, | ||
const vi::VisBuffer2 & | vb | ||
) |
rotate with facetting style rephasing..for multifield mosaic
|
protectedvirtual |
check if image is big enough for gridding
|
virtual |
This function has to be called after initMaps to initialize Briggs Cube weighting scheme
Reimplemented in casa::refim::MultiTermFTNew.
|
pure virtual |
Note : No vectorized form of finalizeToVis yet....
Initialize transform to Sky plane
Implemented in casa::refim::AWProjectFT, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SDGrid, casa::refim::MosaicFT, casa::refim::AWProjectWBFT, and casa::refim::MultiTermFTNew.
|
virtual |
Reimplemented in casa::refim::MultiTermFTNew.
|
pure virtual |
Initialize transform to Visibility plane.
Implemented in casa::refim::AWProjectFT, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SDGrid, casa::refim::MosaicFT, casa::refim::SetJyGridFT, and casa::refim::MultiTermFTNew.
|
virtual |
Reimplemented in casa::refim::MultiTermFTNew.
|
protectedvirtual |
Reimplemented in casa::refim::MultiTermFTNew.
|
protectedvirtual |
|
protected |
|
protectedvirtual |
degridded data interpolated back onto visibilities
|
protectedvirtual |
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
|
inlinevirtual |
Can this FTMachine be represented by Fourier convolutions?
Reimplemented in casa::refim::AWProjectFT, casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::MosaicFT, and casa::refim::MultiTermFTNew.
Definition at line 301 of file FTMachine.h.
|
inlinevirtual |
Definition at line 239 of file FTMachine.h.
References sj_p.
|
inlinevirtual |
Definition at line 238 of file FTMachine.h.
References sj_p.
|
inlinevirtual |
Reimplemented in casa::refim::MultiTermFTNew.
Definition at line 363 of file FTMachine.h.
References cfCache_p.
|
static |
helper function for openmp to call...no private dependency
|
protected |
|
virtual |
Make the entire image Make the entire image using a ROVisIter.
Reimplemented in casa::refim::GridFT, casa::refim::SDGrid, casa::refim::WProjectFT, casa::refim::MosaicFT, and casa::refim::MultiTermFTNew.
|
protected |
redo all spw chan match especially if ms has changed underneath
|
protected |
|
protected |
|
pure virtual |
Return the name of the machine.
Implemented in casa::refim::AWProjectFT, casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::SDGrid, casa::refim::MosaicFT, casa::refim::MultiTermFTNew, casa::refim::SetJyGridFT, casa::refim::AWProjectWBFT, casa::refim::MosaicFTNew, and casa::refim::AWProjectWBFTNew.
|
protected |
|
inlinevirtual |
Reimplemented in casa::refim::GridFT, casa::refim::SDGrid, casa::refim::WProjectFT, and casa::refim::MosaicFT.
Definition at line 224 of file FTMachine.h.
|
virtual |
|
protectedvirtual |
Reimplemented in casa::refim::AWProjectFT, casa::refim::MosaicFT, casa::refim::WProjectFT, casa::refim::GridFT, and casa::refim::SDGrid.
Referenced by setBasePrivates().
|
pure virtual |
Put coherence to grid.
Implemented in casa::refim::AWProjectFT, casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::SDGrid, casa::refim::MosaicFT, and casa::refim::MultiTermFTNew.
Referenced by put().
|
inlinevirtual |
Non const vb version - so that weights can be modified in-place Currently, used only by MultiTermFT.
Reimplemented in casa::refim::MultiTermFTNew.
Definition at line 206 of file FTMachine.h.
References put(), and casa::type().
|
protected |
void casa::refim::FTMachine::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.
|
virtual |
reset stuff in an FTMachine
Reimplemented in casa::refim::AWProjectFT, and casa::refim::MosaicFT.
void casa::refim::FTMachine::rotateUVW | ( | casacore::Matrix< casacore::Double > & | uvw, |
casacore::Vector< casacore::Double > & | dphase, | ||
const vi::VisBuffer2 & | vb | ||
) |
Rotate the uvw from the observed phase center to the desired phase center.
|
protected |
helper to save Measures in a record
|
inline |
Definition at line 147 of file FTMachine.h.
References operator=().
|
inline |
Functions associated with Briggs weighting for cubes.
Definition at line 381 of file FTMachine.h.
References briggsWeightor_p.
|
inlinevirtual |
Definition at line 345 of file FTMachine.h.
References canComputeResiduals_p.
|
virtual |
Reimplemented in casa::refim::MultiTermFTNew, and casa::refim::AWProjectWBFT.
|
inlinevirtual |
Reimplemented in casa::refim::MultiTermFTNew, and casa::refim::AWProjectWBFTNew.
Definition at line 361 of file FTMachine.h.
References isDryRun.
casacore::Bool casa::refim::FTMachine::setFrameValidity | ( | casacore::Bool | validFrame | ) |
set otf spectral frame transform is on or off;
|
virtual |
set frequency interpolation type
|
virtual |
|
virtual |
set and get the location used for frame
Reimplemented in casa::refim::MultiTermFTNew.
|
pure virtual |
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.
Implemented in casa::refim::AWProjectFT, casa::refim::MosaicFT, casa::refim::WProjectFT, casa::refim::GridFT, casa::refim::SDGrid, and casa::refim::MultiTermFTNew.
|
virtual |
set a moving source aka planets or comets => adjust phase center on the fly for gridding
Reimplemented in casa::refim::MultiTermFTNew.
|
virtual |
Reimplemented in casa::refim::MultiTermFTNew.
|
inlinevirtual |
To make sure no padding is used in certain gridders.
Reimplemented in casa::refim::GridFT, and casa::refim::MultiTermFTNew.
Definition at line 310 of file FTMachine.h.
void casa::refim::FTMachine::setnumthreads | ( | casacore::Int | n | ) |
virtual void ComputeResiduals(VBStore& vb)=0; get and set numthreads
|
inline |
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
Definition at line 375 of file FTMachine.h.
References phaseCenterTime_p, and casa::time.
|
virtual |
tell ftmachine which Pointing table column to use for Direction Mosaic or Single dish ft use this for example
|
inline |
Definition at line 369 of file FTMachine.h.
References isPseudoI_p.
|
virtual |
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.
The pointers have to be handled by the caller..no delete happening here
|
protected |
|
virtual |
|
virtual |
|
protected |
|
virtual |
|
protected |
Save/Recover some elements of state of ftmachine in/from record.
|
private |
Some temporary wasteful function for swapping axes because we don't Interpolation along the second axis...will need to implement interpolation on y axis of a cube.
|
private |
|
private |
|
virtual |
Save and restore the FTMachine to and from a record.
Reimplemented in casa::refim::GridFT, casa::refim::WProjectFT, casa::refim::MosaicFT, casa::refim::MultiTermFTNew, and casa::refim::SetJyGridFT.
|
protectedvirtual |
|
inlinevirtual |
All FTMachines that fill weightimage, need to set this.
TODO : Make this pure virtual.
Reimplemented in casa::refim::MosaicFT, casa::refim::SDGrid, casa::refim::MultiTermFTNew, and casa::refim::AWProjectWBFTNew.
Definition at line 237 of file FTMachine.h.
|
friend |
Definition at line 390 of file FTMachine.h.
|
friend |
Definition at line 388 of file FTMachine.h.
|
friend |
Definition at line 389 of file FTMachine.h.
|
friend |
Definition at line 387 of file FTMachine.h.
|
protected |
Definition at line 537 of file FTMachine.h.
Referenced by setBriggsCubeWeight().
|
protected |
Definition at line 517 of file FTMachine.h.
Referenced by canComputeResiduals(), and setCanComputeResiduals().
|
protected |
Definition at line 510 of file FTMachine.h.
Referenced by getCacheDir(), getCFCache(), and isUsingCFCache().
|
protected |
Definition at line 512 of file FTMachine.h.
|
protected |
Definition at line 511 of file FTMachine.h.
|
protected |
Definition at line 508 of file FTMachine.h.
|
protected |
Definition at line 512 of file FTMachine.h.
|
protected |
Definition at line 511 of file FTMachine.h.
|
protected |
Maps of channels and polarization.
Definition at line 438 of file FTMachine.h.
|
protected |
A holder for the complex image if nobody else is keeping it.
Definition at line 531 of file FTMachine.h.
|
protected |
Definition at line 514 of file FTMachine.h.
Referenced by getAWConvFunc().
|
protected |
Definition at line 417 of file FTMachine.h.
|
protected |
Some parameters and helpers for multithreaded gridders.
Definition at line 535 of file FTMachine.h.
|
protected |
Set if uvwrotation is necessary.
Definition at line 448 of file FTMachine.h.
|
protected |
Definition at line 411 of file FTMachine.h.
|
protected |
Definition at line 507 of file FTMachine.h.
|
protected |
Definition at line 507 of file FTMachine.h.
|
protected |
Definition at line 412 of file FTMachine.h.
|
protected |
Definition at line 410 of file FTMachine.h.
|
protected |
casacore::Vector<casacore::Bool> doConversion_p;
Definition at line 499 of file FTMachine.h.
|
protected |
Definition at line 504 of file FTMachine.h.
|
protected |
Definition at line 547 of file FTMachine.h.
|
protected |
casacore::Array for non-tiled gridding These are common to most FTmachines
Definition at line 523 of file FTMachine.h.
|
protected |
Definition at line 524 of file FTMachine.h.
|
protected |
Definition at line 395 of file FTMachine.h.
|
protected |
Definition at line 500 of file FTMachine.h.
|
protected |
Definition at line 503 of file FTMachine.h.
casacore::Bool casa::refim::FTMachine::isDryRun |
Definition at line 368 of file FTMachine.h.
Referenced by dryRun(), casa::refim::AWProjectWBFTNew::setDryRun(), casa::refim::MultiTermFTNew::setDryRun(), and setDryRun().
|
protected |
Stokes pseudo I only? single parallel flagged will be allowed.
Definition at line 441 of file FTMachine.h.
Referenced by setPseudoIStokes().
|
protected |
Definition at line 421 of file FTMachine.h.
|
protected |
Definition at line 422 of file FTMachine.h.
|
protected |
Definition at line 391 of file FTMachine.h.
|
protected |
casacore::Vector of float lsrfreq needed for regridding
Definition at line 502 of file FTMachine.h.
|
protected |
Definition at line 400 of file FTMachine.h.
|
protected |
Definition at line 406 of file FTMachine.h.
|
protected |
Default Position used for phase rotations.
Definition at line 444 of file FTMachine.h.
Referenced by casa::refim::AWProjectWBFT::setObservatoryLocation(), and casa::refim::AWProjectFT::setObservatoryLocation().
|
protected |
moving source stuff
Definition at line 409 of file FTMachine.h.
|
protected |
This will hold the angular difference between movingDir and firstMovingDir with the frame conversion done properly etc.
Definition at line 415 of file FTMachine.h.
|
protected |
Definition at line 404 of file FTMachine.h.
|
protected |
Definition at line 546 of file FTMachine.h.
|
protected |
Definition at line 419 of file FTMachine.h.
|
protected |
Definition at line 435 of file FTMachine.h.
|
protected |
Definition at line 435 of file FTMachine.h.
|
protected |
Definition at line 519 of file FTMachine.h.
|
protected |
Definition at line 435 of file FTMachine.h.
|
protected |
setup multiple spectral window for cubes
casacore::Block <casacore::Vector <casacore::Int> > multiChanMap_p; casacore::Vector<casacore::Int> selectedSpw_p;
Definition at line 459 of file FTMachine.h.
|
protected |
Definition at line 435 of file FTMachine.h.
|
protected |
Sizes.
Definition at line 435 of file FTMachine.h.
|
protected |
Definition at line 536 of file FTMachine.h.
|
protected |
Definition at line 435 of file FTMachine.h.
|
protected |
Definition at line 536 of file FTMachine.h.
|
protected |
moving source spectral frame stuff
Definition at line 545 of file FTMachine.h.
|
protected |
Definition at line 527 of file FTMachine.h.
Referenced by casa::refim::AWProjectFT::getPBLimit(), and getPBLimit().
|
protected |
Definition at line 533 of file FTMachine.h.
Referenced by getPhaseCenterTime(), and setPhaseCenterTime().
|
protected |
Definition at line 398 of file FTMachine.h.
|
protected |
Definition at line 505 of file FTMachine.h.
|
protected |
Definition at line 509 of file FTMachine.h.
|
protected |
Definition at line 438 of file FTMachine.h.
Referenced by casa::refim::AWProjectFT::getPolMap().
|
protected |
Definition at line 515 of file FTMachine.h.
|
protected |
Definition at line 423 of file FTMachine.h.
|
protected |
casacore::Vector<SkyJones *> sj_p;
Definition at line 529 of file FTMachine.h.
Referenced by isSkyJonesChanged(), and isSkyJonesSet().
|
protected |
Private variables needed for spectral frame conversion.
Definition at line 497 of file FTMachine.h.
|
protected |
Definition at line 506 of file FTMachine.h.
|
protected |
Definition at line 507 of file FTMachine.h.
|
protected |
Definition at line 432 of file FTMachine.h.
Referenced by casa::refim::AWProjectFT::getSumOfCFWeights().
|
protected |
Sum of weights per polarization and per chan.
Definition at line 432 of file FTMachine.h.
Referenced by casa::refim::AWProjectFT::getSumOfWeights(), and getSumWeights().
|
protected |
Direction of desired tangent plane.
Definition at line 403 of file FTMachine.h.
|
protected |
Definition at line 518 of file FTMachine.h.
|
protected |
Use douple precision grid in gridding process.
Definition at line 425 of file FTMachine.h.
|
protected |
Definition at line 397 of file FTMachine.h.
|
protected |
Definition at line 532 of file FTMachine.h.
|
protected |
Definition at line 536 of file FTMachine.h.
|
protected |
Definition at line 536 of file FTMachine.h.