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


SolvableVisMueller More...

#include <SolvableVisCal.h>

Inheritance diagram for casa::SolvableVisMueller:
casa::SolvableVisCal casa::VisMueller casa::VisCal casa::VisCal casa::ANoise casa::SolvableVisJones casa::XMueller casa::XMueller casa::AccorJones casa::DJones casa::EGainCurve casa::EPJones casa::FJones casa::GJones casa::JJones casa::LJJones casa::TJones casa::XJones casa::XJones

Public Member Functions

 SolvableVisMueller (VisSet &vs)
 
 SolvableVisMueller (casacore::String msname, casacore::Int MSnAnt, casacore::Int MSnSpw)
 
 SolvableVisMueller (const MSMetaInfoForCal &msmc)
 
 SolvableVisMueller (const casacore::Int &nAnt)
 
virtual ~SolvableVisMueller ()
 
virtual casacore::Int nTotalPar ()
 Total number of (complex) parameters per solve Mueller version: just return number of per-Bln parameters. More...
 
virtual casacore::Bool normalizable ()
 Does normalization by MODEL_DATA commute with this VisCal? More...
 
virtual void guessPar (VisBuffer &)
 Hazard a guess at the parameters (solvePar) given the data. More...
 
virtual void differentiate (CalVisBuffer &)
 Differentiate VB model w.r.t. More...
 
virtual void differentiate (SolveDataBuffer &)
 
virtual void differentiate (VisBuffer &, casacore::Cube< casacore::Complex > &, casacore::Array< casacore::Complex > &, casacore::Matrix< casacore::Bool > &)
 
virtual void diffSrc (VisBuffer &, casacore::Array< casacore::Complex > &)
 Differentiate VB model w.r.t. More...
 
virtual void reReference ()
 Apply refant (no-op for Muellers) More...
 
virtual void accumulate (SolvableVisCal *, const casacore::Vector< casacore::Int > &)
 Accumulate another VisCal onto this one. More...
 
virtual void fluxscale (const casacore::String &, const casacore::Vector< casacore::Int > &, const casacore::Vector< casacore::Int > &, const casacore::Vector< casacore::Int > &, const casacore::Vector< casacore::String > &, const casacore::Float &, const casacore::String &, const casacore::String &, const casacore::String &, SolvableVisCal::fluxScaleStruct &, const casacore::String &, const casacore::Bool &, const casacore::Int &, const casacore::Bool &)
 Scale solutions. More...
 
virtual void keepNCT ()
 SVM-specific write to caltable. More...
 
virtual void state ()
 Report state: More...
 
virtual void listCal (const casacore::Vector< casacore::Int >, const casacore::Vector< casacore::Int >, const casacore::Matrix< casacore::Int >, const casacore::String &, const casacore::Int &)
 casacore::List calibration solutions in tabular form. More...
 
- Public Member Functions inherited from casa::SolvableVisCal
 SolvableVisCal (VisSet &vs)
 
 SolvableVisCal (casacore::String msname, casacore::Int MSnAnt, casacore::Int MSnSpw)
 
 SolvableVisCal (const MSMetaInfoForCal &msmc)
 
 SolvableVisCal (const casacore::Int &nAnt)
 
virtual ~SolvableVisCal ()
 
casacore::StringcalTableName ()
 Access to user-supplied parameters. More...
 
casacore::StringcalTableSelect ()
 
casacore::Boolappend ()
 
casacore::StringtInterpType ()
 
casacore::StringfInterpType ()
 
casacore::Vector< casacore::Int > & spwMap ()
 
casacore::Stringrefantmode ()
 
casacore::Intrefant ()
 
casacore::Vector< casacore::Int > & refantlist ()
 
casacore::Intminblperant ()
 
casacore::Stringapmode ()
 
casacore::Stringsolmode ()
 
casacore::Vector
< casacore::Float > & 
rmsthresh ()
 
casacore::Stringsolint ()
 
casacore::Stringfsolint ()
 
casacore::Doublepreavg ()
 
const SolNormsolNorm ()
 
casacore::Bool solnorm ()
 
casacore::FloatminSNR ()
 
casacore::Stringcombine ()
 
casacore::Bool combspw ()
 
casacore::Bool combfld ()
 
casacore::Bool combscan ()
 
casacore::Bool combobs ()
 
virtual casacore::Bool useGenericGatherForSolve ()
 Report if calibration available for specified spw (if no CalInterp available, assume true) More...
 
virtual casacore::Bool useGenericSolveOne ()
 Use generic solution engine for a single solve (usually inside the generic gathering mechanism) More...
 
virtual casacore::Int solvePol ()
 Solve for point-source X or Q,U? nominally no (0) More...
 
virtual casacore::Bool divideByStokesIModelForSolve ()
 Should data and model be divided by Stokes I model before average+solve? (Nominally false, for now) More...
 
virtual casacore::Bool accumulatable ()
 Is this type capable of accumulation? (nominally no) More...
 
virtual casacore::Bool smoothable ()
 Is this type capable of smoothing? (nominally no) More...
 
