casa
5.7.0-16
|
Measure conversion aid routines. More...
#include <MeasMath.h>
Private Types | |
enum | FrameType { EPOCH, POSITION, DIRECTION, VELOCITY, N_FrameType } |
Types of frame information groups. More... | |
enum | FrameInfo { TDB, LASTR, TT, UT1, LONG, LAT, RADIUS, LATGEO, J2000LONG, J2000LAT, B1950LONG, B1950LAT, APPLONG, APPLAT, N_FrameDInfo, J2000DIR, B1950DIR, APPDIR, N_FrameInfo, N_FrameMVDInfo } |
Types of frame information. More... | |
typedef const Measure *(MeasFrame::* | FRFCT )() const |
To get frame group. More... | |
typedef Bool(MeasFrame::* | FRDINFO )(Double &) const |
To get frame info. More... | |
typedef Bool(MeasFrame::* | FRMVDINFO )(MVDirection &) const |
Private Member Functions | |
MeasMath (const MeasMath &other) | |
Copy constructor (not implemented) More... | |
MeasMath & | operator= (const MeasMath &other) |
Assignment (not implemented) More... | |
void | getFrame (FrameType i) |
Get proper frame information. More... | |
Bool | getInfo (FrameInfo i, Bool ret=False) |
Get information from the frame. More... | |
void | rotateShift (MVPosition &in, const MVPosition &shft, const FrameInfo lng, const FrameInfo lat, Bool doin) |
Make a shift of coordinate into a rotation and apply it when doin is False. More... | |
Private Attributes | |
Bool | inOK_p |
Data cached for fast calculations and workspace. More... | |
Bool | outOK_p |
Bool | frameOK_p [N_FrameType] |
MeasFrame * | inFrame_p |
MeasFrame * | outFrame_p |
MeasFrame * | applyFrame_p [N_FrameType] |
MeasFrame * | deapplyFrame_p [N_FrameType] |
SolarPos * | SOLPOSIAU |
Conversion information. More... | |
Aberration * | ABERIAU |
Aberration * | ABERB1950 |
Nutation * | NUTATIAU |
Nutation * | NUTATB1950 |
Precession * | PRECESIAU |
Precession * | PRECESB1950 |
RotMatrix | ROTMAT1 |
Workspace. More... | |
MVPosition | MVPOS1 |
MVPosition | MVPOS2 |
MVPosition | MVPOS3 |
MVPosition | MVPOS4 |
Double | g1 |
Double | g2 |
Double | g3 |
Double | lengthE |
Bool | infoOK_p [N_FrameInfo] |
Double | info_p [N_FrameDInfo] |
MVDirection | infomvd_p [N_FrameMVDInfo] |
Static Private Attributes | |
static uInt | b1950_reg_p |
Aipsrc definition for B1950 epoch (in years) More... | |
Measure conversion aid routines.
Internal
Measure and Mathematics
The conversion of measures like MDirection, MPosition etc have many conversion routines in common. This class combines all of these conversions, including data caches for re-use.
The class is always created by the default constructor. For each operation (like e.g. Precession application), it has three function:
See MCDirection source for how to use the class.
To re-use code for a specific measure conversion, and to ease the caching administration for each individual conversion.
Definition at line 96 of file MeasMath.h.
To get frame info.
Definition at line 251 of file MeasMath.h.
|
private |
To get frame group.
Definition at line 248 of file MeasMath.h.
|
private |
Definition at line 252 of file MeasMath.h.
|
private |
Types of frame information.
Enumerator | |
---|---|
TDB | |
LASTR | |
TT | |
UT1 | |
LONG | |
LAT | |
RADIUS | |
LATGEO | |
J2000LONG | |
J2000LAT | |
B1950LONG | |
B1950LAT | |
APPLONG | |
APPLAT | |
N_FrameDInfo | |
J2000DIR | |
B1950DIR | |
APPDIR | |
N_FrameInfo | |
N_FrameMVDInfo |
Definition at line 224 of file MeasMath.h.
|
private |
Types of frame information groups.
Enumerator | |
---|---|
EPOCH | |
POSITION | |
DIRECTION | |
VELOCITY | |
N_FrameType |
Definition at line 217 of file MeasMath.h.
casacore::MeasMath::MeasMath | ( | ) |
Default constructor.
casacore::MeasMath::~MeasMath | ( | ) |
|
private |
Copy constructor (not implemented)
void casacore::MeasMath::applyAberration | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::applyAberrationB1950 | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::applyAPPtoTOPO | ( | MVPosition & | in, |
const Double | len, | ||
Bool | doin = True |
||
) |
void casacore::MeasMath::applyAZELtoAZELSW | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyECLIPtoJ2000 | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyETerms | ( | MVPosition & | in, |
Bool | doin = True , |
||
Double | epo = 2000.0 |
||
) |
void casacore::MeasMath::applyGALtoB1950 | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyGALtoJ2000 | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyGALtoSUPERGAL | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyHADECtoAZEL | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyHADECtoAZELGEO | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyHADECtoITRF | ( | MVPosition & | in | ) |
Various conversions.
void casacore::MeasMath::applyICRStoJ2000 | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyJ2000toB1950 | ( | MVPosition & | in, |
Double | epo, | ||
Bool | doin | ||
) |
void casacore::MeasMath::applyJ2000toB1950 | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::applyJ2000toB1950_VLA | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::applyMECLIPtoJMEAN | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyNutation | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyNutationB1950 | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyPolarMotion | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyPrecession | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyPrecessionB1950 | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyPrecNutat | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyPrecNutatB1950 | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::applySolarPos | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::applyTECLIPtoJTRUE | ( | MVPosition & | in | ) |
void casacore::MeasMath::applyTOPOtoHADEC | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::createAberration | ( | ) |
Aberration for J2000 (IAU definition) and B1950 and in coordinates.
void casacore::MeasMath::createAberrationB1950 | ( | ) |
void casacore::MeasMath::createNutation | ( | ) |
Nutation for J2000 (IAU standard) and in coordinates.
void casacore::MeasMath::createNutationB1950 | ( | ) |
Nutation for B1950 and in coordinates.
void casacore::MeasMath::createPrecession | ( | ) |
Functions to create a particular conversion instance; to apply or deapply the instance.
Precession for J2000 (IAU definition) and in coordinates
void casacore::MeasMath::createPrecessionB1950 | ( | ) |
Precession for B1950 and in coordinates.
void casacore::MeasMath::createPrecNutat | ( | ) |
Precession and Nutation for J2000 or B1950 and in coordinates.
void casacore::MeasMath::createPrecNutatB1950 | ( | ) |
void casacore::MeasMath::createSolarPos | ( | ) |
Solar bending for J2000 (IAU definition) and in coordinates.
False if dependent on frame direction rather than input one.
void casacore::MeasMath::deapplyAberration | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplyAberrationB1950 | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplyAPPtoTOPO | ( | MVPosition & | in, |
const Double | len, | ||
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplyECLIPtoJ2000 | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyETerms | ( | MVPosition & | in, |
Bool | doin = True , |
||
Double | epo = 2000.0 |
||
) |
void casacore::MeasMath::deapplyGALtoB1950 | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyGALtoJ2000 | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyGALtoSUPERGAL | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyHADECtoAZEL | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyHADECtoAZELGEO | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyHADECtoITRF | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyICRStoJ2000 | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyJ2000toB1950 | ( | MVPosition & | in, |
Double | epo, | ||
Bool | doin | ||
) |
void casacore::MeasMath::deapplyJ2000toB1950 | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplyJ2000toB1950_VLA | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplyMECLIPtoJMEAN | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyNutation | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyNutationB1950 | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyPolarMotion | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyPrecession | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyPrecessionB1950 | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyPrecNutat | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyPrecNutatB1950 | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplySolarPos | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::deapplyTECLIPtoJTRUE | ( | MVPosition & | in | ) |
void casacore::MeasMath::deapplyTOPOtoHADEC | ( | MVPosition & | in, |
Bool | doin = True |
||
) |
void casacore::MeasMath::getAPP | ( | MVPosition & | out | ) |
Transfer some information.
void casacore::MeasMath::getB1950 | ( | MVPosition & | out | ) |
|
private |
Get proper frame information.
Get information from the frame.
void casacore::MeasMath::getJ2000 | ( | MVPosition & | out | ) |
Initialise the frame to be used.
The apply direction uses the inref if present; the deapply the outref if present, otherwise the other one.
Assignment (not implemented)
|
private |
Make a shift of coordinate into a rotation and apply it when doin is False.
Else apply a shift. Given are the longitude and latitude codes of the direction to be used, and the shift to be applied in that system to the in coordinate.
|
private |
Definition at line 271 of file MeasMath.h.
|
private |
Definition at line 271 of file MeasMath.h.
|
private |
Definition at line 265 of file MeasMath.h.
|
staticprivate |
Aipsrc definition for B1950 epoch (in years)
Definition at line 285 of file MeasMath.h.
|
private |
Definition at line 266 of file MeasMath.h.
|
private |
Definition at line 262 of file MeasMath.h.
|
private |
Definition at line 279 of file MeasMath.h.
|
private |
Definition at line 279 of file MeasMath.h.
|
private |
Definition at line 279 of file MeasMath.h.
|
private |
Definition at line 281 of file MeasMath.h.
|
private |
Definition at line 282 of file MeasMath.h.
|
private |
Definition at line 280 of file MeasMath.h.
|
private |
Definition at line 263 of file MeasMath.h.
|
private |
Data cached for fast calculations and workspace.
Frame information
Definition at line 260 of file MeasMath.h.
|
private |
Definition at line 279 of file MeasMath.h.
|
private |
Definition at line 278 of file MeasMath.h.
|
private |
Definition at line 278 of file MeasMath.h.
|
private |
Definition at line 278 of file MeasMath.h.
|
private |
Definition at line 278 of file MeasMath.h.
|
private |
Definition at line 272 of file MeasMath.h.
|
private |
Definition at line 272 of file MeasMath.h.
|
private |
Definition at line 264 of file MeasMath.h.
|
private |
Definition at line 261 of file MeasMath.h.
|
private |
Definition at line 273 of file MeasMath.h.
|
private |
Definition at line 273 of file MeasMath.h.
|
private |
Workspace.
Definition at line 277 of file MeasMath.h.
|
private |
Conversion information.
Definition at line 270 of file MeasMath.h.