casa::Aberration Class Reference
[Measures]

#include <Aberration.h>

Collaboration diagram for casa::Aberration:

Collaboration graph
[legend]
List of all members.

Detailed Description

Aberration class and calculations.

Intended use:

Part of API

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25
Test programs:
tMeasMath

Prerequisite

Etymology

Aberration

Synopsis

Aberration forms the class for Aberration calculations. It is a simple container with the selected method, and the mean epoch.
The method is selected from one of the following:

Epochs can be specified as the MJD (with defined constants MeasData::MJD2000 and MeasData::MJDB1950 or the actual MJD), leading to the following constructors: Actual Aberration for a certain Epoch is calculated by the () operator as Aberration(epoch), with epoch Double MJD, values returned as an MVPosition.
The derivative (d-1) can be obtained as well by derivative(epoch).
The following details can be set with the Aipsrc mechanism:

Example

Motivation

To calculate the Aberration angles. An alternate route could have been a global function, but having a simple container allows caching of some calculations for speed.
Using MJD (JD-2400000.5) rather than JD is for precision reasons.

To Do

Definition at line 109 of file Aberration.h.

Public Types

enum  AberrationTypes
 Types of known Aberration calculations (at 1995/09/04 STANDARD == IAU1980). More...

Public Member Functions

 Aberration ()
 Default constructor, generates default J2000 Aberration identification.
 Aberration (const Aberration &other)
 Copy constructor.
 Aberration (AberrationTypes type)
 Constructor with type.
Aberrationoperator= (const Aberration &other)
 Copy assignment.
 ~Aberration ()
const MVPositionoperator() (Double epoch)
 Operator () calculates the Aberration direction cosine vector.
const MVPositionderivative (Double epoch)
 Return derivative of Aberration (d-1).
void refresh ()
 Refresh calculations.
void init ()
 Re-initialise Aberration object.
void init (AberrationTypes type)

Static Public Attributes

static const Double INTV
 Interval to be used for linear approximation (in days).

Private Member Functions

void copy (const Aberration &other)
 Copy.
void fill ()
 Fill an empty copy.
void calcAber (Double t)
 Calculate Aberration angles for time t.

Private Attributes

AberrationTypes method
 Method to be used.
Double checkEpoch
 Check epoch for linear approximation.
Double aval [3]
 Cached calculated angles.
Double dval [3]
 Cached derivatives.
Int lres
 To be able to use referenced results in simple calculations, a circular result buffer is used.
MVPosition result [4]
 Last calculation.

Static Private Attributes

static uInt interval_reg
 Interpolation interval.
static uInt usejpl_reg
 JPL use.


Member Enumeration Documentation

enum casa::Aberration::AberrationTypes

Types of known Aberration calculations (at 1995/09/04 STANDARD == IAU1980).

Definition at line 118 of file Aberration.h.


Constructor & Destructor Documentation

casa::Aberration::Aberration (  ) 

Default constructor, generates default J2000 Aberration identification.

casa::Aberration::Aberration ( const Aberration other  ) 

Copy constructor.

casa::Aberration::Aberration ( AberrationTypes  type  ) 

Constructor with type.

casa::Aberration::~Aberration (  ) 


Member Function Documentation

Aberration& casa::Aberration::operator= ( const Aberration other  ) 

Copy assignment.

const MVPosition& casa::Aberration::operator() ( Double  epoch  ) 

Operator () calculates the Aberration direction cosine vector.

const MVPosition& casa::Aberration::derivative ( Double  epoch  ) 

Return derivative of Aberration (d-1).

void casa::Aberration::init (  ) 

Re-initialise Aberration object.

void casa::Aberration::init ( AberrationTypes  type  ) 

void casa::Aberration::refresh (  ) 

Refresh calculations.

void casa::Aberration::copy ( const Aberration other  )  [private]

Copy.

void casa::Aberration::fill (  )  [private]

Fill an empty copy.

void casa::Aberration::calcAber ( Double  t  )  [private]

Calculate Aberration angles for time t.


Member Data Documentation

const Double casa::Aberration::INTV [static]

Interval to be used for linear approximation (in days).

Definition at line 114 of file Aberration.h.

AberrationTypes casa::Aberration::method [private]

Method to be used.

Definition at line 153 of file Aberration.h.

Double casa::Aberration::checkEpoch [private]

Check epoch for linear approximation.

Definition at line 155 of file Aberration.h.

Double casa::Aberration::aval[3] [private]

Cached calculated angles.

Definition at line 157 of file Aberration.h.

Double casa::Aberration::dval[3] [private]

Cached derivatives.

Definition at line 159 of file Aberration.h.

Int casa::Aberration::lres [private]

To be able to use referenced results in simple calculations, a circular result buffer is used.

Current buffer pointer.

Definition at line 163 of file Aberration.h.

MVPosition casa::Aberration::result[4] [private]

Last calculation.

Definition at line 165 of file Aberration.h.

uInt casa::Aberration::interval_reg [static, private]

Interpolation interval.

Definition at line 167 of file Aberration.h.

uInt casa::Aberration::usejpl_reg [static, private]

JPL use.

Definition at line 169 of file Aberration.h.


The documentation for this class was generated from the following file:
Generated on Thu Aug 7 22:34:17 2008 for NRAOCASA by  doxygen 1.5.1