virtual casacore::Bool phandonly ()
 Should only parallel-hands be used in solving? (generally no (default=false), but GJones and related will override, and eventually this will be a user-set-able parameter) More...
 
casacore::IntfocusChan ()
 Access to focus channel. More...
 
casacore::Bool isSolved ()
 Is this ready to solve? More...
 
virtual casacore::Bool isSolvable ()
 Is this solveable? (via this interface, nominally yes) More...
 
virtual void setApply ()
 Set the application parameters. More...
 
virtual void setApply (const casacore::Record &apply)
 
virtual void setCallib (const casacore::Record &callib, const casacore::MeasurementSet &selms)
 
virtual void setModel (const casacore::String &)
 
virtual casacore::String applyinfo ()
 Report apply info/params, e.g. More...
 
virtual void setSolve ()
 Set the solving parameters. More...
 
virtual void setSolve (const casacore::Record &solve)
 
virtual casacore::String solveinfo ()
 Report solve info/params, e.g., for logging. More...
 
virtual void setAccumulate (VisSet &vs, const casacore::String &table, const casacore::String &select, const casacore::Double &t, const casacore::Int &refAnt=-1)
 Arrange for accumulation. More...
 
virtual casacore::Complex defaultPar ()
 Default value for parameters. More...
 
virtual casacore::Float defaultRPar ()
 
virtual casacore::Complex defaultCPar ()
 
virtual void setSpecify (const casacore::Record &specify)
 Arrange to build a cal table from specified values. More...
 
virtual void specify (const casacore::Record &specify)
 Fill a caltable with specified values. More...
 
virtual casacore::Int sizeUpSolve (VisSet &vs, casacore::Vector< casacore::Int > &nChunkPerSol)
 Size up the solving arrays, etc. More...
 
void inflate (VisSet &vs, const casacore::Bool &fillMeta=false)
 These inflate methods soon to deprecate (gmoellen, 20121212) Inflate the pristine CalSet (from VisSet info) More...
 
virtual void inflate (const casacore::Vector< casacore::Int > &nChanDat, const casacore::Vector< casacore::Int > &startChanDat, const casacore::Vector< casacore::Int > &nSlot)
 Inflate the pristine CalSet (generically) More...
 
virtual void guessPar (SDBList &)
 
double solTimeInterval () const
 Time-dep solution interval (VI2) More...
 
casacore::DoublefintervalHz ()
 Freq-dep solint values (const?!) More...
 
casacore::DoublefintervalCh ()
 
const casacore::Vector
< casacore::Double > & 
fintervalChV ()
 
casacore::Matrix< casacore::IntchanAveBounds ()
 
casacore::Matrix< casacore::IntchanAveBounds (casacore::Int spw)
 
virtual casacore::Cube
< casacore::Complex > & 
solveCPar ()
 Access to current solution parameters and matrices. More...
 
virtual casacore::Cube
< casacore::Float > & 
solveRPar ()
 
virtual casacore::Cube
< casacore::Bool > & 
solveParOK ()
 
virtual casacore::Cube
< casacore::Float > & 
solveParErr ()
 
virtual casacore::Cube
< casacore::Float > & 
solveParSNR ()
 
virtual casacore::Cube
< casacore::Complex > & 
solveAllCPar ()
 
virtual casacore::Cube
< casacore::Float > & 
solveAllRPar ()
 
virtual casacore::Cube
< casacore::Bool > & 
solveAllParOK ()
 
virtual casacore::Cube
< casacore::Float > & 
solveAllParErr ()
 
virtual casacore::Cube
< casacore::Float > & 
solveAllParSNR ()
 
virtual void solveAllCPar (casacore::Int spw, casacore::Cube< casacore::Complex > &cparSpw)
 Access to per-spw solution parameters and matrices. More...
 
virtual void solveAllRPar (casacore::Int spw, casacore::Cube< casacore::Float > &rparSpw)
 
virtual void solveAllParOK (casacore::Int spw, casacore::Cube< casacore::Bool > &parokSpw)
 
virtual void solveAllParErr (casacore::Int spw, casacore::Cube< casacore::Float > &parerrSpw)
 
virtual void solveAllParSNR (casacore::Int spw, casacore::Cube< casacore::Float > &parsnrSpw)
 
casacore::Vector
< casacore::Complex > & 
srcPolPar ()
 Access to source pol parameters. More...
 
casacore::Bool syncSolveMeta (VisBuffer &vb, const casacore::Int &fieldId)
 Synchronize the meta data with a solvable VisBuffer (returns false if VisBuffer has no valid data) More...
 
casacore::Bool syncSolveMeta (VisBuffGroupAcc &vbga)
 
void syncSolveMeta (SDBList &sdbs)
 
void overrideObsScan (casacore::Int obs, casacore::Int scan)
 Provide for override of currScan and currObs. More...
 
virtual void enforceAPonData (VisBuffer &vb)
 If apmode() is "A", convert vb's visibilities to amp + 0i. More...
 
