casa
5.7.0-16
|
#include <AMueller.h>
Public Member Functions | |
AMueller (VisSet &vs) | |
Constructor. More... | |
AMueller (casacore::String msname, casacore::Int MSnAnt, casacore::Int MSnSpw) | |
AMueller (const MSMetaInfoForCal &msmc) | |
AMueller (const casacore::Int &nAnt) | |
virtual | ~AMueller () |
virtual Type | type () |
Return the type enum. More... | |
virtual casacore::String | typeName () |
Return type name as string. More... | |
virtual casacore::String | longTypeName () |
virtual Mueller::MuellerType | muellerType () |
Algebraic type of Mueller matrix (this is the key distinguishing characteristic) More... | |
virtual void | setSolve (const casacore::Record &solvepar) |
Parameters particular to this class: fitorder: Order of the polynomial fit. More... | |
virtual void | setSolveChannelization (VisSet &vs) |
AMueller's caltables have polynomial orders where channels would normally go. More... | |
virtual casacore::Int | sizeUpSolve (VisSet &vs, casacore::Vector< casacore::Int > &nChunkPerSol) |
Size up the solving arrays, etc. More... | |
virtual casacore::Bool | useGenericGatherForSolve () |
The fitorder = 0 version (in M) skips casacore::LinearFitSVD by just averaging. More... | |
virtual casacore::Bool | useGenericSolveOne () |
Only called if useGenericGatherForSolve() == true. More... | |
virtual void | selfSolveOne (VisBuffGroupAcc &vbga) |
Per-solution self-solving inside generic gather. More... | |
virtual void | storeNCT () |
virtual void | setApply () |
virtual void | setApply (const casacore::Record &applypar) |
virtual void | applyCal (VisBuffer &vb, casacore::Cube< casacore::Complex > &Vout, casacore::Bool trial=false) |
Apply this calibration to vb. More... | |
virtual void | applyCal2 (vi::VisBuffer2 &vb, casacore::Cube< casacore::Complex > &Vout, casacore::Cube< casacore::Float > &Wout, casacore::Bool trial=false) |
VB2 version (for apply context only!) More... | |
virtual casacore::Bool | freqDepPar () |
Freq dependence. More... | |
virtual casacore::Bool | freqDepMat () |
virtual casacore::Bool | normalizable () |
We do not normalize by the model, since we are estimating directly from the data (we should optimize here by avoiding the model I/O) More... | |
virtual void | corrupt (VisBuffer &vb) |
Specialize corrupt to pre-zero model for corruption using VisMueller::corrupt; More... | |
void | syncCalMat (const casacore::Bool &doInv) |
virtual void corrupt(VisBuffer& vb, casacore::Cube<casacore::Complex>& Mout); More... | |
Public Member Functions inherited from MMueller | |
MMueller (VisSet &vs) | |
Constructor. More... | |
MMueller (casacore::String msname, casacore::Int MSnAnt, casacore::Int MSnSpw) | |
MMueller (const MSMetaInfoForCal &msmc) | |
MMueller (const casacore::Int &nAnt) | |
virtual | ~MMueller () |
virtual void | selfGatherAndSolve (VisSet &vs, VisEquation &ve) |
M solves for itself (by copying averaged data) More... | |
virtual void | newselfSolve (VisSet &vs, VisEquation &ve) |
virtual void | globalPostSolveTinker () |
Local M version only supports normalization. More... | |
virtual void | selfSolveOne (SDBList &sdbs) |
Modern solving. More... | |
virtual void | createCorruptor (const VisIter &vi, const casacore::Record &simpar, const casacore::Int nSim) |
Protected Member Functions | |
virtual casacore::Int | nPar () |
M currently has just 2 complex parameters, i.e., both parallel hands. More... | |
Protected Member Functions inherited from MMueller | |
virtual casacore::Bool | trivialMuellerElem () |
Jones matrix elements are trivial. More... | |
virtual void | solveOne (SDBList &sdbs) |
solve implementation More... | |
Private Member Functions | |
void | init () |
void | hurl (const casacore::String &origin, const casacore::String &msg) |
Logs and throws msg as an exception from origin. More... | |
Private Attributes | |
casacore::Int | fitorder_p |
Initialized to 0 in the initialization lists of the c'tors. More... | |
casacore::Bool | doSub_p |
casacore::Int | nCorr_p |
estimate. More... | |
casacore::Vector < casacore::Double > | lofreq_p |
Resized and set to impossible values in init(). More... | |
casacore::Vector < casacore::Double > | hifreq_p |
casacore::Vector< casacore::uInt > | totnumchan_p |
casacore::Vector< casacore::Bool > | spwApplied_p |
looked at (including masked ones!) More... | |
Definition at line 40 of file AMueller.h.
casa::AMueller::AMueller | ( | VisSet & | vs | ) |
Constructor.
casa::AMueller::AMueller | ( | casacore::String | msname, |
casacore::Int | MSnAnt, | ||
casacore::Int | MSnSpw | ||
) |
casa::AMueller::AMueller | ( | const MSMetaInfoForCal & | msmc | ) |
casa::AMueller::AMueller | ( | const casacore::Int & | nAnt | ) |
|
virtual |
|
virtual |
Apply this calibration to vb.
AMueller does NOT support trial and ignores it!
|
virtual |
VB2 version (for apply context only!)
|
virtual |
Specialize corrupt to pre-zero model for corruption
using VisMueller::corrupt;
|
inlinevirtual |
Definition at line 105 of file AMueller.h.
References fitorder_p.
|
inlinevirtual |
Freq dependence.
Definition at line 104 of file AMueller.h.
|
private |
Logs and throws msg as an exception from origin.
Referenced by nPar().
|
private |
|
inlinevirtual |
Reimplemented from MMueller.
Definition at line 56 of file AMueller.h.
|
inlinevirtual |
Algebraic type of Mueller matrix (this is the key distinguishing characteristic)
Reimplemented from MMueller.
Definition at line 60 of file AMueller.h.
References casa::Mueller::AddDiag2.
|
inlinevirtual |
We do not normalize by the model, since we are estimating directly from the data (we should optimize here by avoiding the model I/O)
Definition at line 112 of file AMueller.h.
|
inlineprotectedvirtual |
M currently has just 2 complex parameters, i.e., both parallel hands.
Reimplemented from MMueller.
Definition at line 130 of file AMueller.h.
|
virtual |
Per-solution self-solving inside generic gather.
Flexible enough for fitorder != 0, but overkill otherwise.
|
inlinevirtual |
Definition at line 92 of file AMueller.h.
References casa::SolvableVisCal::setApply().
|
virtual |
Reimplemented from MMueller.
|
virtual |
Parameters particular to this class: fitorder: Order of the polynomial fit.
If 0, it is just an average.
|
virtual |
AMueller's caltables have polynomial orders where channels would normally go.
setSolve() above sets the number of "channels", but SolvableVisCal::setSolveChannelization() would just reset it to 1 if it was not overrode here.
|
virtual |
Size up the solving arrays, etc.
(supports combine)
|
virtual |
|
inline |
virtual void corrupt(VisBuffer& vb, casacore::Cube<casacore::Complex>& Mout);
Set (repeatedly, unfortunately) whether or not subtraction is being done, and IF fitorder == 0, sync matrices for current meta data (VisMueller override). (Mueller matrices aren't used for fitorder != 0.)
Definition at line 122 of file AMueller.h.
References doSub_p, fitorder_p, and casa::VisMueller::syncCalMat().
|
inlinevirtual |
Return the type enum.
Reimplemented from MMueller.
Definition at line 52 of file AMueller.h.
References casa::VisCal::A.
|
inlinevirtual |
|
inlinevirtual |
The fitorder = 0 version (in M) skips casacore::LinearFitSVD by just averaging.
Reimplemented from MMueller.
Definition at line 78 of file AMueller.h.
References fitorder_p.
|
inlinevirtual |
Only called if useGenericGatherForSolve() == true.
If useGenericGatherForSolve() == true, then genericGatherAndSolve() will call AMueller's selfSolveOne(). Otherwise MMueller's selfGatherAndSolve() will do everything.
Reimplemented from MMueller.
Definition at line 84 of file AMueller.h.
|
private |
Definition at line 145 of file AMueller.h.
Referenced by syncCalMat().
|
private |
Initialized to 0 in the initialization lists of the c'tors.
Definition at line 143 of file AMueller.h.
Referenced by freqDepMat(), syncCalMat(), and useGenericGatherForSolve().
|
private |
Definition at line 151 of file AMueller.h.
|
private |
Resized and set to impossible values in init().
Definition at line 150 of file AMueller.h.
|
private |
|
private |
looked at (including masked ones!)
Definition at line 154 of file AMueller.h.
|
private |
Definition at line 152 of file AMueller.h.