casa::SkyCal< DataType, CalDataType > Class Template Reference

#include <SkyCal.h>

List of all members.

Public Member Functions

 SkyCal ()
 all the member functions are inline
virtual ~SkyCal ()
uInt typesize () const
 stride In Mueller series, typesize is defined as "number of polarizations" while SkyCal definition is "number of elements in the DATA cell", which is npol * nchan in practice.
void setNumChannel (uInt n)
void setNumPolarization (uInt n)
void setScalarData (Bool scalardata) const
 Set scalardata_ TBD: Handle this better; for now, we need to set this from an external call so we handle single-corr data properly when setting non-corr-dep flags.
void sync (CalDataType &mat)
 Synchronize with leading element in external array.
void sync (CalDataType &mat, Bool &ok)
void origin ()
 Reset to origin.
void operator++ ()
 Increment to next vector (according to len) In practice, this operator increments row index.
void operator++ (int)
void advance (const Int &step)
 Advance step matrices forward (according to len).
void invert ()
 In-place invert.
void setMatByOk ()
 Set matrix elements according to ok flag (so we don't have to check ok flags atomically in apply).
void apply (Matrix< DataType > &v, Matrix< Bool > &f)
 In-place multiply onto a data with flag information apply implements position switch calibration: (ON - OFF)/OFF.
void apply (Matrix< DataType > &v, Matrix< Bool > &f, Vector< Bool > &vflag)
void applyFlag (Vector< Bool > &vflag)
 Apply only flags according to cal flags.
void flag (Matrix< Bool > &v)
void apply (Matrix< DataType > &out, Matrix< Bool > &outFlag, const Matrix< DataType > &in, const Matrix< Bool > &inFlag)
 Multiply onto a vis VisVector, preserving input (copy then in-place apply).

Private Member Functions

 SkyCal (const SkyCal< DataType, CalDataType > &mat)
 Copy ctor protected.

Private Attributes

uInt npol_
uInt nchan_
CalDataType * m0_
 Pointer to origin.
Bool * ok0_
CalDataType * m_
 Moving pointer.
CalDataType * mi_
Bool * ok_
Bool * oki_
const CalDataType cOne_
 Complex unity, zero (for use in invert and similar methods).
const CalDataType cZero_
Bool scalardata_

Friends

ostream & operator<< (ostream &os, const SkyCal< DataType, CalDataType > &mat)
 print it out

Detailed Description

template<class DataType, class CalDataType>
class casa::SkyCal< DataType, CalDataType >

Intended use:

Internal or

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

Synopsis

Example

Motivation

Template Type Argument Requirements (T)

Thrown Exceptions

To Do

Definition at line 139 of file SkyCal.h.


Constructor & Destructor Documentation

template<class DataType, class CalDataType>
casa::SkyCal< DataType, CalDataType >::SkyCal (  )  [inline]

all the member functions are inline

Definition at line 143 of file SkyCal.h.

template<class DataType, class CalDataType>
virtual casa::SkyCal< DataType, CalDataType >::~SkyCal (  )  [inline, virtual]

Definition at line 157 of file SkyCal.h.

template<class DataType, class CalDataType>
casa::SkyCal< DataType, CalDataType >::SkyCal ( const SkyCal< DataType, CalDataType > &  mat  )  [private]

Copy ctor protected.


Member Function Documentation

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::advance ( const Int &  step  )  [inline]

Advance step matrices forward (according to len).

Definition at line 186 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::m_, casa::SkyCal< DataType, CalDataType >::ok_, and casa::SkyCal< DataType, CalDataType >::typesize().

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::apply ( Matrix< DataType > &  out,
Matrix< Bool > &  outFlag,
const Matrix< DataType > &  in,
const Matrix< Bool > &  inFlag 
) [inline]

Multiply onto a vis VisVector, preserving input (copy then in-place apply).

Definition at line 260 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::apply().

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::apply ( Matrix< DataType > &  v,
Matrix< Bool > &  f,
Vector< Bool > &  vflag 
) [inline]
template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::apply ( Matrix< DataType > &  v,
Matrix< Bool > &  f 
) [inline]

In-place multiply onto a data with flag information apply implements position switch calibration: (ON - OFF)/OFF.

This processes the data corresponding to each DATA cell (npol * nchan) together in contrast to Mueller series, which processes one Stokes vector, i.e., process each channel individually.

(ON - OFF) / OFF

Definition at line 205 of file SkyCal.h.

References casa::data, casa::SkyCal< DataType, CalDataType >::flag(), casa::SkyCal< DataType, CalDataType >::m_, casa::SkyCal< DataType, CalDataType >::nchan_, and casa::SkyCal< DataType, CalDataType >::npol_.

Referenced by casa::SkyCal< DataType, CalDataType >::apply().

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::applyFlag ( Vector< Bool > &  vflag  )  [inline]

Apply only flags according to cal flags.

Similar to apply, flagging also processes each DATA cell together.

Definition at line 231 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::nchan_, casa::SkyCal< DataType, CalDataType >::npol_, casa::SkyCal< DataType, CalDataType >::ok_, and casa::SkyCal< DataType, CalDataType >::scalardata_.

Referenced by casa::SkyCal< DataType, CalDataType >::apply().

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::flag ( Matrix< Bool > &  v  )  [inline]
template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::invert (  )  [inline]

In-place invert.

Definition at line 189 of file SkyCal.h.

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::operator++ ( int   )  [inline]
template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::operator++ (  )  [inline]

Increment to next vector (according to len) In practice, this operator increments row index.

Definition at line 182 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::m_, casa::SkyCal< DataType, CalDataType >::ok_, and casa::SkyCal< DataType, CalDataType >::typesize().

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::origin (  )  [inline]
template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::setMatByOk (  )  [inline]

Set matrix elements according to ok flag (so we don't have to check ok flags atomically in apply).

Definition at line 193 of file SkyCal.h.

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::setNumChannel ( uInt  n  )  [inline]

Definition at line 164 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::nchan_.

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::setNumPolarization ( uInt  n  )  [inline]

Definition at line 165 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::npol_.

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::setScalarData ( Bool  scalardata  )  const [inline]

Set scalardata_ TBD: Handle this better; for now, we need to set this from an external call so we handle single-corr data properly when setting non-corr-dep flags.

Definition at line 171 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::scalardata_.

template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::sync ( CalDataType &  mat,
Bool &  ok 
) [inline]
template<class DataType, class CalDataType>
void casa::SkyCal< DataType, CalDataType >::sync ( CalDataType &  mat  )  [inline]

Synchronize with leading element in external array.

Definition at line 174 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::m0_, and casa::SkyCal< DataType, CalDataType >::origin().

template<class DataType, class CalDataType>
uInt casa::SkyCal< DataType, CalDataType >::typesize (  )  const [inline]

stride In Mueller series, typesize is defined as "number of polarizations" while SkyCal definition is "number of elements in the DATA cell", which is npol * nchan in practice.

Definition at line 163 of file SkyCal.h.

References casa::SkyCal< DataType, CalDataType >::nchan_, and casa::SkyCal< DataType, CalDataType >::npol_.

Referenced by casa::SkyCal< DataType, CalDataType >::advance(), casa::SkyCal< DataType, CalDataType >::flag(), and casa::SkyCal< DataType, CalDataType >::operator++().


Friends And Related Function Documentation

template<class DataType, class CalDataType>
ostream& operator<< ( ostream &  os,
const SkyCal< DataType, CalDataType > &  mat 
) [friend]

print it out

Definition at line 269 of file SkyCal.h.


Member Data Documentation

template<class DataType, class CalDataType>
const CalDataType casa::SkyCal< DataType, CalDataType >::cOne_ [private]

Complex unity, zero (for use in invert and similar methods).

Definition at line 289 of file SkyCal.h.

template<class DataType, class CalDataType>
const CalDataType casa::SkyCal< DataType, CalDataType >::cZero_ [private]

Definition at line 289 of file SkyCal.h.

template<class DataType, class CalDataType>
CalDataType* casa::SkyCal< DataType, CalDataType >::m0_ [private]

Pointer to origin.

Definition at line 281 of file SkyCal.h.

Referenced by casa::SkyCal< DataType, CalDataType >::origin(), and casa::SkyCal< DataType, CalDataType >::sync().

template<class DataType, class CalDataType>
CalDataType* casa::SkyCal< DataType, CalDataType >::m_ [private]
template<class DataType, class CalDataType>
CalDataType * casa::SkyCal< DataType, CalDataType >::mi_ [private]

Definition at line 285 of file SkyCal.h.

template<class DataType, class CalDataType>
uInt casa::SkyCal< DataType, CalDataType >::nchan_ [private]
template<class DataType, class CalDataType>
uInt casa::SkyCal< DataType, CalDataType >::npol_ [private]
template<class DataType, class CalDataType>
Bool* casa::SkyCal< DataType, CalDataType >::ok0_ [private]
template<class DataType, class CalDataType>
Bool* casa::SkyCal< DataType, CalDataType >::ok_ [private]
template<class DataType, class CalDataType>
Bool * casa::SkyCal< DataType, CalDataType >::oki_ [private]

Definition at line 286 of file SkyCal.h.

template<class DataType, class CalDataType>
Bool casa::SkyCal< DataType, CalDataType >::scalardata_ [mutable, private]

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