casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
casa::CalInterp Class Reference

#include <CalInterp.h>

List of all members.

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< BoolspwOK ()
 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 ()
IntnSpw ()
 Access to private shape data (reflecting CalSet)
IntnPar ()
IntnElem ()
StringtimeType ()
 Access to imutable private data.
Bool nearestT ()
Bool linearT ()
Bool aipslinT ()
StringfreqType ()
Bool nearestF ()
Bool linearF ()
Bool aipslinF ()
Vector< Int > & spwMap ()
Int spwMap (const Int &spw)
IntcurrSpw ()
 Access to info relevant to currSpw.
Int currSpwMap ()
IntcurrSlot ()
IntnFreq ()
Vector< Double > & datFreq ()
Boolfinit ()
DoublelastTime ()
BoolexactTime ()
IntnTime ()
 Access to in-focus portion of CalSet (spwmap'd)
IntnChan ()
Vector< Double > & csTimes ()
Vector< Double > & csFreq ()
Array< Complex > & csPar ()
Array< Bool > & csParOK ()
IPositionip4d ()
 Access to IPositions.
IPositionip3d ()
IPositionip2d ()
Doublet0 ()
 Access to in-focus interpolation abscissa data.
DoubletS ()
Intlastlo ()
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

LogSinklogSink ()

Private Attributes

CalSet< Complex > * cs_
 The CalSet from which we interpolate.
String timeType_
 Interpolation modes.
String freqType_
Vector< IntspwMap_
 Spw map.
Vector< BoolspwOK_
 SpwOK.
Vector< DoublelastTime_
 Prior interp time, per spw.
Vector< Boolfinit_
 Frequency initialization flag (True if init complete)
Vector< IntnFreq_
 Number of channels.
PtrBlock< Vector< Double > * > solFreq_
 Freq lists.
PtrBlock< Vector< Double > * > datFreq_
Int currSpw_
Vector< IntcurrSlot_
Bool exactTime_
 Exact time match flag.
Cube< Floata
Cube< Floatp
Cube< Complex > c
Cube< Boolok
Cube< Complex > r
Cube< Complex > r_
PtrBlock< IPosition * > ip4d_
 Array shapes.
PtrBlock< IPosition * > ip3d_
PtrBlock< IPosition * > ip2d_
Vector< Doublet0_
 Time Interpolation ordinate info (per spw)
Vector< DoubletS_
Vector< Intlastlo_
PtrBlock< Array< Float > * > tAC_
 Time Interpolation coefficients (per spw)
PtrBlock< Array< Float > * > tPC_
PtrBlock< Array< Complex > * > tCC_
PtrBlock< Cube< Bool > * > tOk_
Cube< FloattA_
 Time Interpolation results (currSpw)
Cube< FloattP_
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< FloatfA_
 Freq Interpolation results (currSspw)
Cube< FloatfP_
Cube< Complex > fC_
LogSink logSink_p
Bool verbose_

Detailed Description

Definition at line 40 of file CalInterp.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

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.

References ch0_, and currSpw_.

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]

Access to info relevant to currSpw.

Definition at line 127 of file CalInterp.h.

References currSpw_.

Referenced by currSlot(), currSpwMap(), datFreq(), fAC(), fCC(), finit(), fOk(), fPC(), nFreq(), tAC(), tCC(), tOk(), and tPC().

Int casa::CalInterp::currSpwMap ( ) [inline, protected]

Definition at line 128 of file CalInterp.h.

References currSpw(), and spwMap().

Referenced by csFreq(), csPar(), csParOK(), csTimes(), nChan(), and nTime().

Vector<Double>& casa::CalInterp::datFreq ( ) [inline, protected]

Definition at line 131 of file CalInterp.h.

References currSpw(), and datFreq_.

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.

References currSpw_, and df_.

Vector<Bool>& casa::CalInterp::ef ( ) [inline, protected]

Definition at line 155 of file CalInterp.h.

References currSpw_, and ef_.

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.

References currSpw(), and fAC_.

Array<Complex>& casa::CalInterp::fCC ( ) [inline, protected]

Definition at line 168 of file CalInterp.h.

References currSpw(), and fCC_.

Vector<Double>& casa::CalInterp::fdf ( ) [inline, protected]

Definition at line 157 of file CalInterp.h.

References currSpw_, and df_.

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.

References currSpw(), and finit_.

Cube<Bool>& casa::CalInterp::fOk ( ) [inline, protected]

Definition at line 169 of file CalInterp.h.

References currSpw(), and fOk_.

Array<Float>& casa::CalInterp::fPC ( ) [inline, protected]

Definition at line 167 of file CalInterp.h.

References currSpw(), and fPC_.

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 = VectorDouble >() 
)

Interpolate, given timestamp, spw, freq list; returns T if new result.

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.

References currSpw_, and ip2d_.

IPosition& casa::CalInterp::ip3d ( ) [inline, protected]

Definition at line 146 of file CalInterp.h.

References currSpw_, and ip3d_.

IPosition& casa::CalInterp::ip4d ( ) [inline, protected]

Access to IPositions.

Definition at line 145 of file CalInterp.h.

References currSpw_, and ip4d_.

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.

References currSpw_, and lastlo_.

Double& casa::CalInterp::lastTime ( ) [inline, protected]