virtual casacore::Bool verifyConstraints (VisBuffGroupAcc &vbag)
 Verify VisBuffer data sufficient for solving (wts, etc.) More...
 
virtual casacore::Bool verifyConstraints (SDBList &sdbs)
 
virtual casacore::Bool verifyForSolve (VisBuffer &vb)
 
virtual void selfGatherAndSolve (VisSet &vs, VisEquation &ve)
 Self- gather and/or solve prototypes (triggered by useGenericGatherForSolve=F or useGenericSolveOne=F; must be overridden in derived specializations) More...
 
virtual void selfSolveOne (VisBuffGroupAcc &vs)
 
virtual void selfSolveOne (SDBList &)
 
void setUpForPolSolve (VisBuffer &vb)
 Set up data and model for pol solve. More...
 
virtual void setUpForPolSolve (vi::VisBuffer2 &)
 A VB2-specific version which depends on local specialization (this may be further refined later) More...
 
virtual void differentiate (VisBuffer &, VisBuffer &, VisBuffer &, casacore::Matrix< casacore::Bool > &)
 
virtual void updatePar (const casacore::Vector< casacore::Complex > dCalPar, const casacore::Vector< casacore::Complex > dSrcPar)
 Update solve parameters incrementally (additive) More...
 
virtual void updatePar (const casacore::Vector< casacore::Complex > dCalPar)
 
virtual void formSolveSNR ()
 Form solution SNR. More...
 
virtual void applySNRThreshold ()
 Apply SNR threshold. More...
 
virtual casacore::Record actionRec ()
 Retrieve the cal flag info as a record. More...
 
virtual casacore::Record solveActionRec ()
 Retrieve solve-related info via Record. More...
 
virtual void smooth (casacore::Vector< casacore::Int > &fields, const casacore::String &smtype, const casacore::Double &smtime)
 
virtual void reportSolvedQU ()
 Report solved-for QU. More...
 
virtual void createMemCalTable ()
 New CalTable handling. More...
 
virtual void keep1 (casacore::Int ichan)
 
virtual void storeNCT ()
 
void storeNCT (const casacore::String &tableName, const casacore::Bool &append)
 
virtual void loadMemCalTable (casacore::String ctname, casacore::String field="")
 
virtual casacore::Bool spwOK (casacore::Int ispw)
 New spwOK. More...
 
virtual casacore::Bool VBOKforCalApply (vi::VisBuffer2 &vb)
 Is VB OK for calibration? More...
 
virtual casacore::Bool calAvailable (vi::VisBuffer2 &)
 Calibration available? More...
 
virtual void globalPostSolveTinker ()
 Post solve tinkering (generic version) More...
 
virtual void enforceAPonSoln ()
 Divide all solutions by their amplitudes. More...
 
virtual void normalize ()
 Normalize a solution (generic implementation) More...
 
virtual VisCalEnum::VCParType setParType (VisCalEnum::VCParType type)
 
virtual void currMetaNote ()
 
void setChanMask (casacore::PtrBlock< casacore::Vector< casacore::Bool > * > &chanmask)
 Handle external channel mask. More...
 
void clearChanMask ()
 
void applyChanMask (VisBuffer &vb)
 
virtual void printActivity (const casacore::Int nSlots, const casacore::Int slotNo, const casacore::Int fieldId, const casacore::Int spw, const casacore::Int nSolutions)
 Log periodic solver activity. More...
 
virtual void markTimer ()
 
virtual void setSimulate (VisSet &vs, casacore::Record &simpar, casacore::Vector< casacore::Double > &solTimes)
 

Set the simulation parameters More...

 
virtual void createCorruptor (const VisIter &vi, const casacore::Record &simpar, const int nSim)
 make a corruptor in a VC-specific way More...
 
casacore::Stringsimint ()
 access to simulation variables that are general to all VisCals More...
 
virtual casacore::String siminfo ()
 Simulation info/params, suitable for logging. More...
 
casacore::Bool isSimulated ()
 Is this calibration simulated? More...
 
casacore::Int sizeUpSim (VisSet &vs, casacore::Vector< casacore::Int > &nChunkPerSol, casacore::Vector< casacore::Double > &solTimes)
 calculate # required slots to simulate this SVC More...
 
virtual void setMeta (int obs, int scan, double time, int spw, const casacore::Vector< double > &freq, int fld)
 VI2-related refactor-----------------------------------—. More...
 
virtual int sizeSolveParCurrSpw (int nVisChan)
 Reshape solvePar* arrays for the currSpw() (ensitive to freqDepPar()) (VI2: replaces initSolvePar part of sizeUpSolve) More...
 
virtual void setDefSolveParCurrSpw (bool sync=false)
 Set parameters to def values in the currSpw(), and optionally sync everything. More...
 
void reParseSolintForVI2 ()
 Parse solint in VI2 context. More...
 
virtual void createMemCalTable2 ()
 Generate the in-memory caltable (empty) NB: no subtable revisions. More...
 
virtual void setOrVerifyCTFrequencies (int spw)
 Set (or verify) freq info in output cal table for specified spw. More...
 
