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

Performs for MeasurementSets various fixes which do not involve calibrating. This includes (in order of implementation): More...

#include <FixVis.h>

Inheritance diagram for casa::FixVis:
casa::FTMachine

Public Member Functions

 FixVis (casacore::MeasurementSet &ms, const casacore::String &dataColName=casacore::String("all"))
 Constructor. More...
 
FixVisoperator= (FixVis &other)
 Assignment (only copies reference to casacore::MS, need to reset selection etc) More...
 
 ~FixVis ()
 Destructor. More...
 
casacore::uInt setFields (const casacore::Vector< casacore::Int > &fieldIds)
 Set the required field Ids and return the # of selected fields. More...
 
Select by observationIDs (problematic at best) void setObsIDs(const casacore
 
Specifies new phase tracking
centers for the selected
fields *void 
setPhaseDirs (const casacore::Vector< casacore::MDirection > &phaseDirs)
 
void setDistances (const casacore::Vector< casacore::Double > &distances)
 Specifies distances for each selected field according to distances, which must be in m and the same order as the casacore::Vector given to setFields. More...
 
casacore::Bool calc_uvw (const casacore::String &refcode, const casacore::Bool reuse=true)
 Calculate the (u, v, w)s and store them in ms_p. More...
 
void rotateUVW (const casacore::MDirection &indir, const casacore::MDirection::Ref &newref)
 Convert the UVW column to a new reference frame by rotating the old baselines instead of calculating fresh ones. More...
 
casacore::Bool fixvis (const casacore::String &refcode)
 For things like rotation, differential aberration correction, etc., when there already is a UVW column, using FTMachine. 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 &, casacore::Bool)
 Make the VB and VBStore interefaces for the interim re-factoring work. More...
 
virtual casacore::String name () const
 Return the name of the machine. More...
 
- Public Member Functions inherited from casa::FTMachine
 FTMachine ()
 
 FTMachine (casacore::CountedPtr< CFCache > &cfcache, casacore::CountedPtr< ConvolutionFunction > &cfctor)
 
 FTMachine (const FTMachine &other)
 
FTMachineoperator= (const FTMachine &other)
 
void setBasePrivates (const FTMachine &other)
 
virtual ~FTMachine ()
 
virtual FTMachinecloneFTM ()
 clone copy the default cloner clones via a Record copy More...
 
virtual void initializeToVis (casacore::Block< casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > > &compImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &modelImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &weightImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &fluxScaleVec, casacore::Block< casacore::Matrix< casacore::Float > > &weightsVec, const VisBuffer &vb)
 Vectorized InitializeToVis. More...
 
