casa
$Rev:20696$
|
#include <CalInterp.h>
Public Member Functions | |
CalInterp () | |
Null ctor does nothing. | |
CalInterp (CalSet< Complex > &cs, const String &timetype, const String &freqtype) | |
From CalSet. | |
virtual | ~CalInterp () |
Destructor. | |
void | setSpwMap (const Vector< Int > &spwmap) |
Set non-trivial spw mapping. | |
Bool | interpolate (const Double &time, const Int &spw, const Vector< Double > &freq=Vector< Double >()) |
Interpolate, given timestamp, spw, freq list; returns T if new result. | |
Bool | interpTime (const Double &time) |
Do time-dep interpolation (called by interpolate) | |
void | interpFreq (const Vector< Double > &freq) |
Do freq-dep interpolation (called by interpolate) | |
Double | slotTime () |
Timestamp of current Slot. | |
Cube< Complex > & | result () |
Access to result (by reference) | |
Cube< Bool > & | resultOK () |
Vector< Bool > | spwOK () |
Spwmap-sensitive spwOK() | |
void | setSpwOK () |
Set spwOK_ according to spwmap RI made public 200910. | |
Protected Member Functions | |
Bool | findSlot (const Double &time) |
Find the reference timeslot for requested time. | |
void | updTimeCoeff () |
void | interpTimeCalc (const Double &time) |
void | initFreqInterp (const Vector< Double > freq) |
void | calcAPC () |
void | updFreqCoeff () |
void | interpFreqCalc () |
void | finalize () |
void | inflTimeC () |
void | inflFreqC () |
void | deflTimeC () |
void | deflFreqC () |
void | deflFreqA () |
Int & | nSpw () |
Access to private shape data (reflecting CalSet) | |
Int & | nPar () |
Int & | nElem () |
String & | timeType () |
Access to imutable private data. | |
Bool | nearestT () |
Bool | linearT () |
Bool | aipslinT () |
String & | freqType () |
Bool | nearestF () |
Bool | linearF () |
Bool | aipslinF () |
Vector< Int > & | spwMap () |
Int | spwMap (const Int &spw) |
Int & | currSpw () |
Access to info relevant to currSpw. | |
Int | currSpwMap () |
Int & | currSlot () |
Int & | nFreq () |
Vector< Double > & | datFreq () |
Bool & | finit () |
Double & | lastTime () |
Bool & | exactTime () |
Int & | nTime () |
Access to in-focus portion of CalSet (spwmap'd) | |
Int & | nChan () |
Vector< Double > & | csTimes () |
Vector< Double > & | csFreq () |
Array< Complex > & | csPar () |
Array< Bool > & | csParOK () |
IPosition & | ip4d () |
Access to IPositions. | |
IPosition & | ip3d () |
IPosition & | ip2d () |
Double & | t0 () |
Access to in-focus interpolation abscissa data. | |
Double & | tS () |
Int & | lastlo () |
Vector< Int > & | ch0 () |
Vector< Bool > & | ef () |
Vector< Double > & | df () |
Vector< Double > & | fdf () |
Array< Float > & | tAC () |
In-focus Time Interpolation coefficients. | |
Array< Float > & | tPC () |
Array< Complex > & | tCC () |
Cube< Bool > & | tOk () |
Array< Float > & | fAC () |
In-focus Freq Interpolation coefficients. | |
Array< Float > & | fPC () |
Array< Complex > & | fCC () |
Cube< Bool > & | fOk () |
void | rPart (Array< Complex > &c, Array< Float > &rp) |
void | iPart (Array< Complex > &c, Array< Float > &ip) |
void | asFloatArr (const Array< Complex > &in, Array< Float > &out) |
void | part (const Array< Complex > &c, const Int &which, Array< Float > &f) |
Private Member Functions | |
LogSink & | logSink () |
Private Attributes | |
CalSet< Complex > * | cs_ |
The CalSet from which we interpolate. | |
String | timeType_ |
Interpolation modes. | |
String | freqType_ |
Vector< Int > | spwMap_ |
Spw map. | |
Vector< Bool > | spwOK_ |
SpwOK. | |
Vector< Double > | lastTime_ |
Prior interp time, per spw. | |
Vector< Bool > | finit_ |
Frequency initialization flag (True if init complete) | |
Vector< Int > | nFreq_ |
Number of channels. | |
PtrBlock< Vector< Double > * > | solFreq_ |
Freq lists. | |
PtrBlock< Vector< Double > * > | datFreq_ |
Int | currSpw_ |
Vector< Int > | currSlot_ |
Bool | exactTime_ |
Exact time match flag. | |
Cube< Float > | a |
Cube< Float > | p |
Cube< Complex > | c |
Cube< Bool > | ok |
Cube< Complex > | r |
Cube< Complex > | r_ |
PtrBlock< IPosition * > | ip4d_ |
Array shapes. | |
PtrBlock< IPosition * > | ip3d_ |
PtrBlock< IPosition * > | ip2d_ |
Vector< Double > | t0_ |
Time Interpolation ordinate info (per spw) | |
Vector< Double > | tS_ |
Vector< Int > | lastlo_ |
PtrBlock< Array< Float > * > | tAC_ |
Time Interpolation coefficients (per spw) | |
PtrBlock< Array< Float > * > | tPC_ |
PtrBlock< Array< Complex > * > | tCC_ |
PtrBlock< Cube< Bool > * > | tOk_ |
Cube< Float > | tA_ |
Time Interpolation results (currSpw) | |
Cube< Float > | tP_ |
Cube< Complex > | tC_ |
PtrBlock< Vector< Int > * > | ch0_ |
Freq Interpolation ordinate info (per spw) | |
PtrBlock< Vector< Bool > * > | ef_ |
PtrBlock< Vector< Double > * > | df_ |
PtrBlock< Vector< Double > * > | fdf_ |
PtrBlock< Array< Float > * > | fAC_ |
Freq Interpolation coefficients (per spw) | |
PtrBlock< Array< Float > * > | fPC_ |
PtrBlock< Array< Complex > * > | fCC_ |
PtrBlock< Cube< Bool > * > | fOk_ |
Cube< Float > | fA_ |
Freq Interpolation results (currSspw) | |
Cube< Float > | fP_ |
Cube< Complex > | fC_ |
LogSink | logSink_p |
Bool | verbose_ |
Definition at line 40 of file CalInterp.h.
casa::CalInterp::CalInterp | ( | ) | [inline] |
Null ctor does nothing.
Definition at line 45 of file CalInterp.h.
casa::CalInterp::CalInterp | ( | CalSet< Complex > & | cs, |
const String & | timetype, | ||
const String & | freqtype | ||
) |
From CalSet.
virtual casa::CalInterp::~CalInterp | ( | ) | [virtual] |
Destructor.
Bool casa::CalInterp::aipslinF | ( | ) | [inline, protected] |
Definition at line 121 of file CalInterp.h.
References freqType().
Bool casa::CalInterp::aipslinT | ( | ) | [inline, protected] |
Definition at line 117 of file CalInterp.h.
References timeType().
void casa::CalInterp::asFloatArr | ( | const Array< Complex > & | in, |
Array< Float > & | out | ||
) | [protected] |
void casa::CalInterp::calcAPC | ( | ) | [protected] |
Vector<Int>& casa::CalInterp::ch0 | ( | ) | [inline, protected] |
Definition at line 154 of file CalInterp.h.
Vector<Double>& casa::CalInterp::csFreq | ( | ) | [inline, protected] |
Definition at line 140 of file CalInterp.h.
References cs_, currSpwMap(), and casa::CalSet< T >::frequencies().
Array<Complex>& casa::CalInterp::csPar | ( | ) | [inline, protected] |
Definition at line 141 of file CalInterp.h.
References cs_, currSpwMap(), and casa::CalSet< T >::par().
Array<Bool>& casa::CalInterp::csParOK | ( | ) | [inline, protected] |
Definition at line 142 of file CalInterp.h.
References cs_, currSpwMap(), and casa::CalSet< T >::parOK().
Vector<Double>& casa::CalInterp::csTimes | ( | ) | [inline, protected] |
Definition at line 139 of file CalInterp.h.
References cs_, currSpwMap(), and casa::CalSet< T >::time().
Referenced by slotTime().
Int& casa::CalInterp::currSlot | ( | ) | [inline, protected] |
Definition at line 129 of file CalInterp.h.
References currSlot_, and currSpw().
Referenced by slotTime().
Int& casa::CalInterp::currSpw | ( | ) | [inline, protected] |
Int casa::CalInterp::currSpwMap | ( | ) | [inline, protected] |
Vector<Double>& casa::CalInterp::datFreq | ( | ) | [inline, protected] |
Definition at line 131 of file CalInterp.h.
void casa::CalInterp::deflFreqA | ( | ) | [protected] |
void casa::CalInterp::deflFreqC | ( | ) | [protected] |
void casa::CalInterp::deflTimeC | ( | ) | [protected] |
Vector<Double>& casa::CalInterp::df | ( | ) | [inline, protected] |
Definition at line 156 of file CalInterp.h.
Vector<Bool>& casa::CalInterp::ef | ( | ) | [inline, protected] |
Definition at line 155 of file CalInterp.h.
Bool& casa::CalInterp::exactTime | ( | ) | [inline, protected] |
Definition at line 134 of file CalInterp.h.
References exactTime_.
Array<Float>& casa::CalInterp::fAC | ( | ) | [inline, protected] |
In-focus Freq Interpolation coefficients.
Definition at line 166 of file CalInterp.h.
Array<Complex>& casa::CalInterp::fCC | ( | ) | [inline, protected] |
Definition at line 168 of file CalInterp.h.
Vector<Double>& casa::CalInterp::fdf | ( | ) | [inline, protected] |
Definition at line 157 of file CalInterp.h.
void casa::CalInterp::finalize | ( | ) | [protected] |
Bool casa::CalInterp::findSlot | ( | const Double & | time | ) | [protected] |
Find the reference timeslot for requested time.
Bool& casa::CalInterp::finit | ( | ) | [inline, protected] |
Definition at line 132 of file CalInterp.h.
Cube<Bool>& casa::CalInterp::fOk | ( | ) | [inline, protected] |
Definition at line 169 of file CalInterp.h.
Array<Float>& casa::CalInterp::fPC | ( | ) | [inline, protected] |
Definition at line 167 of file CalInterp.h.
String& casa::CalInterp::freqType | ( | ) | [inline, protected] |
Definition at line 118 of file CalInterp.h.
References freqType_.
Referenced by aipslinF(), linearF(), and nearestF().
void casa::CalInterp::inflFreqC | ( | ) | [protected] |
void casa::CalInterp::inflTimeC | ( | ) | [protected] |
void casa::CalInterp::initFreqInterp | ( | const Vector< Double > | freq | ) | [protected] |
void casa::CalInterp::interpFreq | ( | const Vector< Double > & | freq | ) |
Do freq-dep interpolation (called by interpolate)
void casa::CalInterp::interpFreqCalc | ( | ) | [protected] |
Bool casa::CalInterp::interpolate | ( | const Double & | time, |
const Int & | spw, | ||
const Vector< Double > & | freq = Vector< Double >() |
||
) |
Interpolate, given timestamp, spw, freq list; returns T if new result.
Bool casa::CalInterp::interpTime | ( | const Double & | time | ) |
Do time-dep interpolation (called by interpolate)
void casa::CalInterp::interpTimeCalc | ( | const Double & | time | ) | [protected] |
IPosition& casa::CalInterp::ip2d | ( | ) | [inline, protected] |
Definition at line 147 of file CalInterp.h.
IPosition& casa::CalInterp::ip3d | ( | ) | [inline, protected] |
Definition at line 146 of file CalInterp.h.
IPosition& casa::CalInterp::ip4d | ( | ) | [inline, protected] |
void casa::CalInterp::iPart | ( | Array< Complex > & | c, |
Array< Float > & | ip | ||
) | [inline, protected] |
Definition at line 172 of file CalInterp.h.
References part().
Int& casa::CalInterp::lastlo | ( | ) | [inline, protected] |
Definition at line 152 of file CalInterp.h.
Double& casa::CalInterp::lastTime | ( | ) | [inline, protected] |
Definition at line 133 of file CalInterp.h.
Bool casa::CalInterp::linearF | ( | ) | [inline, protected] |
Definition at line 120 of file CalInterp.h.
References freqType().
Bool casa::CalInterp::linearT | ( | ) | [inline, protected] |
Definition at line 116 of file CalInterp.h.
References timeType().
LogSink& casa::CalInterp::logSink | ( | ) | [inline, private] |
Definition at line 252 of file CalInterp.h.
Int& casa::CalInterp::nChan | ( | ) | [inline, protected] |
Definition at line 138 of file CalInterp.h.
References cs_, currSpwMap(), and casa::CalSet< T >::nChan().
Bool casa::CalInterp::nearestF | ( | ) | [inline, protected] |
Definition at line 119 of file CalInterp.h.
References freqType().
Bool casa::CalInterp::nearestT | ( | ) | [inline, protected] |
Definition at line 115 of file CalInterp.h.
References timeType().
Int& casa::CalInterp::nElem | ( | ) | [inline, protected] |
Definition at line 111 of file CalInterp.h.
References cs_, and casa::CalSet< T >::nElem().
Int& casa::CalInterp::nFreq | ( | ) | [inline, protected] |
Definition at line 130 of file CalInterp.h.
Int& casa::CalInterp::nPar | ( | ) | [inline, protected] |
Definition at line 110 of file CalInterp.h.
References cs_, and casa::CalSet< T >::nPar().
Int& casa::CalInterp::nSpw | ( | ) | [inline, protected] |
Access to private shape data (reflecting CalSet)
Definition at line 109 of file CalInterp.h.
References cs_, and casa::CalSet< T >::nSpw().
Int& casa::CalInterp::nTime | ( | ) | [inline, protected] |
Access to in-focus portion of CalSet (spwmap'd)
Definition at line 137 of file CalInterp.h.
References cs_, currSpwMap(), and casa::CalSet< T >::nTime().
void casa::CalInterp::part | ( | const Array< Complex > & | c, |
const Int & | which, | ||
Array< Float > & | f | ||
) | [protected] |
Cube<Complex>& casa::CalInterp::result | ( | ) | [inline] |
Cube<Bool>& casa::CalInterp::resultOK | ( | ) | [inline] |
Definition at line 75 of file CalInterp.h.
References ok.
void casa::CalInterp::rPart | ( | Array< Complex > & | c, |
Array< Float > & | rp | ||
) | [inline, protected] |
Definition at line 171 of file CalInterp.h.
References part().
void casa::CalInterp::setSpwMap | ( | const Vector< Int > & | spwmap | ) | [inline] |
Set non-trivial spw mapping.
Definition at line 57 of file CalInterp.h.
References setSpwOK(), and spwMap_.
void casa::CalInterp::setSpwOK | ( | ) |
Set spwOK_ according to spwmap RI made public 200910.
Referenced by setSpwMap().
Double casa::CalInterp::slotTime | ( | ) | [inline] |
Timestamp of current Slot.
Definition at line 71 of file CalInterp.h.
References csTimes(), and currSlot().
Vector<Int>& casa::CalInterp::spwMap | ( | ) | [inline, protected] |
Int casa::CalInterp::spwMap | ( | const Int & | spw | ) | [inline, protected] |
Definition at line 124 of file CalInterp.h.
References spwMap_.
Vector<Bool> casa::CalInterp::spwOK | ( | ) | [inline] |
Double& casa::CalInterp::t0 | ( | ) | [inline, protected] |
Access to in-focus interpolation abscissa data.
Definition at line 150 of file CalInterp.h.
Array<Float>& casa::CalInterp::tAC | ( | ) | [inline, protected] |
In-focus Time Interpolation coefficients.
Definition at line 160 of file CalInterp.h.
Array<Complex>& casa::CalInterp::tCC | ( | ) | [inline, protected] |
Definition at line 162 of file CalInterp.h.
String& casa::CalInterp::timeType | ( | ) | [inline, protected] |
Access to imutable private data.
Definition at line 114 of file CalInterp.h.
References timeType_.
Referenced by aipslinT(), linearT(), and nearestT().
Cube<Bool>& casa::CalInterp::tOk | ( | ) | [inline, protected] |
Definition at line 163 of file CalInterp.h.
Array<Float>& casa::CalInterp::tPC | ( | ) | [inline, protected] |
Definition at line 161 of file CalInterp.h.
Double& casa::CalInterp::tS | ( | ) | [inline, protected] |
Definition at line 151 of file CalInterp.h.
void casa::CalInterp::updFreqCoeff | ( | ) | [protected] |
void casa::CalInterp::updTimeCoeff | ( | ) | [protected] |
Cube<Float> casa::CalInterp::a [private] |
Definition at line 211 of file CalInterp.h.
Cube<Complex> casa::CalInterp::c [private] |
Definition at line 212 of file CalInterp.h.
PtrBlock<Vector<Int>*> casa::CalInterp::ch0_ [private] |
Freq Interpolation ordinate info (per spw)
Definition at line 237 of file CalInterp.h.
Referenced by ch0().
CalSet<Complex>* casa::CalInterp::cs_ [private] |
Vector<Int> casa::CalInterp::currSlot_ [private] |
Definition at line 206 of file CalInterp.h.
Referenced by currSlot().
Int casa::CalInterp::currSpw_ [private] |
PtrBlock<Vector<Double>*> casa::CalInterp::datFreq_ [private] |
Definition at line 203 of file CalInterp.h.
Referenced by datFreq().
PtrBlock<Vector<Double>*> casa::CalInterp::df_ [private] |
Definition at line 239 of file CalInterp.h.
PtrBlock<Vector<Bool>*> casa::CalInterp::ef_ [private] |
Definition at line 238 of file CalInterp.h.
Referenced by ef().
Bool casa::CalInterp::exactTime_ [private] |
Cube<Float> casa::CalInterp::fA_ [private] |
Freq Interpolation results (currSspw)
Definition at line 248 of file CalInterp.h.
PtrBlock<Array<Float>*> casa::CalInterp::fAC_ [private] |
Freq Interpolation coefficients (per spw)
Definition at line 243 of file CalInterp.h.
Referenced by fAC().
Cube<Complex> casa::CalInterp::fC_ [private] |
Definition at line 249 of file CalInterp.h.
PtrBlock<Array<Complex>*> casa::CalInterp::fCC_ [private] |
Definition at line 244 of file CalInterp.h.
Referenced by fCC().
PtrBlock<Vector<Double>*> casa::CalInterp::fdf_ [private] |
Definition at line 240 of file CalInterp.h.
Vector<Bool> casa::CalInterp::finit_ [private] |
Frequency initialization flag (True if init complete)
Definition at line 196 of file CalInterp.h.
Referenced by finit().
PtrBlock<Cube<Bool>*> casa::CalInterp::fOk_ [private] |
Definition at line 245 of file CalInterp.h.
Referenced by fOk().
Cube<Float> casa::CalInterp::fP_ [private] |
Definition at line 248 of file CalInterp.h.
PtrBlock<Array<Float>*> casa::CalInterp::fPC_ [private] |
Definition at line 243 of file CalInterp.h.
Referenced by fPC().
String casa::CalInterp::freqType_ [private] |
Definition at line 184 of file CalInterp.h.
Referenced by freqType().
PtrBlock<IPosition*> casa::CalInterp::ip2d_ [private] |
Definition at line 220 of file CalInterp.h.
Referenced by ip2d().
PtrBlock<IPosition*> casa::CalInterp::ip3d_ [private] |
Definition at line 219 of file CalInterp.h.
Referenced by ip3d().
PtrBlock<IPosition*> casa::CalInterp::ip4d_ [private] |
Vector<Int> casa::CalInterp::lastlo_ [private] |
Definition at line 225 of file CalInterp.h.
Referenced by lastlo().
Vector<Double> casa::CalInterp::lastTime_ [private] |
LogSink casa::CalInterp::logSink_p [private] |
Definition at line 251 of file CalInterp.h.
Vector<Int> casa::CalInterp::nFreq_ [private] |
Cube<Bool> casa::CalInterp::ok [private] |
Definition at line 213 of file CalInterp.h.
Referenced by resultOK().
Cube<Float> casa::CalInterp::p [private] |
Definition at line 211 of file CalInterp.h.
Cube<Complex> casa::CalInterp::r [private] |
Definition at line 215 of file CalInterp.h.
Referenced by result().
Cube<Complex> casa::CalInterp::r_ [private] |
Definition at line 215 of file CalInterp.h.
PtrBlock<Vector<Double>*> casa::CalInterp::solFreq_ [private] |
Freq lists.
Definition at line 202 of file CalInterp.h.
Vector<Int> casa::CalInterp::spwMap_ [private] |
Vector<Bool> casa::CalInterp::spwOK_ [private] |
Vector<Double> casa::CalInterp::t0_ [private] |
Time Interpolation ordinate info (per spw)
Definition at line 223 of file CalInterp.h.
Referenced by t0().
Cube<Float> casa::CalInterp::tA_ [private] |
Time Interpolation results (currSpw)
Definition at line 233 of file CalInterp.h.
PtrBlock<Array<Float>*> casa::CalInterp::tAC_ [private] |
Time Interpolation coefficients (per spw)
Definition at line 228 of file CalInterp.h.
Referenced by tAC().
Cube<Complex> casa::CalInterp::tC_ [private] |
Definition at line 234 of file CalInterp.h.
PtrBlock<Array<Complex>*> casa::CalInterp::tCC_ [private] |
Definition at line 229 of file CalInterp.h.
Referenced by tCC().
String casa::CalInterp::timeType_ [private] |
PtrBlock<Cube<Bool>*> casa::CalInterp::tOk_ [private] |
Definition at line 230 of file CalInterp.h.
Referenced by tOk().
Cube<Float> casa::CalInterp::tP_ [private] |
Definition at line 233 of file CalInterp.h.
PtrBlock<Array<Float>*> casa::CalInterp::tPC_ [private] |
Definition at line 228 of file CalInterp.h.
Referenced by tPC().
Vector<Double> casa::CalInterp::tS_ [private] |
Definition at line 224 of file CalInterp.h.
Referenced by tS().
Bool casa::CalInterp::verbose_ [private] |
Definition at line 252 of file CalInterp.h.