Loading...
Searching...
No Matches
solsys3.c File Reference

Planet calculator functions for the Earth and Sun only, with an orbital model fitted to the DE405 ephemerides by JPL. More...

## Functions

short | earth_sun_calc (double jd_tdb, enum novas_planet body, enum novas_origin origin, double *restrict position, double *restrict velocity)
| Provides the position and velocity of the Earth and Sun only at epoch 'jd_tdb' by evaluating a closed-form theory without reference to an external file.
short | earth_sun_calc_hp (const double jd_tdb[restrict 2], enum novas_planet body, enum novas_origin origin, double *restrict position, double *restrict velocity)
| It may provide the position and velocity of the Earth and Sun, the same as earth_sun_calc(), if enable_earth_sun_hp() is set to true (non-zero).
void | enable_earth_sun_hp (int value)
| Specify whether the high-precision call is allowed to return a low-precision result.
int | sun_eph (double jd, double *restrict ra, double *restrict dec, double *restrict dis)
| Computes equatorial spherical coordinates of Sun referred to the mean equator and equinox of date.

## Detailed Description

Planet calculator functions for the Earth and Sun only, with an orbital model fitted to the DE405 ephemerides by JPL.

This function is suitable for calculating the positions of Earth and the Sun around the Solar-system Barycenter (SSB) with a typical accutacy of around 10 arcseconds within a few centuries of J2000.

It is inherently similar, at least in accuracy, to the planetary orbital models provided by planets.c, except that it can be used more widely in SuperNOVAS internally by the various functions, which need Earth and/or Sun positions for their calculations.

Based on the NOVAS C Edition, Version 3.1:

U. S. Naval Observatory
Astronomical Applications Dept.
Washington, DC
http://www.usno.navy.mil/USNO/astronomical-applications

Author
  G. Kaplan and Attila Kovacs

See also
  ephemeris.c, planets.c, solsys-calceph.c, solsys-cspice.c, solsys-ephem.c

## Function Documentation

## sun_eph()

int sun_eph | ( | double | jd,
|  | double *restrict | ra,
|  | double *restrict | dec,
|  | double *restrict | dis )

Computes equatorial spherical coordinates of Sun referred to the mean equator and equinox of date.

Quoted accuracy is 2.0 + 0.03 * T2 arcsec, where T is measured in units of 1000 years from J2000.0. See reference.

The obliquity equation is updated to equation 5.12 of the second reference.

The linear fit to DE405 primarily corrects for the difference between "old" (Lieske) and "new" (IAU 2006) precession. The difference, new - old, is -0.3004 arcsec/cy.

REFERENCES:

1. Bretagnon, P. and Simon, J.L. (1986). Planetary Programs and Tables from -4000 to + 2800. (Richmond, VA: Willmann-Bell).
2. Kaplan, G.H. (2005). US Naval Observatory Circular 179.

Parameters

  | jd | [day] jd (double) Julian date on TDT or ET time scale.
  [out] | ra | [h] Right ascension referred to mean equator and equinox of date (hours).
  [out] | dec | [deg] Declination referred to mean equator and equinox of date (degrees).
  [out] | dis | [AU] Geocentric distance (AU).

Returns
  0 if successful, or else -1 if any of the pointer arguments are NULL.

See also
  earth_sun_calc()

References TWOPI.