|
casacore
|
Aberration class and calculations. More...
#include <Aberration.h>
Public Types | |
| enum | AberrationTypes { STANDARD, NONE, B1950 } |
| Types of known Aberration calculations (at 1995/09/04 STANDARD == IAU1980) More... | |
Public Member Functions | |
| Aberration () | |
| Default constructor, generates default J2000 Aberration identification. More... | |
| Aberration (const Aberration &other) | |
| Copy constructor. More... | |
| Aberration (AberrationTypes type) | |
| Constructor with type. More... | |
| Aberration & | operator= (const Aberration &other) |
| Copy assignment. More... | |
| ~Aberration () | |
| const MVPosition & | operator() (Double epoch) |
| Operator () calculates the Aberration direction cosine vector. More... | |
| const MVPosition & | derivative (Double epoch) |
| Return derivative of Aberration (d-1) w.r.t. More... | |
| void | init () |
| Re-initialise Aberration object. More... | |
| void | init (AberrationTypes type) |
| void | refresh () |
| Refresh calculations. More... | |
Static Public Attributes | |
| static const Double | INTV |
| Interval to be used for linear approximation (in days) More... | |
Private Member Functions | |
| void | copy (const Aberration &other) |
| Copy. More... | |
| void | fill () |
| Fill an empty copy. More... | |
| void | calcAber (Double t) |
| Calculate Aberration angles for time t. More... | |
Private Attributes | |
| AberrationTypes | method |
| Method to be used. More... | |
| Double | checkEpoch |
| Check epoch for linear approximation. More... | |
| Double | aval [3] |
| Cached calculated angles. More... | |
| Double | dval [3] |
| Cached derivatives. More... | |
| Int | lres |
| To be able to use referenced results in simple calculations, a circular result buffer is used. More... | |
| MVPosition | result [4] |
| Last calculation. More... | |
Static Private Attributes | |
| static uInt | interval_reg |
| Interpolation interval. More... | |
| static uInt | usejpl_reg |
| JPL use. More... | |
Aberration class and calculations.
Public interface
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:
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.
Definition at line 109 of file Aberration.h.
Types of known Aberration calculations (at 1995/09/04 STANDARD == IAU1980)
| Enumerator | |
|---|---|
| STANDARD | |
| NONE | |
| B1950 | |
Definition at line 118 of file Aberration.h.
| casacore::Aberration::Aberration | ( | ) |
Default constructor, generates default J2000 Aberration identification.
| casacore::Aberration::Aberration | ( | const Aberration & | other | ) |
Copy constructor.
| casacore::Aberration::Aberration | ( | AberrationTypes | type | ) |
Constructor with type.
| casacore::Aberration::~Aberration | ( | ) |
|
private |
Calculate Aberration angles for time t.
|
private |
Copy.
| const MVPosition& casacore::Aberration::derivative | ( | Double | epoch | ) |
Return derivative of Aberration (d-1) w.r.t.
time
|
private |
Fill an empty copy.
| void casacore::Aberration::init | ( | ) |
Re-initialise Aberration object.
| void casacore::Aberration::init | ( | AberrationTypes | type | ) |
| const MVPosition& casacore::Aberration::operator() | ( | Double | epoch | ) |
Operator () calculates the Aberration direction cosine vector.
| Aberration& casacore::Aberration::operator= | ( | const Aberration & | other | ) |
Copy assignment.
| void casacore::Aberration::refresh | ( | ) |
Refresh calculations.
|
private |
Cached calculated angles.
Definition at line 157 of file Aberration.h.
|
private |
Check epoch for linear approximation.
Definition at line 155 of file Aberration.h.
|
private |
Cached derivatives.
Definition at line 159 of file Aberration.h.
|
staticprivate |
Interpolation interval.
Definition at line 167 of file Aberration.h.
|
static |
Interval to be used for linear approximation (in days)
Definition at line 114 of file Aberration.h.
|
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.
|
private |
Method to be used.
Definition at line 153 of file Aberration.h.
|
private |
Last calculation.
Definition at line 165 of file Aberration.h.
|
staticprivate |
JPL use.
Definition at line 169 of file Aberration.h.
1.8.5