casa
$Rev:20696$
|
#include <CTPatchedInterp.h>
Public Member Functions | |
CTPatchedInterp (NewCalTable &ct, VisCalEnum::MatrixType mtype, Int nPar, const String &timetype, const String &freqtype, const String &fieldtype, Vector< Int > spwmap=Vector< Int >()) | |
From NewCalTable only. | |
CTPatchedInterp (NewCalTable &ct, VisCalEnum::MatrixType mtype, Int nPar, const String &timetype, const String &freqtype, const String &fieldtype, const MeasurementSet &ms, Vector< Int > spwmap=Vector< Int >()) | |
From NewCalTable and MS. | |
CTPatchedInterp (NewCalTable &ct, VisCalEnum::MatrixType mtype, Int nPar, const String &timetype, const String &freqtype, const String &fieldtype, const ROMSColumns &mscol, Vector< Int > spwmap=Vector< Int >()) | |
From NewCalTable and MSColumns. | |
virtual | ~CTPatchedInterp () |
Destructor. | |
Bool | interpolate (Int obs, Int fld, Int spw, Double time, Double freq=-1.0) |
Interpolate, given input field, spw, timestamp, & (optionally) freq list returns T if new result (anywhere) | |
Bool | interpolate (Int obs, Int fld, Int spw, Double time, const Vector< Double > &freq) |
Array< Float > & | resultF (Int obs, Int fld, Int spw) |
Access to the result. | |
Array< Complex > | resultC (Int obs, Int fld, Int spw) |
Array< Bool > & | rflag (Int obs, Int fld, Int spw) |
Array< Float > & | tresultF (Int obs, Int fld, Int spw) |
Temporary public function for testing. | |
Array< Bool > & | tresultFlag (Int obs, Int fld, Int spw) |
Bool | spwOK (Int spw) const |
spwOK info for users | |
Bool | spwInOK (Int spw) const |
void | state () |
Const access to various state TBD. | |
Private Member Functions | |
CTPatchedInterp () | |
Null ctor does nothing. | |
void | sliceTable () |
Setup methods. | |
void | makeInterpolators () |
Int | thisobs (Int obs) |
void | setDefFldMap () |
Methods to set up 1:1 patch-panel maps Private for now as not yet ready to control from outside Field default: all 0 (no field-dep yet) | |
void | setFldMap (const MSField &msfld) |
void | setFldMap (const ROMSFieldColumns &fcol) |
void | setDefSpwMap () |
void setFldMap(Vector<Int>& field); // via ordered index list void setFldMap(Vector<String>& field); // via name matching void setFldMap(uInt to, uInt from); // via single to/from | |
void | setSpwMap (Vector< Int > &spwmap) |
void | setDefAntMap () |
void setSpwMap(Vector<Double>& refFreqs); // via refFreq matching void setSpwMap(uInt to, uInt from); // via single to/from | |
void | setElemMap () |
void setAntMap(Vector<Int>& ant); // via ordered index list void setAntMap(Vector<String>& ant); // via name/station matching void setAntMap(uInt to, uInt from); // via single to/from | |
void | resampleInFreq (Matrix< Float > &fres, Matrix< Bool > &fflg, const Vector< Double > &fout, Matrix< Float > &tres, Matrix< Bool > &tflg, const Vector< Double > &fin) |
Resample in frequency. | |
Int | blnidx (const Int &a1, const Int &a2, const Int &nAnt) |
Baseline index from antenna indices: (assumes a1<=a2 !!) | |
InterpolateArray1D< Double, Float >::InterpolationMethod | ftype (String &strtype) |
Translate freq axis interpolation string. | |
Private Attributes | |
NewCalTable | ct_ |
PRIVATE DATA: | |
VisCalEnum::MatrixType | mtype_ |
Matrix type. | |
Bool | isCmplx_ |
Are parameters fundamentally complex? | |
Int | nPar_ |
The number of (Float) parameters (per-chan, per-element) | |
Int | nFPar_ |
String | timeType_ |
Interpolation modes. | |
String | freqType_ |
InterpolateArray1D< Double, Float >::InterpolationMethod | ia1dmethod_ |
Bool | byObs_ |
Are we slicing caltable by field? | |
Bool | byField_ |
Vector< Int > | nChanIn_ |
CalTable freq axis info. | |
Vector< Vector< Double > > | freqIn_ |
Int | nMSObs_ |
Obs, Field, Spw, Ant output (MS) sizes calibration required for up to this many. | |
Int | nMSFld_ |
Int | nMSSpw_ |
Int | nMSAnt_ |
Int | nMSElem_ |
Vector< Int > | altFld_ |
Alternate field indices. | |
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_ |
Vector< Bool > | spwInOK_ |
OK flag. | |
Vector< Int > | fldMap_ |
The patch panels Each has length from MS, values refer to CT. | |
Vector< Int > | spwMap_ |
Vector< Int > | antMap_ |
Vector< Int > | elemMap_ |
Vector< Bool > | conjTab_ |
Control conjugation of baseline-based solutions when mapping requires. | |
Cube< Cube< Float > > | timeResult_ |
Internal result Arrays. | |
Cube< Cube< Float > > | freqResult_ |
Cube< Cube< Bool > > | timeResFlag_ |
Cube< Cube< Bool > > | freqResFlag_ |
Cube< Cube< Float > > | result_ |
Current interpolation result Arrays These will reference time or freq result, depending on context, and may be referenced by external code. | |
Cube< Cube< Bool > > | resFlag_ |
Array< NewCalTable > | ctSlices_ |
The CalTable slices. | |
Array< CTTimeInterp1 * > | tI_ |
The pre-patched Time interpolation engines These are populated by the available caltables slices. | |
Array< Bool > | tIdel_ |
Definition at line 52 of file CTPatchedInterp.h.
casa::CTPatchedInterp::CTPatchedInterp | ( | NewCalTable & | ct, |
VisCalEnum::MatrixType | mtype, | ||
Int | nPar, | ||
const String & | timetype, | ||
const String & | freqtype, | ||
const String & | fieldtype, | ||
Vector< Int > | spwmap = Vector< Int >() |
||
) |
From NewCalTable only.
casa::CTPatchedInterp::CTPatchedInterp | ( | NewCalTable & | ct, |
VisCalEnum::MatrixType | mtype, | ||
Int | nPar, | ||
const String & | timetype, | ||
const String & | freqtype, | ||
const String & | fieldtype, | ||
const MeasurementSet & | ms, | ||
Vector< Int > | spwmap = Vector< Int >() |
||
) |
From NewCalTable and MS.
casa::CTPatchedInterp::CTPatchedInterp | ( | NewCalTable & | ct, |
VisCalEnum::MatrixType | mtype, | ||
Int | nPar, | ||
const String & | timetype, | ||
const String & | freqtype, | ||
const String & | fieldtype, | ||
const ROMSColumns & | mscol, | ||
Vector< Int > | spwmap = Vector< Int >() |
||
) |
From NewCalTable and MSColumns.
virtual casa::CTPatchedInterp::~CTPatchedInterp | ( | ) | [virtual] |
Destructor.
casa::CTPatchedInterp::CTPatchedInterp | ( | ) | [inline, private] |
Null ctor does nothing.
Definition at line 116 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::blnidx | ( | const Int & | a1, |
const Int & | a2, | ||
const Int & | nAnt | ||
) | [inline, private] |
Baseline index from antenna indices: (assumes a1<=a2 !!)
Definition at line 157 of file CTPatchedInterp.h.
InterpolateArray1D<Double,Float>::InterpolationMethod casa::CTPatchedInterp::ftype | ( | String & | strtype | ) | [private] |
Translate freq axis interpolation string.
Bool casa::CTPatchedInterp::interpolate | ( | Int | obs, |
Int | fld, | ||
Int | spw, | ||
Double | time, | ||
Double | freq = -1.0 |
||
) |
Interpolate, given input field, spw, timestamp, & (optionally) freq list returns T if new result (anywhere)
Bool casa::CTPatchedInterp::interpolate | ( | Int | obs, |
Int | fld, | ||
Int | spw, | ||
Double | time, | ||
const Vector< Double > & | freq | ||
) |
void casa::CTPatchedInterp::makeInterpolators | ( | ) | [private] |
void casa::CTPatchedInterp::resampleInFreq | ( | Matrix< Float > & | fres, |
Matrix< Bool > & | fflg, | ||
const Vector< Double > & | fout, | ||
Matrix< Float > & | tres, | ||
Matrix< Bool > & | tflg, | ||
const Vector< Double > & | fin | ||
) | [private] |
Resample in frequency.
Array<Complex> casa::CTPatchedInterp::resultC | ( | Int | obs, |
Int | fld, | ||
Int | spw | ||
) | [inline] |
Definition at line 96 of file CTPatchedInterp.h.
References casa::RIorAPArray::c(), result_, and thisobs().
Access to the result.
Definition at line 95 of file CTPatchedInterp.h.
Definition at line 97 of file CTPatchedInterp.h.
void casa::CTPatchedInterp::setDefAntMap | ( | ) | [inline, private] |
void setSpwMap(Vector<Double>& refFreqs); // via refFreq matching void setSpwMap(uInt to, uInt from); // via single to/from
Antenna default: indgen (index identity)
Definition at line 144 of file CTPatchedInterp.h.
References antMap_, casa::indgen(), nMSAnt_, and casa::Vector< T >::resize().
void casa::CTPatchedInterp::setDefFldMap | ( | ) | [inline, private] |
Methods to set up 1:1 patch-panel maps Private for now as not yet ready to control from outside Field default: all 0 (no field-dep yet)
Definition at line 128 of file CTPatchedInterp.h.
References fldMap_, nMSFld_, casa::Vector< T >::resize(), and casa::Array< T >::set().
void casa::CTPatchedInterp::setDefSpwMap | ( | ) | [inline, private] |
void setFldMap(Vector<Int>& field); // via ordered index list void setFldMap(Vector<String>& field); // via name matching void setFldMap(uInt to, uInt from); // via single to/from
Spw default: indgen (index identity)
Definition at line 137 of file CTPatchedInterp.h.
References casa::indgen(), nMSSpw_, casa::Vector< T >::resize(), and spwMap_.
void casa::CTPatchedInterp::setElemMap | ( | ) | [private] |
void setAntMap(Vector<Int>& ant); // via ordered index list void setAntMap(Vector<String>& ant); // via name/station matching void setAntMap(uInt to, uInt from); // via single to/from
Set generic antenna/baseline map
void casa::CTPatchedInterp::setFldMap | ( | const MSField & | msfld | ) | [private] |
void casa::CTPatchedInterp::setFldMap | ( | const ROMSFieldColumns & | fcol | ) | [private] |
void casa::CTPatchedInterp::setSpwMap | ( | Vector< Int > & | spwmap | ) | [private] |
void casa::CTPatchedInterp::sliceTable | ( | ) | [private] |
Setup methods.
Bool casa::CTPatchedInterp::spwInOK | ( | Int | spw | ) | const |
Bool casa::CTPatchedInterp::spwOK | ( | Int | spw | ) | const |
spwOK info for users
void casa::CTPatchedInterp::state | ( | ) |
Const access to various state TBD.
Report state
Int casa::CTPatchedInterp::thisobs | ( | Int | obs | ) | [inline, private] |
Definition at line 122 of file CTPatchedInterp.h.
References byObs_.
Referenced by resultC(), resultF(), rflag(), tresultF(), and tresultFlag().
Temporary public function for testing.
Definition at line 100 of file CTPatchedInterp.h.
References thisobs(), and timeResult_.
Definition at line 101 of file CTPatchedInterp.h.
References thisobs(), and timeResFlag_.
Vector<Int> casa::CTPatchedInterp::altFld_ [private] |
Alternate field indices.
Definition at line 195 of file CTPatchedInterp.h.
Vector<Int> casa::CTPatchedInterp::antMap_ [private] |
Definition at line 206 of file CTPatchedInterp.h.
Referenced by setDefAntMap().
Bool casa::CTPatchedInterp::byField_ [private] |
Definition at line 183 of file CTPatchedInterp.h.
Bool casa::CTPatchedInterp::byObs_ [private] |
Are we slicing caltable by field?
Definition at line 183 of file CTPatchedInterp.h.
Referenced by thisobs().
Vector<Bool> casa::CTPatchedInterp::conjTab_ [private] |
Control conjugation of baseline-based solutions when mapping requires.
Definition at line 209 of file CTPatchedInterp.h.
NewCalTable casa::CTPatchedInterp::ct_ [private] |
Array<NewCalTable> casa::CTPatchedInterp::ctSlices_ [private] |
The CalTable slices.
Definition at line 222 of file CTPatchedInterp.h.
Vector<Int> casa::CTPatchedInterp::elemMap_ [private] |
Definition at line 206 of file CTPatchedInterp.h.
Vector<Int> casa::CTPatchedInterp::fldMap_ [private] |
The patch panels Each has length from MS, values refer to CT.
Definition at line 206 of file CTPatchedInterp.h.
Referenced by setDefFldMap().
Vector<Vector<Double> > casa::CTPatchedInterp::freqIn_ [private] |
Definition at line 187 of file CTPatchedInterp.h.
Cube<Cube<Bool> > casa::CTPatchedInterp::freqResFlag_ [private] |
Definition at line 213 of file CTPatchedInterp.h.
Cube<Cube<Float> > casa::CTPatchedInterp::freqResult_ [private] |
Definition at line 212 of file CTPatchedInterp.h.
String casa::CTPatchedInterp::freqType_ [private] |
Definition at line 178 of file CTPatchedInterp.h.
InterpolateArray1D<Double,Float>::InterpolationMethod casa::CTPatchedInterp::ia1dmethod_ [private] |
Definition at line 180 of file CTPatchedInterp.h.
Bool casa::CTPatchedInterp::isCmplx_ [private] |
Are parameters fundamentally complex?
Definition at line 172 of file CTPatchedInterp.h.
Matrix type.
Definition at line 169 of file CTPatchedInterp.h.
Vector<Int> casa::CTPatchedInterp::nChanIn_ [private] |
CalTable freq axis info.
Definition at line 186 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nCTAnt_ [private] |
Definition at line 199 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nCTElem_ [private] |
Definition at line 199 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nCTFld_ [private] |
Definition at line 199 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nCTObs_ [private] |
Obs, Field, Spw, Ant input (CalTable) sizes patch panels should not violate these (point to larger indices)
Definition at line 199 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nCTSpw_ [private] |
Definition at line 199 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nFPar_ [private] |
Definition at line 175 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nMSAnt_ [private] |
Definition at line 192 of file CTPatchedInterp.h.
Referenced by setDefAntMap().
Int casa::CTPatchedInterp::nMSElem_ [private] |
Definition at line 192 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nMSFld_ [private] |
Definition at line 192 of file CTPatchedInterp.h.
Referenced by setDefFldMap().
Int casa::CTPatchedInterp::nMSObs_ [private] |
Obs, Field, Spw, Ant output (MS) sizes calibration required for up to this many.
Definition at line 192 of file CTPatchedInterp.h.
Int casa::CTPatchedInterp::nMSSpw_ [private] |
Definition at line 192 of file CTPatchedInterp.h.
Referenced by setDefSpwMap().
Int casa::CTPatchedInterp::nPar_ [private] |
The number of (Float) parameters (per-chan, per-element)
Definition at line 175 of file CTPatchedInterp.h.
Cube<Cube<Bool> > casa::CTPatchedInterp::resFlag_ [private] |
Definition at line 219 of file CTPatchedInterp.h.
Referenced by rflag().
Cube<Cube<Float> > casa::CTPatchedInterp::result_ [private] |
Current interpolation result Arrays These will reference time or freq result, depending on context, and may be referenced by external code.
Definition at line 218 of file CTPatchedInterp.h.
Vector<Bool> casa::CTPatchedInterp::spwInOK_ [private] |
OK flag.
Definition at line 202 of file CTPatchedInterp.h.
Vector<Int> casa::CTPatchedInterp::spwMap_ [private] |
Definition at line 206 of file CTPatchedInterp.h.
Referenced by setDefSpwMap().
Array<CTTimeInterp1*> casa::CTPatchedInterp::tI_ [private] |
The pre-patched Time interpolation engines These are populated by the available caltables slices.
Definition at line 226 of file CTPatchedInterp.h.
Array<Bool> casa::CTPatchedInterp::tIdel_ [private] |
Definition at line 227 of file CTPatchedInterp.h.
Cube<Cube<Bool> > casa::CTPatchedInterp::timeResFlag_ [private] |
Definition at line 213 of file CTPatchedInterp.h.
Referenced by tresultFlag().
Cube<Cube<Float> > casa::CTPatchedInterp::timeResult_ [private] |
String casa::CTPatchedInterp::timeType_ [private] |
Interpolation modes.
Definition at line 178 of file CTPatchedInterp.h.