Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.atnf.csiro.au/computing/software/casacore/casacore-1.2.0/doc/html/classcasa_1_1SolarPos.html
Дата изменения: Unknown
Дата индексирования: Mon Feb 14 21:08:22 2011
Кодировка:

Поисковые слова: arp 220
casacore: casa::SolarPos Class Reference
Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | Static Private Attributes

casa::SolarPos Class Reference
[Measures_module]

Solar position class and calculations. More...

#include <SolarPos.h>

List of all members.

Public Types

enum  SolarPosTypes {
  STANDARD,
  NONE
}
 

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

More...

Public Member Functions

 SolarPos ()
 Default constructor, generates default J2000 SolarPos identification.
 SolarPos (const SolarPos &other)
 Copy constructor.
 SolarPos (SolarPosTypes type)
 Constructor with type.
SolarPosoperator= (const SolarPos &other)
 Copy assignment.
 ~SolarPos ()
const MVPositionoperator() (Double epoch)
 Operator () calculates the geocentric Solar Position in AU.
const MVPositionderivative (Double epoch)
 Return derivatives of SolarPos (d-1).
const MVPositionbaryEarthDerivative (Double epoch)
const MVPositionbarySunDerivative (Double epoch)
const MVPositionbaryEarth (Double epoch)
 Barycentric position of Earth.
const MVPositionbarySun (Double epoch)
 Barycentric position of Sun.
void init ()
 Re-initialise SolarPos object.
void init (SolarPosTypes type)
void refresh ()
 Refresh calculations.

Static Public Attributes

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

Private Member Functions

void copy (const SolarPos &other)
 Copy.
void fill ()
 Fill an empty copy.
void calcEarth (Double t)
 Calculate heliocentric Earth position for time t.
void calcSun (Double t)
 Calculate heliocentric barycentre position.

Private Attributes

SolarPosTypes method
 Method to be used.
Double checkEpoch
 Check epoch for linear approximation.
Double checkSunEpoch
Double eval [3]
 Cached calculated Earth positions.
Double deval [3]
 Cached derivatives.
Double sval [3]
 Cached calculated Sun positions.
Double dsval [3]
 Cached derivatives.
Int lres
 To be able to use references in simple calculations, results are calculated in a circular buffer.
MVPosition result [6]
 Last calculation.

Static Private Attributes

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

Detailed Description

Solar position class and calculations.

Intended use:

Public interface

Review Status

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

Prerequisite

Etymology

SolarPos from Solar Position

Synopsis

SolarPos forms the class for Solar Position 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 SolarPos for a certain Epoch is calculated by the () operator as SolarPos(epoch), with epoch Double MJD, as an MVPosition vector.
It returns the geocentric position of the heliocentre in rectangular coordinates in AU.
The derivative (d-1) can be obtained as well by derivative(epoch), baryEarthDerivative() and barySunDerivative().
The Earth's and solar barycentric position can be obtained by the members baryEarth and barySun. The following details can be set with the Aipsrc mechanism:

Reference: M. Soma et al., Cel. Mech. 41 (1988), 389; E.M. Standish, Astron. Astroph. 114 (1982), 297.

Example

Motivation

To calculate the solar/Earth positions for gravitational deflection. 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 111 of file SolarPos.h.


Member Enumeration Documentation

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

Enumerator:
STANDARD 
NONE 

Definition at line 119 of file SolarPos.h.


Constructor & Destructor Documentation

casa::SolarPos::SolarPos (  ) 

Default constructor, generates default J2000 SolarPos identification.

casa::SolarPos::SolarPos ( const SolarPos other  ) 

Copy constructor.

casa::SolarPos::SolarPos ( SolarPosTypes  type  ) 

Constructor with type.

casa::SolarPos::~SolarPos (  ) 

Member Function Documentation

const MVPosition& casa::SolarPos::baryEarth ( Double  epoch  ) 

Barycentric position of Earth.

const MVPosition& casa::SolarPos::baryEarthDerivative ( Double  epoch  ) 
const MVPosition& casa::SolarPos::barySun ( Double  epoch  ) 

Barycentric position of Sun.

const MVPosition& casa::SolarPos::barySunDerivative ( Double  epoch  ) 
void casa::SolarPos::calcEarth ( Double  t  )  [private]

Calculate heliocentric Earth position for time t.

void casa::SolarPos::calcSun ( Double  t  )  [private]

Calculate heliocentric barycentre position.

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

Copy.