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 | Friends
casa::VisJones Class Reference


VisJones More...

#include <VisCal.h>

Inheritance diagram for casa::VisJones:
casa::VisMueller casa::VisCal casa::PJones casa::SolvableVisJones casa::DJones casa::EGainCurve casa::EPJones casa::GJones casa::JJones casa::LJJones casa::TJones casa::XJones

List of all members.

Public Member Functions

 VisJones (VisSet &vs)
 Constructor.
 VisJones (const Int &nAnt)
virtual ~VisJones ()
virtual VisCalEnum::MatrixType matrixType ()
 Return Matrix type.
virtual Mueller::MuellerType muellerType ()
 What kind of Mueller matrices should we use? (A function of the jonesType and target data shape)
virtual Jones::JonesType jonesType ()=0
 What kind of Jones matrix are we? (Must be implemented in specializations!)
virtual void state ()
 Report the state.

Protected Member Functions

virtual IntnElem ()
 Number of parameter sets is number of antennas.
virtual Int nCalMat ()
 Number of Cal Matrices to form on antenna axis (Jones, apply context: nAnt())
virtual Bool trivialMuellerElem ()
 Jones matrices can never be trivial Muellers!
virtual Bool trivialJonesElem ()=0
 Are the parameters the Jones matrix elements? (or is a non-trivial calculation required?) (Must be implemented in specializations!)
virtual Bool applyByMueller ()
 Are we applying via Mueller or Jones multiplication? (probably by Jones for native Jones?)
virtual Bool applyByJones ()
JonesJ1 ()
 Access to matrix renderings of Jones matrices.
JonesJ2 ()
Cube< Complex > & currJElem ()
 Access to Jones matrix element array.
Cube< Bool > & currJElemOK ()
virtual void invalidateCalMat ()
 Invalidate cal matrices generically (at this level, both Mueller and Jones)
void invalidateJ ()
 Validation of Jones matrices.
void validateJ ()
Bool JValid ()
virtual void applyCal (VisBuffer &vb, Cube< Complex > &Vout, Bool trial=False)
 Row-by-row apply to a Cube<Complex> (applyByJones override)
virtual void syncCalMat (const Bool &doInv=False)
 Sync matrices for current meta data (VisJones override)
virtual void calcAllMueller ()
 Calculate an ensemble of Mueller matrices (all baselines, channels) (only meaningful if applyByMueller()=T)
virtual void syncJones (const Bool &doInv=False)
 Synchronize current Jones matrices.
virtual void calcAllJones ()
 Calculate an ensemble of Jones matrices (all antennas, channels)
virtual void calcOneJones (Vector< Complex > &mat, Vector< Bool > &mOk, const Vector< Complex > &par, const Vector< Bool > &pOk)
 Calculate a single Jones matrix by some means from parameters.
virtual void invJones ()
 Invert Jones matrices.
