casa::CTPatchedInterp Class Reference

#include <CTPatchedInterp.h>

List of all members.

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 >(), Vector< Int > fldmap=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 setFldMap (Vector< Int > &fldmap)
void calcAltFld ()
 void setFldMap(Vector<String>& field); // via name matching void setFldMap(uInt to, uInt from); // via single to/from
void setDefSpwMap ()
 Spw default: indgen (index identity).
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.
void resampleFlagsInFreq (Vector< Bool > &flgout, const Vector< Double > &fout, Vector< Bool > &flgin, const Vector< Double > &fin)
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_
Vector< Int > lastFld_
Vector< Int > lastObs_

Detailed Description

Definition at line 52 of file CTPatchedInterp.h.


Constructor & Destructor Documentation

casa::CTPatchedInterp::CTPatchedInterp ( NewCalTable ct,
VisCalEnum::MatrixType  mtype,
Int  nPar,
const String &  timetype,
const String &  freqtype,
const String &  fieldtype,
Vector< Int >  spwmap = Vector< Int >(),
Vector< Int >  fldmap = 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 117 of file CTPatchedInterp.h.


Member Function Documentation

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 163 of file CTPatchedInterp.h.

void casa::CTPatchedInterp::calcAltFld (  )  [private]

void setFldMap(Vector<String>& field); // via name matching void setFldMap(uInt to, uInt from); // via single to/from

Calculate fldmap redundancy, enabling reuse

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,
const Vector< Double > &  freq 
)
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).