- Public Member Functions inherited from casa::VisCal
 VisCal (VisSet &vs)
 
 VisCal (casacore::String msname, casacore::Int MSnAnt, casacore::Int MSnSpw)
 
 VisCal (const MSMetaInfoForCal &msmc)
 
 VisCal (const casacore::Int &nAnt)
 
virtual ~VisCal ()
 
virtual Type type ()=0
 Return the type of this calibration matrix (actual type of derived class). More...
 
virtual casacore::String typeName ()
 Return type name as string. More...
 
virtual casacore::String longTypeName ()
 
virtual VisCalEnum::VCParType parType ()
 Return the parameter type (nominally complex) More...
 
virtual casacore::Int nPar ()=0
 Number of pars per ant/bln (Must be implemented in specializations!) More...
 
virtual casacore::Vector
< casacore::Bool
spwOK ()
 Report calibration availability per spw (always true for non-tabular?) More...
 
virtual casacore::Bool freqDepPar ()
 Frequency-dependent Parameters? Nominally not. More...
 
const casacore::IntnChanPar () const
 Number of par channels in current spw. More...
 
virtual casacore::Bool freqDepMat ()
 Frequency-dependent Matrices? Nominally same as freqDepPar. More...
 
virtual casacore::Bool freqDepCalWt ()
 Freq-dep Weight scaling? // almost always false. More...
 
virtual casacore::Bool timeDepMat ()
 Matrices time-dependent per parameter set (nominally no) More...
 
casacore::Bool isApplied ()
 Is this calibration matrix to be applied? More...
 
virtual casacore::Doubleinterval ()
 Return the time interval over which this calibration is constant. More...
 
casacore::BoolcalWt ()
 Trigger calibration of weights. More...
 
virtual void correct (VisBuffer &vb, casacore::Bool trial=false)
 Apply calibration to data in VisBuffer (correct casacore::Data or corrupt Model) (in-place versions) More...
 
virtual void correct2 (vi::VisBuffer2 &vb, casacore::Bool trial=false, casacore::Bool doWtSp=false, casacore::Bool dosync=true)
 
virtual void corrupt (VisBuffer &vb)
 
virtual void corrupt2 (vi::VisBuffer2 &vb)
 
virtual void correct (VisBuffer &vb, casacore::Cube< casacore::Complex > &Vout, casacore::Bool trial=false)
 Apply calibration to data in VisBuffer; (alternate output versions) More...
 
virtual void corrupt (VisBuffer &vb, casacore::Cube< casacore::Complex > &Mout)
 
virtual void corrupt2 (vi::VisBuffer2 &vb, casacore::Cube< casacore::Complex > &Mout)
 
virtual void initCalFlagCount ()
 Flag counting. More...
 
void setPrtlev (const casacore::Int &prtlev)
 Set the print level. More...
 
casacore::Int blnidx (const casacore::Int &a1, const casacore::Int &a2)
 Baseline index from antenna indices: (assumes a1<=a2 !!) More...
 
casacore::StringextraTag ()
 
virtual void sizeApplyParCurrSpw (int nVisChan)
 Reshape solvePar* arrays for the currSpw() (sensitive to freqDepPar()) More...
 
virtual void setDefApplyParCurrSpw (bool sync=false, bool doInv=false)
 Set parameters to def values in the currSpw(), and optionally sync everything. More...
 
virtual void setApplyParCurrSpw (const casacore::Cube< casacore::Complex > cpar, bool sync=false, bool doInv=false)
 Set parameters to specified values in the currSpw(), and optionally sync matrices. More...
 
virtual void setApplyParCurrSpw (const casacore::Cube< float > rpar, bool sync=false, bool doInv=false)
 
virtual casacore::Cube
< casacore::Complex > & 
currCPar ()
 Access (public) to current solution parameters and matrices. More...
 
virtual casacore::Cube
< casacore::Float > & 
currRPar ()
 
virtual casacore::Cube
< casacore::Bool > & 
currParOK ()
 
- Public Member Functions inherited from casa::VisMueller
 VisMueller (VisSet &vs)
 Constructor. More...
 
 VisMueller (casacore::String msname, casacore::Int MSnAnt, casacore::Int MSnSpw)
 
 VisMueller (const MSMetaInfoForCal &msmc)
 
 VisMueller (const casacore::Int &nAnt)
 
virtual ~VisMueller ()
 
virtual VisCalEnum::MatrixType matrixType ()
 Return casacore::Matrix type. More...
 
virtual Mueller::MuellerType muellerType ()=0
 Mueller matrix type (must be implemented in Mueller specializations!) More...
 

Protected Member Functions

virtual casacore::Int nCalMat ()
 Number of Cal Matrices to form on baseline axis (Mueller, solve context: 1) More...
 
virtual casacore::Bool trivialDM ()
 Are differentiated M matrices constant in chan & bln? More...
 
virtual void initSolvePar ()
 Initialize solve parameter shape Mueller version: (nPar(),1,1) (one chan, one baseline) More...
 
MuellerdM ()
 Access to matrix rendering of dM (per par) More...
 
