#include <CLPatchPanel.h>
Public Member Functions | |
CLPatchPanel (const String &ctname, const Record &callib, VisCalEnum::MatrixType mtype, Int nPar) | |
From caltable name and MS shapes. | |
CLPatchPanel (const String &ctname, const MeasurementSet &ms, const Record &callib, VisCalEnum::MatrixType mtype, Int nPar) | |
From caltable name and (selected) MS. | |
virtual | ~CLPatchPanel () |
Destructor. | |
Bool | interpolate (Cube< Complex > &resultC, Cube< Bool > &resFlag, Int obs, Int fld, Int ent, Int spw, Double time, Double freq=-1.0) |
Interpolate, given input obs, field, intent, spw, timestamp, & (optionally) freq returns T if new result (anywhere,anyhow) For Complex params (calls Float version). | |
Bool | interpolate (Cube< Float > &resultR, Cube< Bool > &resFlag, Int obs, Int fld, Int ent, Int spw, Double time, Double freq=-1.0) |
For Float params. | |
Bool | interpolate (Cube< Complex > &resultC, Cube< Bool > &resFlag, Int obs, Int fld, Int ent, Int spw, Double time, const Vector< Double > &freq) |
Interpolate, given input obs, field, intent, spw, timestamp, & freq list This is for freqdep interpolation context returns T if new result (anywhere,anyhow) For Complex params (calls Float version). | |
Bool | interpolate (Cube< Float > &resultR, Cube< Bool > &resFlag, Int obs, Int fld, Int ent, Int spw, Double time, const Vector< Double > &freq) |
For Float params. | |
Bool | getTresult (Cube< Float > &resultR, Cube< Bool > &resFlag, Int obs, Int fld, Int ent, Int spw) |
Const access to various state TBD. | |
const Vector< Double > & | refFreqIn () |
Access to CalTable's freq info Vector<Double> freqIn(Int spw); // NYI. | |
void | listmappings () |
Report state. | |
void | state () |
Private Member Functions | |
CLPatchPanel () | |
Null ctor does nothing. | |
void | selectOnCTorMS (Table &ctout, MSSelectableTable &msst, const String &obs, const String &fld, const String &ent, const String &spw, const String &ant, const String &taql) |
Methods to support layered selection. | |
void | selectOnMS (MeasurementSet &msout, const MeasurementSet &msin, const String &obs, const String &fld, const String &ent, const String &spw, const String &ant) |
void | selectOnCT (NewCalTable &ctout, const NewCalTable &ctin, const String &obs, const String &fld, const String &spw, const String &ant1) |
Vector< Int > | getCLuniqueObsIds (NewCalTable &ct) |
Extract unique indices from caltables. | |
Vector< Int > | getCLuniqueFldIds (NewCalTable &ct) |
Vector< Int > | getCLuniqueSpwIds (NewCalTable &ct) |
Vector< Int > | getCLuniqueIds (NewCalTable &ct, String vcol) |
Vector< Int > | getMSuniqueIds (MeasurementSet &ms, String vcol) |
Extract unique indices (net selected) from MS. | |
void | resampleInFreq (Matrix< Float > &fres, Matrix< Bool > &fflg, const Vector< Double > &fout, Matrix< Float > &tres, Matrix< Bool > &tflg, const Vector< Double > &fin, String finterp) |
Set generic antenna/baseline map void setElemMap();. | |
void | resampleFlagsInFreq (Vector< Bool > &flgout, const Vector< Double > &fout, Vector< Bool > &flgin, const Vector< Double > &fin, String finterp) |
InterpolateArray1D< Double, Float >::InterpolationMethod | ftype (String &strtype) |
Baseline index from antenna indices: (assumes a1<=a2 !!) inline Int blnidx(const Int& a1, const Int& a2, const Int& nAnt) { return a1*nAnt-a1*(a1+1)/2+a2; };. | |
Private Attributes | |
NewCalTable | ct_ |
PRIVATE DATA:. | |
NewCalTable | ctasms_ |
MeasurementSet | ms_ |
Associated (selected) MS. | |
VisCalEnum::MatrixType | mtype_ |
Matrix type. | |
Bool | isCmplx_ |
Are parameters fundamentally complex? | |
Int | nPar_ |
The number of (Float) parameters (per-chan, per-element). | |
Int | nFPar_ |
Vector< Int > | nChanIn_ |
InterpolateArray1D<Double,Float>::InterpolationMethod ia1dmethod_;. | |
Vector< Vector< Double > > | freqIn_ |
Vector< Double > | refFreqIn_ |
Int | nMSObs_ |
Obs, Field, Spw, Ant _output_ (MS) sizes calibration required for up to this many. | |
Int | nMSFld_ |
Int | nMSSpw_ |
Int | nMSAnt_ |
Int | nMSElem_ |
Int | nCTObs_ |
Obs, Field, Spw, Ant _input_ (CalTable) sizes patch panels should not violate these (point to larger indices). | |
Int | nCTFld_ |
Int | nCTSpw_ |
Int | nCTAnt_ |
Int | nCTElem_ |
std::map< CTCalPatchKey, CLPPResult > | clTres_ |
Maps. | |
std::map< CTCalPatchKey, String > | ciname_ |
std::map< CTCalPatchKey, CTTimeInterp1 * > | ci_ |
std::map< MSCalPatchKey, CLPPResult > | msTres_ |
std::map< MSCalPatchKey, CLPPResult > | msFres_ |
std::map< MSCalPatchKey, String > | msciname_ |
std::map< MSCalPatchKey, Int > | ctspw_ |
std::map< MSCalPatchKey, String > | finterp_ |
std::map< MSCalPatchKey, CTTimeInterp1 * > | msci_ |
Vector< Float * > | lastresadd_ |
Keep track of last cal result address (per spw). | |
Cube< Float > | result_ |
Control conjugation of baseline-based solutions when mapping requires Vector<Bool> conjTab_;. | |
Cube< Bool > | resFlag_ |
LogIO | logsink_ |
Definition at line 216 of file CLPatchPanel.h.
casa::CLPatchPanel::CLPatchPanel | ( | const String & | ctname, | |
const Record & | callib, | |||
VisCalEnum::MatrixType | mtype, | |||
Int | nPar | |||
) |
From caltable name and MS shapes.
casa::CLPatchPanel::CLPatchPanel | ( | const String & | ctname, | |
const MeasurementSet & | ms, | |||
const Record & | callib, | |||
VisCalEnum::MatrixType | mtype, | |||
Int | nPar | |||
) |
From caltable name and (selected) MS.
virtual casa::CLPatchPanel::~CLPatchPanel | ( | ) | [virtual] |
Destructor.
casa::CLPatchPanel::CLPatchPanel | ( | ) | [inline, private] |
Null ctor does nothing.
Definition at line 277 of file CLPatchPanel.h.
InterpolateArray1D<Double,Float>::InterpolationMethod casa::CLPatchPanel::ftype | ( | String & | strtype | ) | [private] |
Baseline index from antenna indices: (assumes a1<=a2 !!) inline Int blnidx(const Int& a1, const Int& a2, const Int& nAnt) { return a1*nAnt-a1*(a1+1)/2+a2; };.
Translate freq axis interpolation string
Vector<Int> casa::CLPatchPanel::getCLuniqueFldIds | ( | NewCalTable & | ct | ) | [inline, private] |
Definition at line 297 of file CLPatchPanel.h.
References getCLuniqueIds().
Vector<Int> casa::CLPatchPanel::getCLuniqueIds | ( | NewCalTable & | ct, | |
String | vcol | |||
) | [private] |
Referenced by getCLuniqueFldIds(), getCLuniqueObsIds(), and getCLuniqueSpwIds().
Vector<Int> casa::CLPatchPanel::getCLuniqueObsIds | ( | NewCalTable & | ct | ) | [inline, private] |
Extract unique indices from caltables.
Definition at line 296 of file CLPatchPanel.h.
References getCLuniqueIds().
Vector<Int> casa::CLPatchPanel::getCLuniqueSpwIds | ( | NewCalTable & | ct | ) | [inline, private] |
Definition at line 298 of file CLPatchPanel.h.
References getCLuniqueIds().
Vector<Int> casa::CLPatchPanel::getMSuniqueIds | ( | MeasurementSet & | ms, | |
String | vcol | |||
) | [private] |
Extract unique indices (net selected) from MS.
Bool casa::CLPatchPanel::getTresult | ( | Cube< Float > & | resultR, | |
Cube< Bool > & | resFlag, | |||
Int | obs, | |||
Int | fld, | |||
Int | ent, | |||
Int | spw | |||
) |
Const access to various state TBD.
Bool casa::CLPatchPanel::interpolate | ( | Cube< Float > & | resultR, | |
Cube< Bool > & | resFlag, | |||
Int | obs, | |||
Int | fld, | |||
Int | ent, | |||
Int | spw, | |||
Double | time, | |||
const Vector< Double > & | freq | |||
) |
For Float params.
Bool casa::CLPatchPanel::interpolate | ( | Cube< Complex > & | resultC, | |
Cube< Bool > & | resFlag, | |||
Int | obs, | |||
Int | fld, | |||
Int | ent, | |||
Int | spw, | |||
Double | time, | |||
const Vector< Double > & | freq | |||
) |
Interpolate, given input obs, field, intent, spw, timestamp, & freq list This is for freqdep interpolation context returns T if new result (anywhere,anyhow) For Complex params (calls Float version).
Bool casa::CLPatchPanel::interpolate | ( | Cube< Float > & | resultR, | |
Cube< Bool > & | resFlag, | |||
Int | obs, | |||
Int | fld, | |||
Int | ent, | |||
Int | spw, | |||
Double | time, | |||
Double | freq = -1.0 | |||
) |
For Float params.
Bool casa::CLPatchPanel::interpolate | ( | Cube< Complex > & | resultC, | |
Cube< Bool > & | resFlag, | |||
Int | obs, | |||
Int | fld, | |||
Int | ent, | |||
Int | spw, | |||
Double | time, | |||
Double | freq = -1.0 | |||
) |
Interpolate, given input obs, field, intent, spw, timestamp, & (optionally) freq returns T if new result (anywhere,anyhow) For Complex params (calls Float version).
void casa::CLPatchPanel::listmappings | ( | ) |
Report state.
const Vector<Double>& casa::CLPatchPanel::refFreqIn | ( | ) | [inline] |
Access to CalTable's freq info Vector<Double> freqIn(Int spw); // NYI.
Definition at line 268 of file CLPatchPanel.h.
References refFreqIn_.
void casa::CLPatchPanel::resampleFlagsInFreq | ( | Vector< Bool > & | flgout, | |
const Vector< Double > & | fout, | |||
Vector< Bool > & | flgin, | |||
const Vector< Double > & | fin, | |||
String | finterp | |||
) | [private] |
void casa::CLPatchPanel::resampleInFreq | ( | Matrix< Float > & | fres, | |
Matrix< Bool > & | fflg, | |||
const Vector< Double > & | fout, | |||
Matrix< Float > & | tres, | |||
Matrix< Bool > & | tflg, | |||
const Vector< Double > & | fin, | |||
String | finterp | |||
) | [private] |
Set generic antenna/baseline map void setElemMap();.
Resample in frequency
void casa::CLPatchPanel::selectOnCT | ( | NewCalTable & | ctout, | |
const NewCalTable & | ctin, | |||
const String & | obs, | |||
const String & | fld, | |||
const String & | spw, | |||
const String & | ant1 | |||
) | [private] |
void casa::CLPatchPanel::selectOnCTorMS | ( | Table & | ctout, | |
MSSelectableTable & | msst, | |||
const String & | obs, | |||
const String & | fld, | |||
const String & | ent, | |||
const String & | spw, | |||
const String & | ant, | |||
const String & | taql | |||
) | [private] |
Methods to support layered selection.
void casa::CLPatchPanel::selectOnMS | ( | MeasurementSet & | msout, | |
const MeasurementSet & | msin, | |||
const String & | obs, | |||
const String & | fld, | |||
const String & | ent, | |||
const String & | spw, | |||
const String & | ant | |||
) | [private] |
void casa::CLPatchPanel::state | ( | ) |
std::map<CTCalPatchKey,CTTimeInterp1*> casa::CLPatchPanel::ci_ [private] |
Definition at line 358 of file CLPatchPanel.h.
std::map<CTCalPatchKey,String> casa::CLPatchPanel::ciname_ [private] |
Definition at line 357 of file CLPatchPanel.h.
std::map<CTCalPatchKey,CLPPResult> casa::CLPatchPanel::clTres_ [private] |
Maps.
Definition at line 356 of file CLPatchPanel.h.
NewCalTable casa::CLPatchPanel::ct_ [private] |
NewCalTable casa::CLPatchPanel::ctasms_ [private] |
Definition at line 326 of file CLPatchPanel.h.
std::map<MSCalPatchKey,Int> casa::CLPatchPanel::ctspw_ [private] |
Definition at line 363 of file CLPatchPanel.h.
std::map<MSCalPatchKey,String> casa::CLPatchPanel::finterp_ [private] |
Definition at line 364 of file CLPatchPanel.h.
Vector<Vector<Double> > casa::CLPatchPanel::freqIn_ [private] |
Definition at line 344 of file CLPatchPanel.h.
Bool casa::CLPatchPanel::isCmplx_ [private] |
Are parameters fundamentally complex?
Definition at line 335 of file CLPatchPanel.h.
Vector<Float*> casa::CLPatchPanel::lastresadd_ [private] |
Keep track of last cal result address (per spw).
Definition at line 368 of file CLPatchPanel.h.
LogIO casa::CLPatchPanel::logsink_ [private] |
Definition at line 377 of file CLPatchPanel.h.
MeasurementSet casa::CLPatchPanel::ms_ [private] |
Associated (selected) MS.
Definition at line 329 of file CLPatchPanel.h.
std::map<MSCalPatchKey,CTTimeInterp1*> casa::CLPatchPanel::msci_ [private] |
Definition at line 365 of file CLPatchPanel.h.
std::map<MSCalPatchKey,String> casa::CLPatchPanel::msciname_ [private] |
Definition at line 362 of file CLPatchPanel.h.
std::map<MSCalPatchKey,CLPPResult> casa::CLPatchPanel::msFres_ [private] |
Definition at line 361 of file CLPatchPanel.h.
std::map<MSCalPatchKey,CLPPResult> casa::CLPatchPanel::msTres_ [private] |
Definition at line 361 of file CLPatchPanel.h.
Matrix type.
Definition at line 332 of file CLPatchPanel.h.
Vector<Int> casa::CLPatchPanel::nChanIn_ [private] |
InterpolateArray1D<Double,Float>::InterpolationMethod ia1dmethod_;.
CalTable freq axis info
Definition at line 343 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nCTAnt_ [private] |
Definition at line 353 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nCTElem_ [private] |
Definition at line 353 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nCTFld_ [private] |
Definition at line 353 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nCTObs_ [private] |
Obs, Field, Spw, Ant _input_ (CalTable) sizes patch panels should not violate these (point to larger indices).
Definition at line 353 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nCTSpw_ [private] |
Definition at line 353 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nFPar_ [private] |
Definition at line 338 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nMSAnt_ [private] |
Definition at line 349 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nMSElem_ [private] |
Definition at line 349 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nMSFld_ [private] |
Definition at line 349 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nMSObs_ [private] |
Obs, Field, Spw, Ant _output_ (MS) sizes calibration required for up to this many.
Definition at line 349 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nMSSpw_ [private] |
Definition at line 349 of file CLPatchPanel.h.
Int casa::CLPatchPanel::nPar_ [private] |
The number of (Float) parameters (per-chan, per-element).
Definition at line 338 of file CLPatchPanel.h.
Vector<Double> casa::CLPatchPanel::refFreqIn_ [private] |
Definition at line 345 of file CLPatchPanel.h.
Referenced by refFreqIn().
Cube<Bool> casa::CLPatchPanel::resFlag_ [private] |
Definition at line 375 of file CLPatchPanel.h.
Cube<Float> casa::CLPatchPanel::result_ [private] |
Control conjugation of baseline-based solutions when mapping requires Vector<Bool> conjTab_;.
Definition at line 374 of file CLPatchPanel.h.