void casa::CTPatchedInterp::makeInterpolators (  )  [private]
void casa::CTPatchedInterp::resampleFlagsInFreq ( Vector< Bool > &  flgout,
const Vector< Double > &  fout,
Vector< Bool > &  flgin,
const Vector< Double > &  fin 
) [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 97 of file CTPatchedInterp.h.

References result_, and thisobs().

Array<Float>& casa::CTPatchedInterp::resultF ( Int  obs,
Int  fld,
Int  spw 
) [inline]

Access to the result.

Definition at line 96 of file CTPatchedInterp.h.

References result_, and thisobs().

Array<Bool>& casa::CTPatchedInterp::rflag ( Int  obs,
Int  fld,
Int  spw 
) [inline]

Definition at line 98 of file CTPatchedInterp.h.

References resFlag_, and thisobs().

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 148 of file CTPatchedInterp.h.

References antMap_, casacore::indgen(), and nMSAnt_.

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 129 of file CTPatchedInterp.h.

References fldMap_, and nMSFld_.

void casa::CTPatchedInterp::setDefSpwMap (  )  [inline, private]

Spw default: indgen (index identity).

Definition at line 141 of file CTPatchedInterp.h.

References casacore::indgen(), nMSSpw_, 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 ( Vector< Int > &  fldmap  )  [private]
void casa::CTPatchedInterp::setFldMap ( const ROMSFieldColumns &  fcol  )  [private]
void casa::CTPatchedInterp::setFldMap ( const MSField &  msfld  )  [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 123 of file CTPatchedInterp.h.

References byObs_.

Referenced by resultC(), resultF(), rflag(), tresultF(), and tresultFlag().

Array<Float>& casa::CTPatchedInterp::tresultF ( Int  obs,
Int  fld,
Int  spw 
) [inline]

Temporary public function for testing.

Definition at line 101 of file CTPatchedInterp.h.

References thisobs(), and timeResult_.

Array<Bool>& casa::CTPatchedInterp::tresultFlag ( Int  obs,
Int  fld,
Int  spw 
) [inline]

Definition at line 102 of file CTPatchedInterp.h.

References thisobs(), and timeResFlag_.


Member Data Documentation

Vector<Int> casa::CTPatchedInterp::altFld_ [private]

Alternate field indices.

Definition at line 201 of file CTPatchedInterp.h.

Vector<Int> casa::CTPatchedInterp::antMap_ [private]

Definition at line 212 of file CTPatchedInterp.h.

Referenced by setDefAntMap().

Definition at line 189 of file CTPatchedInterp.h.

Are we slicing caltable by field?

Definition at line 189 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 215 of file CTPatchedInterp.h.

PRIVATE DATA:.

The Caltable

Definition at line 172 of file CTPatchedInterp.h.

The CalTable slices.

Definition at line 228 of file CTPatchedInterp.h.

Vector<Int> casa::CTPatchedInterp::elemMap_ [private]

Definition at line 212 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 212 of file CTPatchedInterp.h.

Referenced by setDefFldMap().

Vector<Vector<Double> > casa::CTPatchedInterp::freqIn_ [private]

Definition at line 193 of file CTPatchedInterp.h.

Cube<Cube<Bool> > casa::CTPatchedInterp::freqResFlag_ [private]

Definition at line 219 of file CTPatchedInterp.h.

Cube<Cube<Float> > casa::CTPatchedInterp::freqResult_ [private]

Definition at line 218 of file CTPatchedInterp.h.

Definition at line 184 of file CTPatchedInterp.h.

InterpolateArray1D<Double,Float>::InterpolationMethod casa::CTPatchedInterp::ia1dmethod_ [private]

Definition at line 186 of file CTPatchedInterp.h.

Are parameters fundamentally complex?

Definition at line 178 of file CTPatchedInterp.h.

Vector<Int> casa::CTPatchedInterp::lastFld_ [private]

Definition at line 235 of file CTPatchedInterp.h.

Vector<Int> casa::CTPatchedInterp::lastObs_ [private]

Definition at line 235 of file CTPatchedInterp.h.

Matrix type.

Definition at line 175 of file CTPatchedInterp.h.

Vector<Int> casa::CTPatchedInterp::nChanIn_ [private]

CalTable freq axis info.

Definition at line 192 of file CTPatchedInterp.h.

Definition at line 205 of file CTPatchedInterp.h.

Definition at line 205 of file CTPatchedInterp.h.

Definition at line 205 of file CTPatchedInterp.h.

Obs, Field, Spw, Ant _input_ (CalTable) sizes patch panels should not violate these (point to larger indices).

Definition at line 205 of file CTPatchedInterp.h.

Definition at line 205 of file CTPatchedInterp.h.

Definition at line 181 of file CTPatchedInterp.h.

Definition at line 198 of file CTPatchedInterp.h.

Referenced by setDefAntMap().

Definition at line 198 of file CTPatchedInterp.h.

Definition at line 198 of file CTPatchedInterp.h.

Referenced by setDefFldMap().

Obs, Field, Spw, Ant _output_ (MS) sizes calibration required for up to this many.

Definition at line 198 of file CTPatchedInterp.h.

Definition at line 198 of file CTPatchedInterp.h.

Referenced by setDefSpwMap().

The number of (Float) parameters (per-chan, per-element).

Definition at line 181 of file CTPatchedInterp.h.

Cube<Cube<Bool> > casa::CTPatchedInterp::resFlag_ [private]

Definition at line 225 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 224 of file CTPatchedInterp.h.

Referenced by resultC(), and resultF().

Vector<Bool> casa::CTPatchedInterp::spwInOK_ [private]

OK flag.

Definition at line 208 of file CTPatchedInterp.h.

Vector<Int> casa::CTPatchedInterp::spwMap_ [private]

Definition at line 212 of file CTPatchedInterp.h.

Referenced by setDefSpwMap().

The pre-patched Time interpolation engines These are populated by the available caltables slices.

Definition at line 232 of file CTPatchedInterp.h.

Array<Bool> casa::CTPatchedInterp::tIdel_ [private]

Definition at line 233 of file CTPatchedInterp.h.

Cube<Cube<Bool> > casa::CTPatchedInterp::timeResFlag_ [private]

Definition at line 219 of file CTPatchedInterp.h.

Referenced by tresultFlag().

Cube<Cube<Float> > casa::CTPatchedInterp::timeResult_ [private]

Internal result Arrays.

Definition at line 218 of file CTPatchedInterp.h.

Referenced by tresultF().

Interpolation modes.

Definition at line 184 of file CTPatchedInterp.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1