casacore::Array
< casacore::Complex > & 
diffMElem ()
 Access to differentiated Mueller elements. More...
 
virtual void invalidateDiffCalMat ()
 Invalidate diff cal matrices generically (at this level, just M, dM) More...
 
void invalidateDM ()
 Validation of diffMueller matrices. More...
 
void validateDM ()
 
casacore::Bool DMValid ()
 
virtual void syncDiffMat ()
 Synchronize the differentiated calibration (specialization for Mueller);. More...
 
virtual void syncDiffMueller ()
 Synchronize the Muellers AND diffMuellers. More...
 
virtual void calcAllDiffMueller ()
 Calculate the ensemble of diff'd Mueller Elements. More...
 
virtual void calcOneDiffMueller (casacore::Matrix< casacore::Complex > &mat, const casacore::Vector< casacore::Complex > &par)
 Calculate one diffMElem. More...
 
void createDiffMueller ()
 Create matrix renderers for dMs. More...
 
void setMatByOk ()
 Override VM::setMatByOk in solve context. More...
 
virtual void initTrivDM ()
 Initialize trivial diff'd Muellers. More...
 
virtual void stateSVM (const casacore::Bool &doVC)
 SVM-specific state. More...
 
virtual casacore::Float calcPowerNorm (casacore::Array< casacore::Float > &amp, const casacore::Array< casacore::Bool > &ok)
 atomic power normalization calculation Mueller version assumes amp in power units More...
 
- Protected Member Functions inherited from casa::SolvableVisCal
void setSolved (const casacore::Bool &flag)
 Set to-be-solved-for flag. More...
 
virtual void setSolveChannelization (VisSet &vs)
 Set matrix channelization according to a VisSet. More...
 
virtual void convertHzToCh ()
 Convert Hz to Ch in fsolint. More...
 
virtual void setFracChanAve ()
 Calculate chan averaging bounds. More...
 
void inflateNCTwithMetaData (VisSet &vs)
 Inflate an NCT w/ meta-data according to a VisSet (for accum) More...
 
void syncSolveCal ()
 Synchronize calibration for solve context. More...
 
void syncSolvePar ()
 Synchronize parameters for solve context. More...
 
virtual void calcPar ()
 Calculate parameters by some means (e.g., interpolation from a CalSet) More...
 
virtual void calcParByCLPP ()
 
virtual void stateSVC (const casacore::Bool &doVC)
 Report the SVC-specific state, w/ option for VC::state() More...
 
casacore::Complex normSolnArray (casacore::Array< casacore::Complex > &sol, const casacore::Array< casacore::Bool > &solOK, const casacore::Bool doPhase=false)
 Normalize a (complex) solution array (generic) More...
 
casacore::LogIOlogSink ()
 Logger. More...
 
void verifyCalTable (const casacore::String &caltablename)
 Check if a cal table is appropriate. More...
 
void sortVisSet (VisSet &vs, const casacore::Bool verbose=false)
 
void setSimulated (const casacore::Bool &flag)
 Set state flag to simulate cal terms. More...
 
casacore::BoolsimOnTheFly ()
 RI todo implement calcOneJones like calcAllMueller calculate terms during apply, or up front during setSim? More...
 
- Protected Member Functions inherited from casa::VisCal
void setApplied (const casacore::Bool &flag)
 Set applied state flag. More...
 
casacore::StringmsName ()
 
casacore::IntnSpw ()
 General Shape Info. More...
 
casacore::IntnAnt ()
 
casacore::IntnBln ()
 
casacore::IntcurrSpw ()
 Current in-focus spw. More...
 
casacore::DoublelastTime ()
 Current coords. More...
 
casacore::DoublecurrTime ()
 
casacore::IntcurrScan ()
 
casacore::IntcurrObs ()
 
casacore::IntcurrField ()
 
casacore::IntcurrIntent ()
 
casacore::Vector
< casacore::Double > & 
currFreq ()
 
casacore::DoublerefTime ()
 
casacore::DoublerefFreq ()
 
casacore::IntnChanPar ()
 Current spectral shapes. More...
 
casacore::IntnChanMat ()
 
casacore::IntstartChan ()
 
casacore::Vector< casacore::Int > & nChanParList ()
 
casacore::Vector< casacore::Int > & nChanMatList ()
 
casacore::Vector< casacore::Int > & startChanList ()
 
VisVectorV ()
 Access to matrix renderings of Visibilities. More...
 
void invalidateP ()
 Validation of calibration parameters. More...
 
void validateP ()
 
casacore::Bool PValid ()
 
casacore::Cube< casacore::Float > & currWtScale ()
 Access to weight-scaling factors. More...
 
virtual void countInFlag (const VisBuffer &vb)
 Flag counting. More...
 
virtual void countInFlag2 (const vi::VisBuffer2 &vb)
 
virtual void countOutFlag (const VisBuffer &vb)
 
virtual void countOutFlag2 (const vi::VisBuffer2 &vb)
 
virtual void syncCal (const VisBuffer &vb, const casacore::Bool &doInv=false)
 Synchronize "gains" with a VisBuffer or another VisCal. More...
 
