KSNumbers

Search for usage in LXR

KSNumbers Class Reference

#include <ksnumbers.h>

Public Member Functions

 KSNumbers (long double jd)
 
void computeConstantValues ()
 
dms constAberr () const
 
double dEcLong () const
 
double dObliq () const
 
double earthEccentricity () const
 
CachingDms earthPerihelionLongitude () const
 
long double getJD () const
 
double julianCenturies () const
 
long double julianDay () const
 
double julianMillenia () const
 
const CachingDmsobliquity () const
 
const Eigen::Matrix3d & p1 () const
 
double p1 (int i1, int i2) const
 
const Eigen::Matrix3d & p1b () const
 
double p1b (int i1, int i2) const
 
const Eigen::Matrix3d & p2 () const
 
double p2 (int i1, int i2) const
 
const Eigen::Matrix3d & p2b () const
 
double p2b (int i1, int i2) const
 
dms sunMeanAnomaly () const
 
dms sunMeanLongitude () const
 
dms sunTrueAnomaly () const
 
CachingDms sunTrueLongitude () const
 
void updateValues (long double jd)
 
double vEarth (int i) const
 

Detailed Description

There are several time-dependent values used in position calculations, that are not specific to an object.

This class provides storage for these values, and methods for calculating them for a given date. The numbers include solar data like the true/mean solar anomalies and longitudes, the longitude of the Earth's perihelion, the eccentricity of Earth's orbit, the constant of aberration, the obliquity of the Ecliptic, the effects of Nutation (delta Obliquity and delta Ecliptic longitude), the Julian Day/Century/Millenium, and arrays for computing the precession.

Store several time-dependent astronomical quantities.

Author
Jason Harris
Version
1.0

Definition at line 42 of file ksnumbers.h.

Constructor & Destructor Documentation

◆ KSNumbers()

KSNumbers::KSNumbers ( long double jd)
explicit

Constructor.

Parameters
jdJulian Day for which the new instance is initialized

Definition at line 93 of file ksnumbers.cpp.

Member Function Documentation

◆ computeConstantValues()

void KSNumbers::computeConstantValues ( )

compute constant values that need to be computed only once per instance of the application

Definition at line 111 of file ksnumbers.cpp.

◆ constAberr()

dms KSNumbers::constAberr ( ) const
inline
Returns
the constant of aberration (20.49 arcsec).

Definition at line 59 of file ksnumbers.h.

◆ dEcLong()

double KSNumbers::dEcLong ( ) const
inline
Returns
the change in Ecliptic Longitude due to nutation. Value is in degrees.

Definition at line 85 of file ksnumbers.h.

◆ dObliq()

double KSNumbers::dObliq ( ) const
inline
Returns
the change in obliquity due to the nutation of Earth's orbit. Value is in degrees

Definition at line 81 of file ksnumbers.h.

◆ earthEccentricity()

double KSNumbers::earthEccentricity ( ) const
inline
Returns
eccentricity of Earth's orbit.

Definition at line 77 of file ksnumbers.h.

◆ earthPerihelionLongitude()

CachingDms KSNumbers::earthPerihelionLongitude ( ) const
inline
Returns
the longitude of the Earth's perihelion point.

Definition at line 74 of file ksnumbers.h.

◆ getJD()

long double KSNumbers::getJD ( ) const
inline
Returns
the JD for which these values hold (i.e. the last updated JD)

Definition at line 128 of file ksnumbers.h.

◆ julianCenturies()

double KSNumbers::julianCenturies ( ) const
inline
Returns
Julian centuries since J2000

Definition at line 88 of file ksnumbers.h.

◆ julianDay()

long double KSNumbers::julianDay ( ) const
inline
Returns
Julian Day

Definition at line 91 of file ksnumbers.h.

◆ julianMillenia()

double KSNumbers::julianMillenia ( ) const
inline
Returns
Julian Millenia since J2000

Definition at line 94 of file ksnumbers.h.

◆ obliquity()

const CachingDms * KSNumbers::obliquity ( ) const
inline
Returns
the current Obliquity (the angle of inclination between the celestial equator and the ecliptic)

Definition at line 56 of file ksnumbers.h.

◆ p1() [1/2]

const Eigen::Matrix3d & KSNumbers::p1 ( ) const
inline

Definition at line 110 of file ksnumbers.h.

◆ p1() [2/2]

double KSNumbers::p1 ( int i1,
int i2 ) const
inline
Returns
element of P1 precession array at position (i1, i2)

Definition at line 97 of file ksnumbers.h.

◆ p1b() [1/2]

const Eigen::Matrix3d & KSNumbers::p1b ( ) const
inline

Definition at line 111 of file ksnumbers.h.

◆ p1b() [2/2]

double KSNumbers::p1b ( int i1,
int i2 ) const
inline
Returns
element of P1B precession array at position (i1, i2)

Definition at line 103 of file ksnumbers.h.

◆ p2() [1/2]

const Eigen::Matrix3d & KSNumbers::p2 ( ) const
inline
Returns
the precession matrix directly

Definition at line 109 of file ksnumbers.h.

◆ p2() [2/2]

double KSNumbers::p2 ( int i1,
int i2 ) const
inline
Returns
element of P2 precession array at position (i1, i2)

Definition at line 100 of file ksnumbers.h.

◆ p2b() [1/2]

const Eigen::Matrix3d & KSNumbers::p2b ( ) const
inline

Definition at line 112 of file ksnumbers.h.

◆ p2b() [2/2]

double KSNumbers::p2b ( int i1,
int i2 ) const
inline
Returns
element of P2B precession array at position (i1, i2)

Definition at line 106 of file ksnumbers.h.

◆ sunMeanAnomaly()

dms KSNumbers::sunMeanAnomaly ( ) const
inline
Returns
the mean solar anomaly.

Definition at line 62 of file ksnumbers.h.

◆ sunMeanLongitude()

dms KSNumbers::sunMeanLongitude ( ) const
inline
Returns
the mean solar longitude.

Definition at line 65 of file ksnumbers.h.

◆ sunTrueAnomaly()

dms KSNumbers::sunTrueAnomaly ( ) const
inline
Returns
the true solar anomaly.

Definition at line 68 of file ksnumbers.h.

◆ sunTrueLongitude()

CachingDms KSNumbers::sunTrueLongitude ( ) const
inline
Returns
the true solar longitude.

Definition at line 71 of file ksnumbers.h.

◆ updateValues()

void KSNumbers::updateValues ( long double jd)

update all values for the date given as an argument.

Parameters
jdthe Julian date for which to compute values

Contributions to the velocity of the Earth referred to the barycenter of the solar system in the J2000 equatorial system Velocities 10^{-8} AU/day Ron & Vondrak method

Definition at line 155 of file ksnumbers.cpp.

◆ vEarth()

double KSNumbers::vEarth ( int i) const
inline

Definition at line 130 of file ksnumbers.h.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 17:04:47 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.