28 #ifndef SYNTHESIS_LJJONES_H
29 #define SYNTHESIS_LJJONES_H
virtual void setRPar(casacore::Double val)
virtual void setSolve()
Set the solving parameters.
virtual void setModel(const casacore::String &modelImage)
Jones::JonesType jonesType()
Type of Jones matrix according to nPar()
casacore::Float tolerance_p
virtual ~LJJones()
LJJones(const casacore::Int& nAnt); // NYI.
virtual void postSolveMassage(const VisBuffer &)
casacore::TempImage< casacore::Complex > targetVisModel_
casacore::Array<casacore::Float> azOff, elOff;
virtual casacore::Cube< casacore::Complex > & solvePar()
virtual Type type()
Return the type enum.
const IPosition & shape() const
The length of each axis of the cube.
casacore::Array< T > & par(const casacore::Int &spw)
casacore::Double maxTimePerSolution
ABSTRACT TOOL CLASSES A PlotTool is a higher level event handler for a PlotCanvas The idea is to take common tasks which may require multiple events and put them in one place PlotTools also provide additional functionality in that they can be active and blocking non blocking The PlotCanvas will only send events to active and will not send events to later tools or event handlers if the latest tool was blocking In this way a single tool can be used to handle ALL user interaction via the GUI at one time
virtual void setTolerance(const casacore::Float &tol)
virtual casacore::Bool trivialJonesElem()
Jones matrix elements are NOT trivial.
virtual void diffResiduals(VisIter &vi, VisEquation &ve, VisBuffer &residuals, VisBuffer &dVr1, VisBuffer &dVr2, casacore::Matrix< casacore::Bool > &flags)
This one averages the residuals and the derivatives in time.
casacore::Cube< casacore::Complex > pointPar_
Local casacore::Matrix for referencing pointing pars in a convenient way.
virtual void inflate(const casacore::Vector< casacore::Int > &nChan, const casacore::Vector< casacore::Int > &startChan, const casacore::Vector< casacore::Int > &nSlot)
Inflate the pristine CalSet (generically)
void nearest(const casacore::Double time, casacore::Array< casacore::Complex > &vals)
virtual void setNiter(const casacore::Int &niter)
virtual void setApply()
Set the application parameters.
virtual casacore::Bool freqDepPar()
Frequency-dependent Parameters? Nominally not.
casacore::Double avgTimePerSolution
virtual void makeComplexGrid(casacore::TempImage< casacore::Complex > &Grid, casacore::PagedImage< casacore::Float > &ModelImage, VisBuffer &vb)
Fill-in a complex grid with the image values in prepration for computing it's FT. ...
virtual casacore::Int nPar()
EP has a pair of real parameters per feed.
casacore::Array< casacore::Double > getTime(const casacore::Int &spw)
casacore::Double minTimePerSolution
casacore::Int & startChan()
void printActivity(const casacore::Int slotNo, const casacore::Int fieldId, const casacore::Int spw, const casacore::Int nSolutions)
void initSolve(VisSet &vs)
virtual VisCalEnum::VCParType setParType(VisCalEnum::VCParType type)
CalSet< casacore::Complex > * cs_
void initSolvePar()
Initialize solve parameter shape Jones version: (nPar(),1,nAnt()) (one chan, all antennas) ...
casacore::Bool & append()
Type
Allowed types of VisCal matrices - 'correct' order enum Type{UVMOD,Mf,M,K,B,G,D,C,E,P,T,EP,F}; enum Type{Test=0,ANoise,M,KAntPos,K,B,G,J,D,X,C,P,E,T,F,A,ALL};.
void resize(size_t nx, size_t ny, size_t nz, Bool copyValues=False)
virtual CalSet< casacore::Complex > & cs()
LJJones (pointing errors)
casacore::Vector< casacore::Int > polMap_p
void setByPassMode(casacore::Int &b)
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
casacore::Int getRefAnt(const casacore::Array< casacore::Float > &visWts)
measure the time it takes to execute parts of a program
casacore::Array< casacore::Complex > getOffsets(const casacore::Int &spw)
virtual void differentiate(VisBuffer &vb, casacore::Cube< casacore::Complex > &Mout, casacore::Array< casacore::Complex > &dMout, casacore::Matrix< casacore::Bool > &Mflg)
Differentiate a VisBuffer w.r.t.
An FTMachine for Gridded Fourier transforms.
casacore::Cube< casacore::Complex > & loadPar()
Specialized access to pointing parameters (no chan axis)
A Table intended to hold astronomical data (a set of Measurements).
virtual void setGain(const casacore::Float &gain)
void reformVisibilities(const VisBuffer &vb, const casacore::Int whichChan, const casacore::Int whichPol, casacore::Array< casacore::Complex > &visArray, casacore::Array< casacore::Float > &visWts)
inline virtual CalSet<casacore::Float> cs() {return *cs_;}
virtual casacore::Bool useGenericGatherForSolve()
Report if calibration available for specified spw (if no CalInterp available, assume true) ...
casacore::String modelImageName_p
LJJones(VisSet &vs)
Constructor.
virtual casacore::String typeName()
Return type name as string.
virtual void setRPar(casacore::Cube< casacore::Complex > &val)
casacore::Bool verifyForSolve(VisBuffer &vb)
casacore::Vector< T > solve(const casacore::Matrix< T > &A, const casacore::Vector< T > &y, double &ferr, double &berr)
Given a matrix "A", and given some vector "y" which is the right hand side of the equation "Ax=y"...
String: the storage and methods of handling collections of characters.
VisBuffers encapsulate one chunk of visibility data for processing.
virtual casacore::String longTypeName()
VisibilityIterator iterates through one or more writable MeasurementSets.
virtual void selfGatherAndSolve(VisSet &vs, VisEquation &ve)
Self- gather and/or solve prototypes (triggered by useGenericGatherForSolve=F or useGenericSolveOne=F...
virtual VisCalEnum::VCParType parType()
Return the parameter type (nominally complex)
VisSet * vs_p
casacore::MeasurementSet *ms_p;
virtual void keep(const casacore::Int &slot)
virtual BaseCalSet& cs() {return *cs_;};
void getAvgVB(VisIter &vi, VisEquation &ve, VisBuffer &vb)
casacore::Vector< casacore::Double > & time(const casacore::Int &spw)
virtual casacore::Float printFraction(const casacore::Int &)
virtual casacore::Bool normalizable()
virtual void keep(const casacore::Int& slot);
virtual void applyCal(VisBuffer &vb, casacore::Cube< casacore::Complex > &Mout)
Apply calibration to a VisBuffer.