virtual void syncCal2 (const vi::VisBuffer2 &vb, const casacore::Bool &doInv=false)
 
virtual void syncCal (VisCal &vc)
 
virtual void syncMeta (const VisBuffer &vb)
 Set internal meta data from a VisBuffer or another VisCal. More...
 
virtual void syncMeta2 (const vi::VisBuffer2 &vb)
 
void syncMeta (VisCal &vc)
 
void syncMeta (const casacore::Int &spw, const casacore::Double &time, const casacore::Int &field, const casacore::Vector< casacore::Double > &freq, const casacore::Int &nchan)
 
void setCalChannelization (const casacore::Int &nChanDat)
 Set the calibration matrix channelization. More...
 
void checkCurrCal ()
 Test for need of new calibration. More...
 
virtual void syncCal (const casacore::Bool &doInv=false)
 Synchronize "gains" with current meta-data. More...
 
virtual void syncPar ()
 Sync parameters for current meta data. More...
 
casacore::Intprtlev ()
 Return print (cout) level. More...
 
void setCurrField (const casacore::Int &ifld)
 set current field index vector to given field id More...
 
const MSMetaInfoForCalmsmc () const
 Access to the MSMetaInfoForCal (throws if none) More...
 
- Protected Member Functions inherited from casa::VisMueller
virtual casacore::IntnElem ()
 Total number of parameter sets required. More...
 
virtual casacore::Bool trivialMuellerElem ()=0
 Are the parameters the matrix elements? (or is a non-trivial calculation required?) (Must be implemented in specializations!) More...
 
virtual casacore::Bool applyByMueller ()
 Are we applying via Mueller multiplication? (necessarily true for native Muellers) More...
 
MuellerM ()
 Access to matrix renderings of Muellers. More...
 
casacore::Cube
< casacore::Complex > & 
currMElem ()
 Access to current matrices. More...
 
casacore::Cube< casacore::Bool > & currMElemOK ()
 
virtual void invalidateCalMat ()
 Invalidate cal matrices generically (at this level, just Mueller) More...
 
void invalidateM ()
 Validation of Mueller matrices (for currSpw) More...
 
void validateM ()
 
casacore::Bool MValid ()
 
virtual void applyCal (VisBuffer &vb, casacore::Cube< casacore::Complex > &Vout, casacore::Bool trial=false)
 Row-by-row apply to a casacore::Cube<casacore::Complex> (applyByMueller override) More...
 
virtual void applyCal2 (vi::VisBuffer2 &vb, casacore::Cube< casacore::Complex > &Vout, casacore::Cube< casacore::Float > &Wout, casacore::Bool trial=false)
 
virtual void syncCalMat (const casacore::Bool &doInv=false)
 { throw(casacore::AipsError("VisMueller::applyCal2 NYI!!!!!!!!!!!!!")); }; More...
 
virtual void syncMueller (const casacore::Bool &doInv=false)
 Sync Mueller matrix elements for current parameters. More...
 
virtual void calcAllMueller ()
 Calculate an ensemble of Mueller matrices (all baselines, channels) More...
 
virtual void calcOneMueller (casacore::Vector< casacore::Complex > &mat, casacore::Vector< casacore::Bool > &mOk, const casacore::Vector< casacore::Complex > &par, const casacore::Vector< casacore::Bool > &pOk)
 Calculate a single Mueller matrix by some means. More...
 
virtual void invMueller ()
 Invert Mueller matrices. More...
 
void createMueller ()
 Create Mueller matrix algebra interface. More...
 
virtual void syncWtScale ()
 Synchronize weight scale factors. More...
 
virtual void calcWtScale ()
 Perform weight scale calculation (specializable) More...
 
virtual void updateWt (casacore::Vector< casacore::Float > &wt, const casacore::Int &a1, const casacore::Int &a2)
 Update the wt vector for a baseline. More...
 

Private Member Functions

 SolvableVisMueller ()
 Default ctor is private. More...
 

Private Attributes

MuellerdM_
 Mueller wrapper for diffMElem_;. More...
 
casacore::Array
< casacore::Complex > 
diffMElem_
 Differentiated Mueller matrix elements. More...
 
casacore::Bool DMValid_
 diffMueller validation More...
 

Additional Inherited Members

- Public Types inherited from casa::SolvableVisCal
typedef struct
casa::SolvableVisCal::fluxScaleStruct 
fluxScaleStruct
 
- Public Types inherited from casa::VisCal
enum  Type {
  Test,
  ANoise,
  M,
  KAntPos,
  B,
  K,
  G,
  J,
  D,
  X,
  C,
  P,
  E,
  T,
  F,
  A,
  ALL
}
 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};. More...
 
enum  ParType {
  Co,
  Re,
  CoRe
}
 Enumeration of parameter types (casacore::Complex, Real, or Both) More...
 
- Static Public Member Functions inherited from casa::VisCal
static casacore::String nameOfType (Type type)
 