Definition at line 133 of file CalInterp.h.

References currSpw_, and lastTime_.

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.

References currSpw(), and nFreq_.

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]

Referenced by iPart(), and rPart().

Cube<Complex>& casa::CalInterp::result ( ) [inline]

Access to result (by reference)

Definition at line 74 of file CalInterp.h.

References r.

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_.

Set spwOK_ according to spwmap RI made public 200910.

Referenced by setSpwMap().

Timestamp of current Slot.

Definition at line 71 of file CalInterp.h.

References csTimes(), and currSlot().

Vector<Int>& casa::CalInterp::spwMap ( ) [inline, protected]

Definition at line 123 of file CalInterp.h.

References spwMap_.

Referenced by currSpwMap().

Int casa::CalInterp::spwMap ( const Int spw) [inline, protected]

Definition at line 124 of file CalInterp.h.

References spwMap_.

Spwmap-sensitive spwOK()

Definition at line 78 of file CalInterp.h.

References spwOK_.

Double& casa::CalInterp::t0 ( ) [inline, protected]

Access to in-focus interpolation abscissa data.

Definition at line 150 of file CalInterp.h.

References currSpw_, and t0_.

Array<Float>& casa::CalInterp::tAC ( ) [inline, protected]

In-focus Time Interpolation coefficients.

Definition at line 160 of file CalInterp.h.

References currSpw(), and tAC_.

Array<Complex>& casa::CalInterp::tCC ( ) [inline, protected]

Definition at line 162 of file CalInterp.h.

References currSpw(), and tCC_.

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.

References currSpw(), and tOk_.

Array<Float>& casa::CalInterp::tPC ( ) [inline, protected]

Definition at line 161 of file CalInterp.h.

References currSpw(), and tPC_.

Double& casa::CalInterp::tS ( ) [inline, protected]

Definition at line 151 of file CalInterp.h.

References currSpw_, and tS_.

void casa::CalInterp::updFreqCoeff ( ) [protected]
void casa::CalInterp::updTimeCoeff ( ) [protected]

Member Data Documentation

Definition at line 211 of file CalInterp.h.

Cube<Complex> casa::CalInterp::c [private]

Definition at line 212 of file CalInterp.h.

Freq Interpolation ordinate info (per spw)

Definition at line 237 of file CalInterp.h.

Referenced by ch0().

CalSet<Complex>* casa::CalInterp::cs_ [private]

The CalSet from which we interpolate.

Definition at line 181 of file CalInterp.h.

Referenced by csFreq(), csPar(), csParOK(), csTimes(), nChan(), nElem(), nPar(), nSpw(), and nTime().

Definition at line 206 of file CalInterp.h.

Referenced by currSlot().

Definition at line 205 of file CalInterp.h.

Referenced by ch0(), currSpw(), df(), ef(), fdf(), ip2d(), ip3d(), ip4d(), lastlo(), lastTime(), t0(), and tS().

Definition at line 203 of file CalInterp.h.

Referenced by datFreq().

Definition at line 239 of file CalInterp.h.

Referenced by df(), and fdf().

Definition at line 238 of file CalInterp.h.

Referenced by ef().

Exact time match flag.

Definition at line 209 of file CalInterp.h.

Referenced by exactTime().

Freq Interpolation results (currSspw)

Definition at line 248 of file CalInterp.h.

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().

Definition at line 240 of file CalInterp.h.

Frequency initialization flag (True if init complete)

Definition at line 196 of file CalInterp.h.

Referenced by finit().

Definition at line 245 of file CalInterp.h.

Referenced by fOk().

Definition at line 248 of file CalInterp.h.

Definition at line 243 of file CalInterp.h.

Referenced by fPC().

Definition at line 184 of file CalInterp.h.

Referenced by freqType().

Definition at line 220 of file CalInterp.h.

Referenced by ip2d().

Definition at line 219 of file CalInterp.h.

Referenced by ip3d().

Array shapes.

Definition at line 218 of file CalInterp.h.

Referenced by ip4d().

Definition at line 225 of file CalInterp.h.

Referenced by lastlo().

Prior interp time, per spw.

Definition at line 193 of file CalInterp.h.

Referenced by lastTime().

Definition at line 251 of file CalInterp.h.

Number of channels.

Definition at line 199 of file CalInterp.h.

Referenced by nFreq().

Definition at line 213 of file CalInterp.h.

Referenced by resultOK().

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.

Freq lists.

Definition at line 202 of file CalInterp.h.

Spw map.

Definition at line 187 of file CalInterp.h.

Referenced by setSpwMap(), and spwMap().

SpwOK.

Definition at line 190 of file CalInterp.h.

Referenced by spwOK().

Time Interpolation ordinate info (per spw)

Definition at line 223 of file CalInterp.h.

Referenced by t0().

Time Interpolation results (currSpw)

Definition at line 233 of file CalInterp.h.

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().

Interpolation modes.

Definition at line 184 of file CalInterp.h.

Referenced by timeType().

Definition at line 230 of file CalInterp.h.

Referenced by tOk().

Definition at line 233 of file CalInterp.h.

Definition at line 228 of file CalInterp.h.

Referenced by tPC().

Definition at line 224 of file CalInterp.h.

Referenced by tS().

Definition at line 252 of file CalInterp.h.


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