virtual void initializeToVisNew (const VisBuffer &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void initializeToSky (casacore::Block< casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > > &compImageVec, casacore::Block< casacore::Matrix< casacore::Float > > &weightsVec, const VisBuffer &vb, const casacore::Bool dopsf=false)
 Vectorized InitializeToSky. More...
 
virtual void initializeToSkyNew (const casacore::Bool dopsf, const VisBuffer &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void finalizeToSky (casacore::ImageInterface< casacore::Complex > &iimage)
 
virtual void finalizeToSky (casacore::Block< casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > > &compImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &resImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &weightImageVec, casacore::PtrBlock< casacore::SubImage< casacore::Float > * > &fluxScaleVec, casacore::Bool dopsf, casacore::Block< casacore::Matrix< casacore::Float > > &weightsVec, const VisBuffer &vb)
 Vectorized finalizeToSky. More...
 
virtual void finalizeToSkyNew (casacore::Bool dopsf, const VisBuffer &vb, casacore::CountedPtr< SIImageStore > imstore)
 
virtual void put (VisBuffer &vb, casacore::Int row=-1, casacore::Bool dopsf=false, FTMachine::Type type=FTMachine::OBSERVED)
 Non const vb version - so that weights can be modified in-place Currently, used only by MultiTermFT. More...
 
virtual void correlationToStokes (casacore::ImageInterface< casacore::Complex > &compImage, casacore::ImageInterface< casacore::Float > &resImage, const casacore::Bool dopsf)
 
More...
 
virtual void stokesToCorrelation (casacore::ImageInterface< casacore::Float > &modelImage, casacore::ImageInterface< casacore::Complex > &compImage)
 
virtual void normalizeImage (casacore::ImageInterface< casacore::Float > &skyImage, casacore::Matrix< casacore::Float > &sumOfWts, casacore::ImageInterface< casacore::Float > &sensitivityImage, casacore::Bool dopsf, casacore::Float pblimit, casacore::Int normtype)
 
virtual casacore::Bool useWeightImage ()
 All FTMachines that fill weightimage, need to set this. More...
 
virtual casacore::Bool isSkyJonesSet ()
 
virtual casacore::Bool isSkyJonesChanged (VisBuffer &vb, casacore::Int row)
 
virtual void setSkyJones (casacore::Vector< casacore::CountedPtr< SkyJones > > &sj)
 Set SkyJones if image domain corrections /applycation are needed To reset the the FTMachine for stopping image based correction/applycation set in a casacore::Vector of size 0. More...
 
casacore::Bool changedSkyJonesLogic (const VisBuffer &vb, casacore::Bool &firstRow, casacore::Bool &internalRow)
 
template<typename T >
void getGrid (casacore::Array< T > &thegrid)
 
More...
 
virtual const
casacore::CountedPtr
< ConvolutionFunction > & 
getAWConvFunc ()
 
virtual void findConvFunction (const casacore::ImageInterface< casacore::Complex > &, const VisBuffer &)
 
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, VisSet &vs, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight)
 Make the entire image. More...
 
virtual void makeImage (FTMachine::Type type, ROVisibilityIterator &vi, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight)
 Make the entire image using a ROVisIter. More...
 
void girarUVW (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const VisBuffer &vb)
 
More...
 
void rotateUVW (casacore::Matrix< casacore::Double > &uvw, casacore::Vector< casacore::Double > &dphase, const VisBuffer &vb)
 
void refocus (casacore::Matrix< casacore::Double > &uvw, const casacore::Vector< casacore::Int > &ant1, const casacore::Vector< casacore::Int > &ant2, casacore::Vector< casacore::Double > &dphase, const VisBuffer &vb)
 Refocus on a finite distance. More...
 
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...
 
virtual casacore::Bool isFourier ()
 Can this FTMachine be represented by Fourier convolutions? More...
 
casacore::Bool setSpw (casacore::Vector< casacore::Int > &spw, casacore::Bool validFrame)
 set spw for cube that will be used; More...
 
virtual casacore::Bool doublePrecGrid ()
 return whether the ftmachine is using a double precision grid More...
 
virtual void setNoPadding (casacore::Bool nopad)
 To make sure no padding is used in certain gridders. More...
 
void setLocation (const casacore::MPosition &loc)
 set and get the location used for frame More...
 
casacore::MPositiongetLocation ()
 
virtual void setMovingSource (const casacore::String &sourcename)
 set a moving source aka planets or comets => adjust phase center on the fly for gridding More...
 
virtual void setMovingSource (const casacore::MDirection &mdir)
 
void setPhaseCenterTime (const casacore::Double time)
 set and get Time to calculate phasecenter -1.0 means using the time available at each iteration..this is used when the phasecenter in the field table is either a polynomial or has a ephemerides tables associated with it Using double in the units and epoch-frame of the ms(s)..caller is responsible for conversion More...
 
casacore::Double getPhaseCenterTime ()
 
virtual void reset ()
 reset stuff in an FTMachine More...
 
virtual void setFreqInterpolation (const casacore::String &method)
 set frequency interpolation type More...
 
virtual void setPointingDirColumn (const casacore::String &column="DIRECTION")
 tell ftmachine which Pointing table column to use for Direction Mosaic or Single dish ft use this for example More...
 
virtual casacore::String getPointingDirColumnInUse ()
 
virtual void setSpwChanSelection (const casacore::Cube< casacore::Int > &spwchansels)
 
virtual casacore::Cube
< casacore::Int
getSpwChanSelection ()
 
virtual void setSpwFreqSelection (const casacore::Matrix< casacore::Double > &spwfreqs)
 
virtual casacore::Matrix
< casacore::Double
getSpwFreqSelection ()
 
virtual void setCanComputeResiduals (casacore::Bool &b)
 
virtual casacore::Bool canComputeResiduals ()
 
virtual casacore::Float getPBLimit ()
 
void setnumthreads (casacore::Int n)
 virtual void ComputeResiduals(VBStore& vb)=0; get and set numthreads More...
 
casacore::Int getnumthreads ()
 
virtual void setCFCache (casacore::CountedPtr< CFCache > &cfc, const casacore::Bool resetCFC=true)
 
casacore::CountedPtr< CFCachegetCFCache ()
 
casacore::String getCacheDir ()
 
virtual void setDryRun (casacore::Bool val)
 
virtual casacore::Bool dryRun ()
 
virtual casacore::Bool isUsingCFCache ()
 

Private Member Functions

casacore::Vector< casacore::IntgetFieldIdx (const casacore::String &fields)
 Interpret field indices (casacore::MSSelection) More...
 
casacore::Bool ready_msc_p ()
 Makes sure msc_p is ready, and returns false if it fails. More...
 
void convertFieldDirs (const casacore::MDirection::Types outType)
 Convert the directions (phase tracking centers, + DELAY_DIR and REFERENCE_DIR if they start in the same frame) in the FIELD table to newFrame. More...
 
void convertFieldCols (casacore::MSFieldColumns &msfcs, const casacore::MDirection::Ref &newFrame, const casacore::Bool doAll3)
 Private worker function for convertFieldDirs(). More...
 
casacore::Bool makeSelection (const casacore::Int selectedField)
 Calls ready_msc_p() as a side effect. More...
 
void processSelected (casacore::uInt numInSel)
 Does phase tracking center and distance adjustment for mssel_p. More...
 
casacore::ImageInterface
< casacore::Complex > & 
getImage (casacore::Matrix< float > &, casacore::Bool)
 FTMachine declares a LOT of pure virtual functions which FixVis does not need. More...
 
virtual void normalizeImage (casacore::Lattice< casacore::Complex > &, const casacore::Matrix< casacore::Double > &, casacore::Lattice< casacore::Float > &, casacore::Bool)
 
void getWeightImage (casacore::ImageInterface< float > &, casacore::Matrix< float > &)
 Get the final weights image. More...
 
void get (VisBuffer &, casacore::Int)
 
More...
 
void put (const VisBuffer &, casacore::Int, casacore::Bool, FTMachine::Type)
 Put coherence to grid. More...
 
void ok ()
 casacore::Bool getRestFreq(casacore::Vector<casacore::Double>& restFreq, const casacore::Int spw, const casacore::Int fldID); void setObsInfo(casacore::ObsInfo& obsinfo); More...
 
void init ()
 
void initializeToVis (casacore::ImageInterface< casacore::Complex > &image, const VisBuffer &vb)
 Initialize transform to Visibility plane using the image as a template. More...
 
void finalizeToVis ()
 Finalize transform to Visibility plane. More...
 
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 finalizeToSky ()
 Defined here only because FTMachine declares it purely virtual. More...
 
casacore::Bool setImageField (const casacore::Int fieldid, const casacore::Bool dotrackDir=false)
 TODO?: trackDir. More...
 
casacore::Bool lock ()
 
void unlock ()
 
casacore::LogIOlogSink ()
 

Private Attributes

casacore::LogIO sink_p
 Log functions and variables. More...
 
casacore::MeasurementSet ms_p
 Initialized in ctor. More...
 
casacore::MSColumnsmsc_p
 
casacore::uInt nsel_p
 
casacore::uInt nAllFields_p
 
const casacore::uInt npix_p
 
const casacore::IPosition cimageShape_p
 
const casacore::IPosition tileShape_p
 
const casacore::TiledShape tiledShape_p
 
casacore::Bool antennaSel_p
 
casacore::Bool freqFrameValid_p
 
casacore::Vector< casacore::IntantennaId_p
 
conversions can be done (or not)

casacore::String obsString_p; // obsID selection More...

 
casacore::Vector
< casacore::String
antennaSelStr_p
 work with casacore::Vector<casacore::uInt>. More...
 
casacore::Vector
< casacore::Double
distances_p
 
casacore::Vector
< casacore::MS::PredefinedColumns
dataCols_p
 field More...
 
casacore::uInt nDataCols_p
 
casacore::uInt nchan_p
 
casacore::Vector< casacore::Intspectralwindowids_p
 
casacore::uInt lockCounter_p
 
casacore::MeasurementSet mssel_p
 Not initialized in ctor. More...
 
casacore::ObsInfo latestObsInfo_p
 
casacore::Vector< casacore::IntDDIds_p
 
casacore::Vector< casacore::IntFieldIds_p
 
casacore::Vector
< casacore::MDirection
phaseDirs_p
 
casacore::Int nSpw_p
 field More...
 
casacore::MPosition mLocation_p
 
casacore::Bool doTrackSource_p
 
casacore::Int fieldid_p
 

Additional Inherited Members

- Public Types inherited from casa::FTMachine
enum  Type {
  OBSERVED,
  MODEL,
  CORRECTED,
  RESIDUAL,
  PSF,
  COVERAGE,
  N_types,
  DEFAULT
}
 Types of known Images that may be made using the makeImage method. More...
 
- Static Public Member Functions inherited from casa::FTMachine
static void locateuvw (const casacore::Double *&uvw, const casacore::Double *&dphase, const casacore::Double *&freq, const casacore::Int &nchan, const casacore::Double *&scale, const casacore::Double *&offset, const casacore::Int &sampling, casacore::Int *&loc, casacore::Int *&off, casacore::Complex *&phasor, const casacore::Int &row, const casacore::Bool &doW=false)
 helper function for openmp to call...no private dependency More...
 
- Public Attributes inherited from casa::FTMachine
casacore::Bool isDryRun
 
- Protected Member Functions inherited from casa::FTMachine
casacore::LogIOlogIO ()
 
virtual void initMaps (const VisBuffer &vb)
 
virtual void initPolInfo (const VisBuffer &vb)
 
virtual void gridOk (casacore::Int gridsupport)
 check if image is big enough for gridding More...
 
casacore::Bool matchChannel (const casacore::Int &spw, const VisBuffer &vb)
 
casacore::Bool matchAllSpwChans (const VisBuffer &vb)
 redo all spw chan match especially if ms has changed underneath More...
 
virtual casacore::Bool interpolateFrequencyTogrid (const VisBuffer &vb, const casacore::Matrix< casacore::Float > &wt, casacore::Cube< casacore::Complex > &data, casacore::Cube< casacore::Int > &flag, casacore::Matrix< casacore::Float > &weight, FTMachine::Type type=FTMachine::OBSERVED)
 interpolate visibility data of vb to grid frequency definition flag will be set the one as described in interpolateArray1D return false if no interpolation is done...for e.g for nearest case More...
 
virtual casacore::Bool interpolateFrequencyFromgrid (VisBuffer &vb, casacore::Cube< casacore::Complex > &data, FTMachine::Type type=FTMachine::MODEL)
 degridded data interpolated back onto visibilities More...
 
virtual void getInterpolateArrays (const VisBuffer &vb, casacore::Cube< casacore::Complex > &data, casacore::Cube< casacore::Int > &flag)
 Interpolate visibilities to be degridded upon. More...
 
void setSpectralFlag (const VisBuffer &vb, casacore::Cube< casacore::Bool > &modflagcube)
 
casacore::Bool saveMeasure (casacore::RecordInterface &rec, const casacore::String &name, casacore::String &error, const casacore::Measure &ms)
 helper to save Measures in a record More...
 
- Protected Attributes inherited from casa::FTMachine
casacore::LogIO logIO_p
 
casacore::ImageInterface
< casacore::Complex > * 
image
 
casacore::UVWMachineuvwMachine_p
 
casacore::CountedPtr
< casacore::UVWMachine
phaseShifter_p
 
casacore::MeasFrame mFrame_p
 
casacore::Bool tangentSpecified_p
 Direction of desired tangent plane. More...
 
casacore::MDirection mTangent_p
 
casacore::MDirection mImage_p
 
casacore::MDirection movingDir_p
 moving source stuff More...
 
casacore::Bool fixMovingSource_p
 
casacore::MDirection firstMovingDir_p
 
casacore::Double distance_p
 
casacore::uInt nAntenna_p
 
casacore::Int lastFieldId_p
 
casacore::Int lastMSId_p
 
casacore::Bool useDoubleGrid_p
 Use douple precision grid in gridding process. More...
 
casacore::Matrix
< casacore::Double
sumWeight
 Sum of weights per polarization and per chan. More...
 
casacore::Matrix
< casacore::Double
sumCFWeight
 
casacore::Int nx
 Sizes. More...
 
casacore::Int ny
 
casacore::Int npol
 
casacore::Int nchan
 
casacore::Int nvischan
 
casacore::Int nvispol
 
casacore::Vector< casacore::IntchanMap
 Maps of channels and polarization. More...
 
casacore::Vector< casacore::IntpolMap
 
casacore::Bool isIOnly
 Is casacore::Stokes I only? iso XX,XY,YX,YY or LL,LR,RL,RR. More...
 
casacore::MPosition mLocation_p
 Default Position used for phase rotations. More...
 
casacore::Bool doUVWRotation_p
 Set if uvwrotation is necessary. More...
 
casacore::Block
< casacore::Vector
< casacore::Int > > 
multiChanMap_p
 setup multiple spectral window for cubes More...
 
casacore::Vector< casacore::IntselectedSpw_p
 
casacore::Vector< casacore::IntnVisChan_p
 
casacore::SpectralCoordinate spectralCoord_p
 Private variables needed for spectral frame conversion. More...
 
casacore::Vector< casacore::BooldoConversion_p
 
casacore::Bool freqFrameValid_p
 
casacore::Vector
< casacore::Double
imageFreq_p
 
casacore::Vector
< casacore::Double
lsrFreq_p
 casacore::Vector of float lsrfreq needed for regridding More...
 
casacore::Vector
< casacore::Double
interpVisFreq_p
 
casacore::InterpolateArray1D
< casacore::Double,
casacore::Complex >
::InterpolationMethod 
freqInterpMethod_p
 
casacore::String pointingDirCol_p
 
casacore::Cube< casacore::IntspwChanSelFlag_p
 
casacore::Matrix
< casacore::Double
spwFreqSel_p
 
casacore::Matrix
< casacore::Double
expandedSpwFreqSel_p
 
casacore::Matrix
< casacore::Double
expandedSpwConjFreqSel_p
 
casacore::Vector< casacore::IntcfStokes_p
 
casacore::Int polInUse_p
 
casacore::CountedPtr< CFCachecfCache_p
 
CFStore cfs_p
 
CFStore cfwts_p
 
casacore::CountedPtr< CFStore2cfs2_p
 
casacore::CountedPtr< CFStore2cfwts2_p
 
casacore::CountedPtr
< ConvolutionFunction
convFuncCtor_p
 
casacore::CountedPtr
< PolOuterProduct
pop_p
 
casacore::Bool canComputeResiduals_p
 
casacore::Bool toVis_p
 
casacore::Int numthreads_p
 
casacore::Array
< casacore::Complex > 
griddedData
 casacore::Array for non-tiled gridding These are common to most FTmachines More...
 
casacore::Array
< casacore::DComplex > 
griddedData2
 
casacore::Float pbLimit_p
 
casacore::Vector
< casacore::CountedPtr
< SkyJones > > 
sj_p
 casacore::Vector<SkyJones *> sj_p; More...
 
casacore::CountedPtr
< casacore::ImageInterface
< casacore::Complex > > 
cmplxImage_p
 A holder for the complex image if nobody else is keeping it. More...
 
FFT2D ft_p
 
casacore::Double phaseCenterTime_p
 

Detailed Description

Performs for MeasurementSets various fixes which do not involve calibrating. This includes (in order of implementation):

  1. Generating and inserting (u, v, w)s into a casacore::MS that may or may not already have them. Includes antenna offsets when known.
  2. Correcting for differential aberration.
  3. Changing the phase tracking center.
  4. Changing the equinox (B1950 -> J2000).
  5. (maybe never) Changing the projection, i.e. SIN <-> (-)NCP.

    Intended use:

Public interface

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

It is a variation on the UVFIX task of AIPS.

Synopsis

(u, v, w)s are needed for imaging, but some data sets may not come with them included.

FixVis can also be used to shift the tangent point, and correct for differential aberration.

Example

casacore::MS inMS(fileName);
FixVis uvwfixer(inMS);
uvwfixer.setDataDescriptionIds(ddIds);
uvwfixer.setFields(fieldIds);
uvwfixer.fixuvw();

A FixVis object is constructed and the baselines are calculated and stored in inMS.

Motivation

Currently (10/30/2008), ASDMs from either the ALMA Test Facility or the EVLA do not come with (u, v, w)s, and need to be processed with the UVFIX task in AIPS. It would be preferable to process them entirely inside CASA.

class FixVis;

Definition at line 105 of file FixVis.h.

Constructor & Destructor Documentation

casa::FixVis::FixVis ( casacore::MeasurementSet ms,
const casacore::String dataColName = casacore::String("all") 
)

Constructor.

casa::FixVis::~FixVis ( )

Destructor.

Member Function Documentation

casacore::Bool casa::FixVis::calc_uvw ( const casacore::String refcode,
const casacore::Bool  reuse = true 
)

Calculate the (u, v, w)s and store them in ms_p.

virtual void casa::FixVis::ComputeResiduals ( VisBuffer vb,
casacore::Bool  useCorrected 
)
inlinevirtual

Make the VB and VBStore interefaces for the interim re-factoring work.

Finally removed the VB interface.

Implements casa::FTMachine.

Definition at line 145 of file FixVis.h.

void casa::FixVis::convertFieldCols ( casacore::MSFieldColumns msfcs,
const casacore::MDirection::Ref newFrame,
const casacore::Bool  doAll3 
)
private

Private worker function for convertFieldDirs().

void casa::FixVis::convertFieldDirs ( const casacore::MDirection::Types  outType)
private

Convert the directions (phase tracking centers, + DELAY_DIR and REFERENCE_DIR if they start in the same frame) in the FIELD table to newFrame.

Note that each direction column in the table only allows one reference frame for the entire column, so all fields must share the same frame. Calls ready_msc_p() as a side effect.

void casa::FixVis::finalizeToSky ( )
inlineprivatevirtual

Defined here only because FTMachine declares it purely virtual.

Implements casa::FTMachine.

Definition at line 207 of file FixVis.h.

void casa::FixVis::finalizeToVis ( )
privatevirtual

Finalize transform to Visibility plane.

Implements casa::FTMachine.

casacore::Bool casa::FixVis::fixvis ( const casacore::String refcode)

For things like rotation, differential aberration correction, etc., when there already is a UVW column, using FTMachine.

Returns true if any fields are modified.

void casa::FixVis::get ( VisBuffer vb,
casacore::Int  row 
)
inlineprivatevirtual


Get actual coherence from grid

Implements casa::FTMachine.

Definition at line 185 of file FixVis.h.

casacore::Vector<casacore::Int> casa::FixVis::getFieldIdx ( const casacore::String fields)
private

Interpret field indices (casacore::MSSelection)

casacore::ImageInterface<casacore::Complex>& casa::FixVis::getImage ( casacore::Matrix< float > &  ,
casacore::Bool   
)
inlineprivatevirtual

FTMachine declares a LOT of pure virtual functions which FixVis does not need.

They are declared as no-ops here for now.

Implements casa::FTMachine.

Definition at line 176 of file FixVis.h.

References casa::FTMachine::image.

void casa::FixVis::getWeightImage ( casacore::ImageInterface< float > &  weightImage,
casacore::Matrix< float > &  weights 
)
inlineprivatevirtual

Get the final weights image.

Implements casa::FTMachine.

Definition at line 184 of file FixVis.h.

void casa::FixVis::init ( )
private
void casa::FixVis::initializeToSky ( casacore::ImageInterface< casacore::Complex > &  image,
casacore::Matrix< casacore::Float > &  weight,
const VisBuffer vb 
)
privatevirtual

Initialize transform to Sky plane: initializes the image.

Implements casa::FTMachine.

void casa::FixVis::initializeToVis ( casacore::ImageInterface< casacore::Complex > &  image,
const VisBuffer vb 
)
privatevirtual

Initialize transform to Visibility plane using the image as a template.

Implements casa::FTMachine.

casacore::Bool casa::FixVis::lock ( )
private
casacore::LogIO& casa::FixVis::logSink ( )
inlineprivate

Definition at line 219 of file FixVis.h.

References sink_p.

casacore::Bool casa::FixVis::makeSelection ( const casacore::Int  selectedField)
private

Calls ready_msc_p() as a side effect.

virtual casacore::String casa::FixVis::name ( ) const
inlinevirtual

Return the name of the machine.

Implements casa::FTMachine.

Definition at line 147 of file FixVis.h.

virtual void casa::FixVis::normalizeImage ( casacore::Lattice< casacore::Complex > &  ,
const casacore::Matrix< casacore::Double > &  ,
casacore::Lattice< casacore::Float > &  ,
casacore::Bool   
)
inlineprivatevirtual

Reimplemented from casa::FTMachine.

Definition at line 177 of file FixVis.h.

Select by casa::FixVis::observationIDs ( problematic at  best) const
inline

Definition at line 120 of file FixVis.h.

void casa::FixVis::ok ( )
privatevirtual

casacore::Bool getRestFreq(casacore::Vector<casacore::Double>& restFreq, const casacore::Int spw, const casacore::Int fldID); void setObsInfo(casacore::ObsInfo& obsinfo);

Reimplemented from casa::FTMachine.

FixVis& casa::FixVis::operator= ( FixVis other)

Assignment (only copies reference to casacore::MS, need to reset selection etc)

void casa::FixVis::processSelected ( casacore::uInt  numInSel)
private

Does phase tracking center and distance adjustment for mssel_p.

void casa::FixVis::put ( const VisBuffer vb,
casacore::Int  row,
casacore::Bool  dopsf,
FTMachine::Type  type 
)
inlineprivatevirtual

Put coherence to grid.

Implements casa::FTMachine.

Definition at line 186 of file FixVis.h.

casacore::Bool casa::FixVis::ready_msc_p ( )
private

Makes sure msc_p is ready, and returns false if it fails.

void casa::FixVis::rotateUVW ( const casacore::MDirection indir,
const casacore::MDirection::Ref newref 
)

Convert the UVW column to a new reference frame by rotating the old baselines instead of calculating fresh ones.

void casa::FixVis::setDistances ( const casacore::Vector< casacore::Double > &  distances)

Specifies distances for each selected field according to distances, which must be in m and the same order as the casacore::Vector given to setFields.

Throws an exception if distances.nelements() != nsel_p. Because of the way refocus() works, zeroes are ignored (no refocusing done), but negative distances are accepted!

casacore::uInt casa::FixVis::setFields ( const casacore::Vector< casacore::Int > &  fieldIds)

Set the required field Ids and return the # of selected fields.

casacore::Bool casa::FixVis::setImageField ( const casacore::Int  fieldid,
const casacore::Bool  dotrackDir = false 
)
private

TODO?: trackDir.

virtual void casa::FixVis::setMiscInfo ( const casacore::Int  qualifier)
inlinevirtual

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.

Implements casa::FTMachine.

Definition at line 144 of file FixVis.h.

Specifies new phase tracking centers for the selected fields* void casa::FixVis::setPhaseDirs ( const casacore::Vector< casacore::MDirection > &  phaseDirs)
void casa::FixVis::unlock ( )
private

Member Data Documentation

casacore::Vector<casacore::Int> casa::FixVis::antennaId_p
private

conversions can be done (or not)

casacore::String obsString_p; // obsID selection

Definition at line 234 of file FixVis.h.

casacore::Bool casa::FixVis::antennaSel_p
private

Definition at line 230 of file FixVis.h.

casacore::Vector<casacore::String> casa::FixVis::antennaSelStr_p
private

work with casacore::Vector<casacore::uInt>.

Definition at line 236 of file FixVis.h.

const casacore::IPosition casa::FixVis::cimageShape_p
private

Definition at line 227 of file FixVis.h.

casacore::Vector<casacore::MS::PredefinedColumns> casa::FixVis::dataCols_p
private

field

Definition at line 239 of file FixVis.h.

casacore::Vector<casacore::Int> casa::FixVis::DDIds_p
private

Definition at line 248 of file FixVis.h.

casacore::Vector<casacore::Double> casa::FixVis::distances_p
private

Definition at line 237 of file FixVis.h.

casacore::Bool casa::FixVis::doTrackSource_p
private

Definition at line 254 of file FixVis.h.

casacore::Int casa::FixVis::fieldid_p
private

Definition at line 255 of file FixVis.h.

casacore::Vector<casacore::Int> casa::FixVis::FieldIds_p
private

Definition at line 249 of file FixVis.h.

casacore::Bool casa::FixVis::freqFrameValid_p
private

Definition at line 231 of file FixVis.h.

casacore::ObsInfo casa::FixVis::latestObsInfo_p
private

Definition at line 247 of file FixVis.h.

casacore::uInt casa::FixVis::lockCounter_p
private

Definition at line 243 of file FixVis.h.

casacore::MPosition casa::FixVis::mLocation_p
private

Definition at line 253 of file FixVis.h.

casacore::MeasurementSet casa::FixVis::ms_p
private

Initialized in ctor.

Make sure the order there matches with the order here.

Definition at line 222 of file FixVis.h.

casacore::MSColumns* casa::FixVis::msc_p
private

Definition at line 223 of file FixVis.h.

casacore::MeasurementSet casa::FixVis::mssel_p
private

Not initialized in ctor.

Definition at line 246 of file FixVis.h.

casacore::uInt casa::FixVis::nAllFields_p
private

Definition at line 225 of file FixVis.h.

casacore::uInt casa::FixVis::nchan_p
private

Definition at line 241 of file FixVis.h.

casacore::uInt casa::FixVis::nDataCols_p
private

Definition at line 240 of file FixVis.h.

const casacore::uInt casa::FixVis::npix_p
private

Definition at line 226 of file FixVis.h.

casacore::uInt casa::FixVis::nsel_p
private

Definition at line 224 of file FixVis.h.

casacore::Int casa::FixVis::nSpw_p
private

field

Definition at line 252 of file FixVis.h.

casacore::Vector<casacore::MDirection> casa::FixVis::phaseDirs_p
private

Definition at line 250 of file FixVis.h.

casacore::LogIO casa::FixVis::sink_p
private

Log functions and variables.

Definition at line 218 of file FixVis.h.

Referenced by logSink().

casacore::Vector<casacore::Int> casa::FixVis::spectralwindowids_p
private

Definition at line 242 of file FixVis.h.

const casacore::TiledShape casa::FixVis::tiledShape_p
private

Definition at line 229 of file FixVis.h.

const casacore::IPosition casa::FixVis::tileShape_p
private

Definition at line 228 of file FixVis.h.


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