- Public Attributes inherited from casa::SolvableVisCal
CalCorruptorcorruptor_p
 object that can simulate the corruption terms More...
 
- Protected Attributes inherited from casa::SolvableVisCal
casacore::Int parType_
 
NewCalTablect_
 New CalTable. More...
 
CTPatchedInterpci_
 
CLPatchPanelcpp_
 
casacore::Vector< casacore::BoolspwOK_
 
casacore::Double maxTimePerSolution_p
 
casacore::Double minTimePerSolution_p
 
casacore::Double avgTimePerSolution_p
 
casacore::Float userPrintActivityInterval_p
 
casacore::Float userPrintActivityFraction_p
 
casacore::uInt caiRC_p
 
casacore::uInt cafRC_p
 
casacore::Timer timer_p
 

Detailed Description


SolvableVisMueller

Definition at line 703 of file SolvableVisCal.h.

Constructor & Destructor Documentation

casa::SolvableVisMueller::SolvableVisMueller ( VisSet vs)
casa::SolvableVisMueller::SolvableVisMueller ( casacore::String  msname,
casacore::Int  MSnAnt,
casacore::Int  MSnSpw 
)
casa::SolvableVisMueller::SolvableVisMueller ( const MSMetaInfoForCal msmc)
casa::SolvableVisMueller::SolvableVisMueller ( const casacore::Int nAnt)
virtual casa::SolvableVisMueller::~SolvableVisMueller ( )
virtual
casa::SolvableVisMueller::SolvableVisMueller ( )
private

Default ctor is private.

Member Function Documentation

virtual void casa::SolvableVisMueller::accumulate ( SolvableVisCal ,
const casacore::Vector< casacore::Int > &   
)
inlinevirtual

Accumulate another VisCal onto this one.

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 745 of file SolvableVisCal.h.

virtual void casa::SolvableVisMueller::calcAllDiffMueller ( )
protectedvirtual

Calculate the ensemble of diff'd Mueller Elements.

virtual void casa::SolvableVisMueller::calcOneDiffMueller ( casacore::Matrix< casacore::Complex > &  mat,
const casacore::Vector< casacore::Complex > &  par 
)
protectedvirtual

Calculate one diffMElem.

virtual casacore::Float casa::SolvableVisMueller::calcPowerNorm ( casacore::Array< casacore::Float > &  amp,
const casacore::Array< casacore::Bool > &  ok 
)
protectedvirtual

atomic power normalization calculation Mueller version assumes amp in power units

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

void casa::SolvableVisMueller::createDiffMueller ( )
protected

Create matrix renderers for dMs.

virtual void casa::SolvableVisMueller::differentiate ( CalVisBuffer )
inlinevirtual

Differentiate VB model w.r.t.

Mueller parameters (no 2nd derivative yet)

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 729 of file SolvableVisCal.h.

virtual void casa::SolvableVisMueller::differentiate ( SolveDataBuffer )
inlinevirtual

Reimplemented from casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 730 of file SolvableVisCal.h.

virtual void casa::SolvableVisMueller::differentiate ( VisBuffer ,
casacore::Cube< casacore::Complex > &  ,
casacore::Array< casacore::Complex > &  ,
casacore::Matrix< casacore::Bool > &   
)
inlinevirtual

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones, casa::LJJones, and casa::EPJones.

Definition at line 731 of file SolvableVisCal.h.

casacore::Array<casacore::Complex>& casa::SolvableVisMueller::diffMElem ( )
inlineprotected

Access to differentiated Mueller elements.

Definition at line 796 of file SolvableVisCal.h.

References diffMElem_.

virtual void casa::SolvableVisMueller::diffSrc ( VisBuffer ,
casacore::Array< casacore::Complex > &   
)
inlinevirtual

Differentiate VB model w.r.t.

Source parameters

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 738 of file SolvableVisCal.h.

Mueller& casa::SolvableVisMueller::dM ( )
inlineprotected

Access to matrix rendering of dM (per par)

Definition at line 793 of file SolvableVisCal.h.

References dM_.

casacore::Bool casa::SolvableVisMueller::DMValid ( )
inlineprotected

Definition at line 804 of file SolvableVisCal.h.

References DMValid_.

virtual void casa::SolvableVisMueller::fluxscale ( const casacore::String ,
const casacore::Vector< casacore::Int > &  ,
const casacore::Vector< casacore::Int > &  ,
const casacore::Vector< casacore::Int > &  ,
const casacore::Vector< casacore::String > &  ,
const casacore::Float ,
const casacore::String ,
const casacore::String ,
const casacore::String ,
SolvableVisCal::fluxScaleStruct ,
const casacore::String ,
const casacore::Bool ,
const casacore::Int ,
const casacore::Bool  
)
inlinevirtual

Scale solutions.

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 749 of file SolvableVisCal.h.

virtual void casa::SolvableVisMueller::guessPar ( VisBuffer )
inlinevirtual

Hazard a guess at the parameters (solvePar) given the data.

Implements casa::SolvableVisCal.