virtual void setMatByOk ()
 Set matrix elements according to their ok flags (e.g., makes a unit matrix if everything flagged, so we don't have to make atomic ok checks in apply)
void createJones ()
 Create Jones interface.
virtual void syncWtScale ()
 Synchronize weight scale factors.
virtual void updateWt (Vector< Float > &wt, const Int &a1, const Int &a2)
 Update the wt vector for a baseline.

Private Member Functions

 VisJones ()
 Default ctor is private.
void initVisJones ()
 Init VisJones pointers.
void deleteVisJones ()
 Delete the this* caches.

Private Attributes

PtrBlock< Jones * > J1_
 Jones algebra wrapper (per Spw)
PtrBlock< Jones * > J2_
PtrBlock< Cube< Complex > * > currJElem_
 Current Jones matrix-element arrays.
PtrBlock< Cube< Bool > * > currJElemOK_
Vector< BoolJValid_
 Jones validity, per spw.

Friends

class SolvableVisJones

Detailed Description


VisJones

 

Definition at line 484 of file VisCal.h.


Constructor & Destructor Documentation

Constructor.

casa::VisJones::VisJones ( const Int nAnt)
virtual casa::VisJones::~VisJones ( ) [virtual]
casa::VisJones::VisJones ( ) [private]

Default ctor is private.


Member Function Documentation

virtual Bool casa::VisJones::applyByJones ( ) [inline, protected, virtual]

Definition at line 531 of file VisCal.h.

References casa::True.

virtual Bool casa::VisJones::applyByMueller ( ) [inline, protected, virtual]

Are we applying via Mueller or Jones multiplication? (probably by Jones for native Jones?)

Reimplemented from casa::VisMueller.

Definition at line 530 of file VisCal.h.

References casa::False.

virtual void casa::VisJones::applyCal ( VisBuffer vb,
Cube< Complex > &  Vout,
Bool  trial = False 
) [protected, virtual]

Row-by-row apply to a Cube<Complex> (applyByJones override)

Reimplemented from casa::VisMueller.

Reimplemented in casa::EVLASwPow.

virtual void casa::VisJones::calcAllJones ( ) [protected, virtual]

Calculate an ensemble of Jones matrices (all antennas, channels)

Reimplemented in casa::TOpac, casa::XJones, casa::KAntPosJones, casa::EVLASwPow, casa::EGainCurve, casa::StandardTsys, and casa::KJones.

virtual void casa::VisJones::calcAllMueller ( ) [protected, virtual]

Calculate an ensemble of Mueller matrices (all baselines, channels) (only meaningful if applyByMueller()=T)

Reimplemented from casa::VisMueller.

virtual void casa::VisJones::calcOneJones ( Vector< Complex > &  mat,
Vector< Bool > &  mOk,
const Vector< Complex > &  par,
const Vector< Bool > &  pOk 
) [protected, virtual]

Calculate a single Jones matrix by some means from parameters.

Reimplemented in casa::DJones, and casa::PJones.

void casa::VisJones::createJones ( ) [protected]

Create Jones interface.

Cube<Complex>& casa::VisJones::currJElem ( ) [inline, protected]

Access to Jones matrix element array.

Definition at line 538 of file VisCal.h.

References currJElem_, and casa::VisCal::currSpw().

Cube<Bool>& casa::VisJones::currJElemOK ( ) [inline, protected]

Definition at line 539 of file VisCal.h.

References currJElemOK_, and casa::VisCal::currSpw().

void casa::VisJones::deleteVisJones ( ) [private]

Delete the this* caches.

void casa::VisJones::initVisJones ( ) [private]

Init VisJones pointers.

virtual void casa::VisJones::invalidateCalMat ( ) [inline, protected, virtual]

Invalidate cal matrices generically (at this level, both Mueller and Jones)

Reimplemented from casa::VisMueller.

Definition at line 542 of file VisCal.h.

References invalidateJ(), and casa::VisMueller::invalidateM().

void casa::VisJones::invalidateJ ( ) [inline, protected]

Validation of Jones matrices.

Definition at line 545 of file VisCal.h.

References casa::VisCal::currSpw(), casa::False, and JValid_.

Referenced by invalidateCalMat(), and casa::SolvableVisJones::invalidateDiffCalMat().

virtual void casa::VisJones::invJones ( ) [protected, virtual]

Invert Jones matrices.

Jones& casa::VisJones::J1 ( ) [inline, protected]

Access to matrix renderings of Jones matrices.

Definition at line 534 of file VisCal.h.

References casa::VisCal::currSpw(), and J1_.

Jones& casa::VisJones::J2 ( ) [inline, protected]

Definition at line 535 of file VisCal.h.

References casa::VisCal::currSpw(), and J2_.

virtual Jones::JonesType casa::VisJones::jonesType ( ) [pure virtual]
Bool casa::VisJones::JValid ( ) [inline, protected]

Definition at line 547 of file VisCal.h.

References casa::VisCal::currSpw(), and JValid_.

virtual VisCalEnum::MatrixType casa::VisJones::matrixType ( ) [inline, virtual]

Return Matrix type.

Reimplemented from casa::VisMueller.

Definition at line 498 of file VisCal.h.

References casa::VisCalEnum::JONES.

What kind of Mueller matrices should we use? (A function of the jonesType and target data shape)

Implements casa::VisMueller.

virtual Int casa::VisJones::nCalMat ( ) [inline, protected, virtual]

Number of Cal Matrices to form on antenna axis (Jones, apply context: nAnt())

Reimplemented from casa::VisMueller.

Reimplemented in casa::SolvableVisJones.

Definition at line 518 of file VisCal.h.

References casa::VisCal::nAnt().

virtual Int& casa::VisJones::nElem ( ) [inline, protected, virtual]

Number of parameter sets is number of antennas.

Reimplemented from casa::VisMueller.

Definition at line 514 of file VisCal.h.

References casa::VisCal::nAnt().

virtual void casa::VisJones::setMatByOk ( ) [protected, virtual]

Set matrix elements according to their ok flags (e.g., makes a unit matrix if everything flagged, so we don't have to make atomic ok checks in apply)

Reimplemented from casa::VisMueller.

Reimplemented in casa::SolvableVisJones.

virtual void casa::VisJones::state ( ) [virtual]

Report the state.

Reimplemented from casa::VisMueller.

Reimplemented in casa::SolvableVisJones.

virtual void casa::VisJones::syncCalMat ( const Bool doInv = False) [protected, virtual]

Sync matrices for current meta data (VisJones override)

Reimplemented from casa::VisMueller.

virtual void casa::VisJones::syncJones ( const Bool doInv = False) [protected, virtual]

Synchronize current Jones matrices.

Reimplemented in casa::StandardTsys, and casa::PJones.

virtual void casa::VisJones::syncWtScale ( ) [protected, virtual]

Synchronize weight scale factors.

Reimplemented from casa::VisMueller.

Reimplemented in casa::BJones, casa::EVLASwPow, and casa::StandardTsys.

virtual Bool casa::VisJones::trivialJonesElem ( ) [protected, pure virtual]

Are the parameters the Jones matrix elements? (or is a non-trivial calculation required?) (Must be implemented in specializations!)

Implemented in casa::TOpac, casa::XJones, casa::JJones, casa::GJones, casa::KAntPosJones, casa::LJJones, casa::EPJones, casa::TJones, casa::DJones, casa::KJones, casa::EVLASwPow, casa::EGainCurve, casa::StandardTsys, and casa::PJones.

virtual Bool casa::VisJones::trivialMuellerElem ( ) [inline, protected, virtual]

Jones matrices can never be trivial Muellers!

Implements casa::VisMueller.

Definition at line 521 of file VisCal.h.

References casa::False.

virtual void casa::VisJones::updateWt ( Vector< Float > &  wt,
const Int a1,
const Int a2 
) [protected, virtual]

Update the wt vector for a baseline.

Reimplemented from casa::VisMueller.

void casa::VisJones::validateJ ( ) [inline, protected]

Definition at line 546 of file VisCal.h.

References casa::VisCal::currSpw(), JValid_, and casa::True.


Friends And Related Function Documentation

friend class SolvableVisJones [friend]

Reimplemented from casa::VisCal.

Definition at line 486 of file VisCal.h.


Member Data Documentation

Current Jones matrix-element arrays.

Definition at line 602 of file VisCal.h.

Referenced by currJElem().

Definition at line 603 of file VisCal.h.

Referenced by currJElemOK().

Jones algebra wrapper (per Spw)

Definition at line 598 of file VisCal.h.

Referenced by J1().

Definition at line 599 of file VisCal.h.

Referenced by J2().

Jones validity, per spw.

Definition at line 606 of file VisCal.h.

Referenced by invalidateJ(), JValid(), and validateJ().


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