DOcalibrater.h

Classes

calibrater -- calibrater: Calibrater class, forming the basis of the calibrater DO (full description)
calibraterFactory -- (full description)

class calibrater : public ApplicationObject

Interface

Public Members
calibrater()
~calibrater()
calibrater (MeasurementSet& ms, Bool compress)
calibrater (const calibrater& other)
calibrater& operator= (const calibrater& other)
void setdata (const String& mode, const Int& nchan, const Int& start, const Int& step, const MRadialVelocity& mStart, const MRadialVelocity& mStep, const String& msSelect)
void setapply (const String& type, const Double& t, const String& table, const String& select, const Vector<Int>& spwmap, const Bool& unset, const Float& opacity, const Vector<Int>& rawspw)
void setsolve (const String& type, const Double& t, const Double& preavg, const Bool& phaseonly, const Int& refant, const String& table, const Bool& append, const Bool& unset)
void setsolvebandpoly (const String& table, const Bool& append, const Int& degamp, const Int& degphase, const Bool& visnorm, const Bool& bpnorm, const Int& maskcenter, const Float& maskedge, const Int& refant, const Bool& unset)
void setsolvegainpoly (const String& table, const Bool& append, const String& mode, const Int& degree, const Int& refant, const Bool& unset)
void setsolvegainspline (const String& table, const Bool& append, const String& mode, const Double& preavg, const Double& splinetime, const Int& refant, const Int& npoi, const Double& anglewrap, const Bool& unset)
void state()
void solve()
void correct()
void smooth(const String& infile, const String& outfile, const Bool& append, const String& select, const String& smoothtype, const Double& smoothtime, const String& interptype, const Double& interptime)
void fluxscale(const String& infile, const String& outfile, const Vector<Int>& refField, const Vector<Int>& refSpwMap, const Vector<Int>& tranField, const Bool& append, GlishArray& fluxDensity)
void reset(const Bool& apply, const Bool& solve)
void initcalset(const Int& calSet)
void close()
virtual String className() const
virtual Vector <String> methods() const
virtual Vector <String> noTraceMethods() const
virtual MethodResult runMethod (uInt which, ParameterSet& inpRec, Bool runMethod)
Private Members
void open (MeasurementSet& ms)
void setsolve (const String& type, Record*& solver, const Bool& unset)
void applystate()
void solvestate()
void defaults()
void loadSetCal (const String& type)
void loadIntpCal (const String& type)
void solveCal (const String& type)
void updateCal (const String& type)

Description

Prerequisite

Etymology

From "calibrater".

Synopsis

Module DOcalibrater defines the calibrater classes which form the basis of the calibrater DO. It is used in conjunction with the sky DO to provide calibration capabilities within the synthesis package. The basic responsibilities of the calibrater are to determine and apply calibration information for data stored in an aips++ measurement set.

Example


 

Motivation

The calibration aspects of synthesis processing form a coherent subset, with sufficient features and structure to be represented as a separate class, with associated DO. .

To Do

Member Description

calibrater()

Default constructor, and destructor

~calibrater()

calibrater (MeasurementSet& ms, Bool compress)

Construct from an existing measurement set and a flag to specify optional compression of the calibration columns (MODEL_DATA, CORRECTED_DATA and IMAGING_WEIGHT).

calibrater (const calibrater& other)

Copy constructor and assignment

calibrater& operator= (const calibrater& other)

void setdata (const String& mode, const Int& nchan, const Int& start, const Int& step, const MRadialVelocity& mStart, const MRadialVelocity& mStep, const String& msSelect)

Define the measurement set selection parameters

void setapply (const String& type, const Double& t, const String& table, const String& select, const Vector<Int>& spwmap, const Bool& unset, const Float& opacity, const Vector<Int>& rawspw)

Set the calibration application information for each component

void setsolve (const String& type, const Double& t, const Double& preavg, const Bool& phaseonly, const Int& refant, const String& table, const Bool& append, const Bool& unset)

Set the solution information for each calibration component

void setsolvebandpoly (const String& table, const Bool& append, const Int& degamp, const Int& degphase, const Bool& visnorm, const Bool& bpnorm, const Int& maskcenter, const Float& maskedge, const Int& refant, const Bool& unset)

Set solver parameters for specific solver types. i) Polynomial bandpass solutions over frequency (BJonesPoly)

void setsolvegainpoly (const String& table, const Bool& append, const String& mode, const Int& degree, const Int& refant, const Bool& unset)

ii) Polynomial electronic gain solutions over time (GJonesPoly)

void setsolvegainspline (const String& table, const Bool& append, const String& mode, const Double& preavg, const Double& splinetime, const Int& refant, const Int& npoi, const Double& anglewrap, const Bool& unset)

iii) Spline electronic gain solutions over time (GJonesSpline)

void state()

Obtain apply/solve state of the calibrater tool

void solve()

Solve for the specified calibration components

void correct()

Apply calibration

void smooth(const String& infile, const String& outfile, const Bool& append, const String& select, const String& smoothtype, const Double& smoothtime, const String& interptype, const Double& interptime)

Smooth calibration

void fluxscale(const String& infile, const String& outfile, const Vector<Int>& refField, const Vector<Int>& refSpwMap, const Vector<Int>& tranField, const Bool& append, GlishArray& fluxDensity)

Fluxscale

void reset(const Bool& apply, const Bool& solve)

Reset the entire state of the calibrater tool

void initcalset(const Int& calSet)

Re-initialize the calibration scratch columns

void close()

Close, detach measurement set

virtual String className() const

Methods required to distribute the class as an aips++ DO i) return the class name

virtual Vector <String> methods() const

ii) return a list of class methods

virtual Vector <String> noTraceMethods() const

iii) return a list of methods for which no logging is required

virtual MethodResult runMethod (uInt which, ParameterSet& inpRec, Bool runMethod)

iv) Execute individual methods

void open (MeasurementSet& ms)

Open the measurement set

void setsolve (const String& type, Record*& solver, const Bool& unset)

Add, or remove, an entry to the solver map (per Jones matrix type)

void applystate()

Obtain apply state of the calibrater tool

void solvestate()

Obtain solve state of the calibrater tool

void defaults()

Set default parameter values

void loadSetCal (const String& type)

Load existing cal table, else initialize cal component

void loadIntpCal (const String& type)

Load existing cal table, interpolate as required

void solveCal (const String& type)

Solve for an individual cal component

void updateCal (const String& type)

Update cal table on disk


class calibraterFactory : public ApplicationObjectFactory

Interface

Public Members
virtual MethodResult make (ApplicationObject*& newObject, const String& whichConstructor, ParameterSet& inpRec, Bool runConstructor)

Description

Member Description

virtual MethodResult make (ApplicationObject*& newObject, const String& whichConstructor, ParameterSet& inpRec, Bool runConstructor)

Mechanism to allow non-standard constructors for class calibrater as an aips++ distributed object.