Reimplemented in casa::JJones, casa::GJones, casa::FringeJones, casa::KJones, casa::TJones, casa::LJJones, casa::EPJones, casa::DJones, casa::EGainCurve, and casa::AccorJones.

Definition at line 726 of file SolvableVisCal.h.

virtual void casa::SolvableVisMueller::initSolvePar ( )
protectedvirtual

Initialize solve parameter shape Mueller version: (nPar(),1,1) (one chan, one baseline)

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones, casa::XfJones, casa::XfJones, casa::LJJones, and casa::EPJones.

virtual void casa::SolvableVisMueller::initTrivDM ( )
protectedvirtual

Initialize trivial diff'd Muellers.

virtual void casa::SolvableVisMueller::invalidateDiffCalMat ( )
inlineprotectedvirtual

Invalidate diff cal matrices generically (at this level, just M, dM)

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 799 of file SolvableVisCal.h.

References invalidateDM(), and casa::VisMueller::invalidateM().

Referenced by casa::SolvableVisJones::invalidateDiffCalMat().

void casa::SolvableVisMueller::invalidateDM ( )
inlineprotected

Validation of diffMueller matrices.

Definition at line 802 of file SolvableVisCal.h.

References DMValid_.

Referenced by invalidateDiffCalMat().

virtual void casa::SolvableVisMueller::keepNCT ( )
virtual

SVM-specific write to caltable.

Reimplemented from casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones, casa::SDDoubleCircleGainCal, and casa::AccorJones.

virtual void casa::SolvableVisMueller::listCal ( const casacore::Vector< casacore::Int ,
const casacore::Vector< casacore::Int ,
const casacore::Matrix< casacore::Int ,
const casacore::String ,
const casacore::Int  
)
inlinevirtual

casacore::List calibration solutions in tabular form.

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 772 of file SolvableVisCal.h.

References casa::VisCal::typeName().

virtual casacore::Int casa::SolvableVisMueller::nCalMat ( )
inlineprotectedvirtual

Number of Cal Matrices to form on baseline axis (Mueller, solve context: 1)

Reimplemented from casa::VisMueller.

Reimplemented in casa::SolvableVisJones.

Definition at line 783 of file SolvableVisCal.h.

References casa::SolvableVisCal::isSolved(), and casa::VisCal::nBln().

virtual casacore::Bool casa::SolvableVisMueller::normalizable ( )
inlinevirtual
virtual casacore::Int casa::SolvableVisMueller::nTotalPar ( )
inlinevirtual

Total number of (complex) parameters per solve Mueller version: just return number of per-Bln parameters.

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

Definition at line 720 of file SolvableVisCal.h.

References casa::VisCal::nPar().

virtual void casa::SolvableVisMueller::reReference ( )
inlinevirtual

Apply refant (no-op for Muellers)

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones, casa::JJones, and casa::DJones.

Definition at line 742 of file SolvableVisCal.h.

void casa::SolvableVisMueller::setMatByOk ( )
inlineprotectedvirtual

Override VM::setMatByOk in solve context.

Reimplemented from casa::VisMueller.

Reimplemented in casa::SolvableVisJones.

Definition at line 822 of file SolvableVisCal.h.

References casa::SolvableVisCal::isSolved(), and casa::VisMueller::setMatByOk().

virtual void casa::SolvableVisMueller::state ( )
inlinevirtual

Report state:

Reimplemented from casa::VisMueller.

Reimplemented in casa::SolvableVisJones.

Definition at line 769 of file SolvableVisCal.h.

References stateSVM().

virtual void casa::SolvableVisMueller::stateSVM ( const casacore::Bool doVC)
protectedvirtual

SVM-specific state.

Referenced by state().

virtual void casa::SolvableVisMueller::syncDiffMat ( )
protectedvirtual

Synchronize the differentiated calibration (specialization for Mueller);.

Implements casa::SolvableVisCal.

Reimplemented in casa::SolvableVisJones.

virtual void casa::SolvableVisMueller::syncDiffMueller ( )
protectedvirtual

Synchronize the Muellers AND diffMuellers.

virtual casacore::Bool casa::SolvableVisMueller::trivialDM ( )
inlineprotectedvirtual

Are differentiated M matrices constant in chan & bln?

Reimplemented in casa::SolvableVisJones.

Definition at line 786 of file SolvableVisCal.h.

void casa::SolvableVisMueller::validateDM ( )
inlineprotected

Definition at line 803 of file SolvableVisCal.h.

References DMValid_.

Member Data Documentation

casacore::Array<casacore::Complex> casa::SolvableVisMueller::diffMElem_
private

Differentiated Mueller matrix elements.

Definition at line 843 of file SolvableVisCal.h.

Referenced by diffMElem().

Mueller* casa::SolvableVisMueller::dM_
private

Mueller wrapper for diffMElem_;.

Definition at line 840 of file SolvableVisCal.h.

Referenced by dM().

casacore::Bool casa::SolvableVisMueller::DMValid_
private

diffMueller validation

Definition at line 846 of file SolvableVisCal.h.

Referenced by DMValid(), invalidateDM(), and validateDM().


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