#include <SingleDishSkyCal.h>
Public Member Functions | |
SingleDishSkyCal (VisSet &vs) | |
Constructor. | |
SingleDishSkyCal (const MSMetaInfoForCal &msmc) | |
SingleDishSkyCal (const Int &nAnt) | |
virtual | ~SingleDishSkyCal () |
Destructor. | |
virtual Type | type () |
Return the type of this calibration matrix (actual type of derived class). | |
virtual String | typeName () |
Return type name as string (ditto). | |
virtual String | longTypeName () |
virtual VisCalEnum::MatrixType | matrixType () |
Return Matrix type single dish calibration is antenna-based. | |
virtual Mueller::MuellerType | muellerType () |
Mueller matrix type (must be implemented in Mueller specializations!). | |
virtual VisCalEnum::VCParType | parType () |
Return the parameter type so far single dish calibration is real. | |
virtual Int | nPar () |
Number of pars per ant/bln TODO: nPar should refer numCorr in input MS. | |
virtual Int | nTotalPar () |
Total number of (complex) parameters per solve (specialize to jive with ant- or bln-basedness, etc. | |
virtual Bool | normalizable () |
Does normalization by MODEL_DATA commute with this VisCal? (if so, permits pre-solve time-averaging). | |
virtual void | guessPar (VisBuffer &vb) |
Hazard a guess at the parameters (solveCPar) given the data. | |
virtual void | differentiate (CalVisBuffer &cvb) |
Differentiate VB model w.r.t. | |
virtual void | differentiate (VisBuffer &vb, Cube< Complex > &V, Array< Complex > &dV, Matrix< Bool > &Vflg) |
virtual void | diffSrc (VisBuffer &vb, Array< Complex > &dV) |
Differentiate VB model w.r.t. | |
virtual void | reReference () |
Apply refant (implemented in SVJ). | |
virtual void | accumulate (SolvableVisCal *incr, const Vector< Int > &fields) |
Accumulate another VisCal onto this one. | |
virtual void | fluxscale (const String &outfile, const Vector< Int > &refFieldIn, const Vector< Int > &tranFieldIn, const Vector< Int > &inRefSpwMap, const Vector< String > &fldNames, const Float &inGainThres, const String &antSel, const String &timerangeSel, const String &scanSel, fluxScaleStruct &oFluxScaleStruct, const String &oListFile, const Bool &incremental, const Int &fitorder, const Bool &display) |
Determine and apply flux density scaling. | |
virtual Bool | useGenericGatherForSolve () |
Use generic data gathering mechanism for solve. | |
virtual void | listCal (const Vector< Int > ufldids, const Vector< Int > uantids, const Matrix< Int > uchanids, const String &listfile="", const Int &pagerows=50) |
Report state:. | |
virtual void | setApply (const Record &apply) |
Local setApply. | |
virtual Bool | freqDepPar () |
In general, we are freq-dep. | |
virtual void | keepNCT () |
New CalTable handling. | |
virtual void | selfGatherAndSolve (VisSet &vs, VisEquation &ve) |
Self- gather and/or solve prototypes (triggered by useGenericGatherForSolve=F or useGenericSolveOne=F). | |
Protected Member Functions | |
virtual Int & | nElem () |
The number of sets of parameters under consideration This states size of third axis of SolveAllRPar. | |
virtual Int | nCalMat () |
Number of Calibration matrices on ant/bln axis. | |
virtual Bool | trivialMuellerElem () |
Are the parameters the matrix elements? (or is a non-trivial calculation required?) (Must be implemented in specializations!). | |
virtual void | initSolvePar () |
Initialize solve parameters (shape). | |
virtual void | invalidateDiffCalMat () |
Invalidate diff cal matrices generically. | |
virtual void | syncMeta2 (const vi::VisBuffer2 &vb) |
overwride syncMeta2 | |
virtual void | syncCalMat (const Bool &doInv=False) |
Sync matrices generically for current meta data. | |
virtual void | syncDiffMat () |
Synchronize the differentiated calibration. | |
virtual void | syncWtScale () |
Synchronize weight scale factors. | |
template<class ScalingScheme > | |
void | calcWtScale () |
Perform weight scale calculation (specializable). | |
virtual Float | calcPowerNorm (Array< Float > &, const Array< Bool > &ok) |
Normalize a (complex) solution array (generic). | |
virtual void | invalidateCalMat () |
Invalidate cal matrices generically. | |
virtual void | applyCal (VisBuffer &vb, Cube< Complex > &Vout, Bool trial=False) |
Row-by-row apply to a Cube<Complex> (generic). | |
virtual void | applyCal2 (vi::VisBuffer2 &vb, Cube< Complex > &Vout, Cube< Float > &Wout, Bool trial=False) |
template<class Accessor > | |
void | traverseMS (MeasurementSet const &ms) |
Fill caltable by traversing MS Accessor is responsible for accessing data stored either in DATA or FLOAT_DATA. | |
Cube< Complex > & | currentSky () |
access to current calibration data | |
Cube< Bool > & | currentSkyOK () |
SkyCal< Complex, Complex > & | engineC () |
SkyCal< Float, Float > & | engineF () |
virtual String | configureSelection (MeasurementSet const &ms)=0 |
arrange data selection according to calibration mode | |
Protected Attributes | |
Int | currAnt_ |
current antenna | |
Vector< Double > | interval_ |
Solution timescale (context-dependent). | |
PtrBlock< SkyCal< Complex, Complex > * > | engineC_ |
Single Dish Calibration algebra wrapper (per Spw). | |
PtrBlock< SkyCal< Float, Float > * > | engineF_ |
PtrBlock< Cube< Complex > * > | currentSky_ |
Current Sky spectra. | |
PtrBlock< Cube< Bool > * > | currentSkyOK_ |
Private Member Functions | |
void | initializeSky () |
void | finalizeSky () |
void | updateWt2 (Matrix< Float > &weight, const Int &antenna1) |
Internal or
Internal
Definition at line 152 of file SingleDishSkyCal.h.
casa::SingleDishSkyCal::SingleDishSkyCal | ( | VisSet & | vs | ) |
Constructor.
casa::SingleDishSkyCal::SingleDishSkyCal | ( | const MSMetaInfoForCal & | msmc | ) |
casa::SingleDishSkyCal::SingleDishSkyCal | ( | const Int & | nAnt | ) |
virtual casa::SingleDishSkyCal::~SingleDishSkyCal | ( | ) | [virtual] |
Destructor.
virtual void casa::SingleDishSkyCal::accumulate | ( | SolvableVisCal * | incr, | |
const Vector< Int > & | fields | |||
) | [virtual] |
Accumulate another VisCal onto this one.
virtual void casa::SingleDishSkyCal::applyCal | ( | VisBuffer & | vb, | |
Cube< Complex > & | Vout, | |||
Bool | trial = False | |||
) | [protected, virtual] |
Row-by-row apply to a Cube<Complex> (generic).
Implements casa::VisCal.
virtual void casa::SingleDishSkyCal::applyCal2 | ( | vi::VisBuffer2 & | vb, | |
Cube< Complex > & | Vout, | |||
Cube< Float > & | Wout, | |||
Bool | trial = False | |||
) | [protected, virtual] |
Implements casa::VisCal.
virtual Float casa::SingleDishSkyCal::calcPowerNorm | ( | Array< Float > & | amp, | |
const Array< Bool > & | ok | |||
) | [protected, virtual] |
Normalize a (complex) solution array (generic).
Implements casa::SolvableVisCal.
void casa::SingleDishSkyCal::calcWtScale | ( | ) | [inline, protected] |
Perform weight scale calculation (specializable).
virtual String casa::SingleDishSkyCal::configureSelection | ( | MeasurementSet const & | ms | ) | [protected, pure virtual] |
arrange data selection according to calibration mode
Implemented in casa::SingleDishPositionSwitchCal, casa::SingleDishRasterCal, and casa::SingleDishOtfCal.
Cube<Complex>& casa::SingleDishSkyCal::currentSky | ( | ) | [inline, protected] |
access to current calibration data
Definition at line 312 of file SingleDishSkyCal.h.
References currentSky_, and casa::VisCal::currSpw().
Cube<Bool>& casa::SingleDishSkyCal::currentSkyOK | ( | ) | [inline, protected] |
Definition at line 313 of file SingleDishSkyCal.h.
References currentSkyOK_, and casa::VisCal::currSpw().
virtual void casa::SingleDishSkyCal::differentiate | ( | VisBuffer & | vb, | |
Cube< Complex > & | V, | |||
Array< Complex > & | dV, | |||
Matrix< Bool > & | Vflg | |||
) | [virtual] |
Implements casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::differentiate | ( | CalVisBuffer & | cvb | ) | [virtual] |
Differentiate VB model w.r.t.
Cal parameters (no 2nd derivative yet)
Implements casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::diffSrc | ( | VisBuffer & | vb, | |
Array< Complex > & | dV | |||
) | [virtual] |
SkyCal<Complex, Complex>& casa::SingleDishSkyCal::engineC | ( | ) | [inline, protected] |
Definition at line 314 of file SingleDishSkyCal.h.
References casa::VisCal::currSpw(), and engineC_.
SkyCal<Float, Float>& casa::SingleDishSkyCal::engineF | ( | ) | [inline, protected] |
Definition at line 315 of file SingleDishSkyCal.h.
References casa::VisCal::currSpw(), and engineF_.
void casa::SingleDishSkyCal::finalizeSky | ( | ) | [private] |
virtual void casa::SingleDishSkyCal::fluxscale | ( | const String & | outfile, | |
const Vector< Int > & | refFieldIn, | |||
const Vector< Int > & | tranFieldIn, | |||
const Vector< Int > & | inRefSpwMap, | |||
const Vector< String > & | fldNames, | |||
const Float & | inGainThres, | |||
const String & | antSel, | |||
const String & | timerangeSel, | |||
const String & | scanSel, | |||
fluxScaleStruct & | oFluxScaleStruct, | |||
const String & | oListFile, | |||
const Bool & | incremental, | |||
const Int & | fitorder, | |||
const Bool & | display | |||
) | [virtual] |
Determine and apply flux density scaling.
Implements casa::SolvableVisCal.
virtual Bool casa::SingleDishSkyCal::freqDepPar | ( | ) | [inline, virtual] |
In general, we are freq-dep.
Reimplemented from casa::VisCal.
Definition at line 248 of file SingleDishSkyCal.h.
References casacore::True.
virtual void casa::SingleDishSkyCal::guessPar | ( | VisBuffer & | vb | ) | [virtual] |
Hazard a guess at the parameters (solveCPar) given the data.
Implements casa::SolvableVisCal.
void casa::SingleDishSkyCal::initializeSky | ( | ) | [private] |
virtual void casa::SingleDishSkyCal::initSolvePar | ( | ) | [protected, virtual] |
Initialize solve parameters (shape).
Implements casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::invalidateCalMat | ( | ) | [inline, protected, virtual] |
Invalidate cal matrices generically.
Implements casa::VisCal.
Definition at line 297 of file SingleDishSkyCal.h.
virtual void casa::SingleDishSkyCal::invalidateDiffCalMat | ( | ) | [inline, protected, virtual] |
Invalidate diff cal matrices generically.
Implements casa::SolvableVisCal.
Definition at line 275 of file SingleDishSkyCal.h.
virtual void casa::SingleDishSkyCal::keepNCT | ( | ) | [virtual] |
New CalTable handling.
Reimplemented from casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::listCal | ( | const Vector< Int > | ufldids, | |
const Vector< Int > | uantids, | |||
const Matrix< Int > | uchanids, | |||
const String & | listfile = "" , |
|||
const Int & | pagerows = 50 | |||
) | [virtual] |
Report state:.
Implements casa::SolvableVisCal.
virtual String casa::SingleDishSkyCal::longTypeName | ( | ) | [inline, virtual] |
Reimplemented from casa::VisCal.
Reimplemented in casa::SingleDishPositionSwitchCal, casa::SingleDishRasterCal, and casa::SingleDishOtfCal.
Definition at line 173 of file SingleDishSkyCal.h.
virtual VisCalEnum::MatrixType casa::SingleDishSkyCal::matrixType | ( | ) | [inline, virtual] |
Return Matrix type single dish calibration is antenna-based.
Reimplemented from casa::VisCal.
Definition at line 177 of file SingleDishSkyCal.h.
References casa::VisCalEnum::JONES.
virtual Mueller::MuellerType casa::SingleDishSkyCal::muellerType | ( | ) | [inline, virtual] |
Mueller matrix type (must be implemented in Mueller specializations!).
Definition at line 180 of file SingleDishSkyCal.h.
References casa::Mueller::AddDiag2.
virtual Int casa::SingleDishSkyCal::nCalMat | ( | ) | [inline, protected, virtual] |
Number of Calibration matrices on ant/bln axis.
Implements casa::VisCal.
Definition at line 264 of file SingleDishSkyCal.h.
References casa::VisCal::nAnt().
virtual Int& casa::SingleDishSkyCal::nElem | ( | ) | [inline, protected, virtual] |
The number of sets of parameters under consideration This states size of third axis of SolveAllRPar.
Implements casa::VisCal.
Definition at line 261 of file SingleDishSkyCal.h.
References casa::VisCal::nAnt().
virtual Bool casa::SingleDishSkyCal::normalizable | ( | ) | [inline, virtual] |
Does normalization by MODEL_DATA commute with this VisCal? (if so, permits pre-solve time-averaging).
Implements casa::SolvableVisCal.
Definition at line 196 of file SingleDishSkyCal.h.
References casacore::False.
virtual Int casa::SingleDishSkyCal::nPar | ( | ) | [inline, virtual] |
Number of pars per ant/bln TODO: nPar should refer numCorr in input MS.
Implements casa::VisCal.
Definition at line 188 of file SingleDishSkyCal.h.
Referenced by nTotalPar().
virtual Int casa::SingleDishSkyCal::nTotalPar | ( | ) | [inline, virtual] |
Total number of (complex) parameters per solve (specialize to jive with ant- or bln-basedness, etc.
)
Implements casa::SolvableVisCal.
Definition at line 192 of file SingleDishSkyCal.h.
References nPar().
virtual VisCalEnum::VCParType casa::SingleDishSkyCal::parType | ( | void | ) | [inline, virtual] |
Return the parameter type so far single dish calibration is real.
Reimplemented from casa::VisCal.
Definition at line 184 of file SingleDishSkyCal.h.
References casa::VisCalEnum::REAL.
virtual void casa::SingleDishSkyCal::reReference | ( | ) | [inline, virtual] |
Apply refant (implemented in SVJ).
Implements casa::SolvableVisCal.
Definition at line 213 of file SingleDishSkyCal.h.
virtual void casa::SingleDishSkyCal::selfGatherAndSolve | ( | VisSet & | vs, | |
VisEquation & | ve | |||
) | [virtual] |
Self- gather and/or solve prototypes (triggered by useGenericGatherForSolve=F or useGenericSolveOne=F).
Reimplemented from casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::setApply | ( | const Record & | apply | ) | [virtual] |
Local setApply.
Reimplemented from casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::syncCalMat | ( | const Bool & | doInv = False |
) | [protected, virtual] |
Sync matrices generically for current meta data.
Implements casa::VisCal.
virtual void casa::SingleDishSkyCal::syncDiffMat | ( | ) | [protected, virtual] |
Synchronize the differentiated calibration.
Implements casa::SolvableVisCal.
virtual void casa::SingleDishSkyCal::syncMeta2 | ( | const vi::VisBuffer2 & | vb | ) | [protected, virtual] |
overwride syncMeta2
Reimplemented from casa::VisCal.
virtual void casa::SingleDishSkyCal::syncWtScale | ( | ) | [protected, virtual] |
Synchronize weight scale factors.
void casa::SingleDishSkyCal::traverseMS | ( | MeasurementSet const & | ms | ) | [inline, protected] |
Fill caltable by traversing MS Accessor is responsible for accessing data stored either in DATA or FLOAT_DATA.
virtual Bool casa::SingleDishSkyCal::trivialMuellerElem | ( | ) | [inline, protected, virtual] |
Are the parameters the matrix elements? (or is a non-trivial calculation required?) (Must be implemented in specializations!).
Definition at line 269 of file SingleDishSkyCal.h.
References casacore::False.
virtual Type casa::SingleDishSkyCal::type | ( | ) | [inline, virtual] |
Return the type of this calibration matrix (actual type of derived class).
(Must be implemented in specializations!)
2015/03/19 (gmoellen): Use VisCal::M here, so that it is sorted correctly in the VisEquation relative to "B TSYS"
Implements casa::VisCal.
Definition at line 169 of file SingleDishSkyCal.h.
References casa::VisCal::M.
virtual String casa::SingleDishSkyCal::typeName | ( | ) | [inline, virtual] |
Return type name as string (ditto).
Reimplemented from casa::VisCal.
Reimplemented in casa::SingleDishPositionSwitchCal, casa::SingleDishRasterCal, and casa::SingleDishOtfCal.
Definition at line 172 of file SingleDishSkyCal.h.
void casa::SingleDishSkyCal::updateWt2 | ( | Matrix< Float > & | weight, | |
const Int & | antenna1 | |||
) | [private] |
virtual Bool casa::SingleDishSkyCal::useGenericGatherForSolve | ( | ) | [inline, virtual] |
Use generic data gathering mechanism for solve.
Reimplemented from casa::SolvableVisCal.
Definition at line 236 of file SingleDishSkyCal.h.
References casacore::False.
Int casa::SingleDishSkyCal::currAnt_ [protected] |
current antenna
Definition at line 321 of file SingleDishSkyCal.h.
PtrBlock<Cube<Complex> *> casa::SingleDishSkyCal::currentSky_ [protected] |
PtrBlock<Cube<Bool> *> casa::SingleDishSkyCal::currentSkyOK_ [protected] |
Definition at line 330 of file SingleDishSkyCal.h.
Referenced by currentSkyOK().
PtrBlock<SkyCal<Complex, Complex> *> casa::SingleDishSkyCal::engineC_ [protected] |
Single Dish Calibration algebra wrapper (per Spw).
Definition at line 325 of file SingleDishSkyCal.h.
Referenced by engineC().
PtrBlock<SkyCal<Float, Float> *> casa::SingleDishSkyCal::engineF_ [protected] |
Definition at line 326 of file SingleDishSkyCal.h.
Referenced by engineF().
Vector<Double> casa::SingleDishSkyCal::interval_ [protected] |
Solution timescale (context-dependent).
Reimplemented from casa::VisCal.
Definition at line 322 of file SingleDishSkyCal.h.