next up previous
Next: SLA_PLANTE - of Planet from Elements
Up: SUBPROGRAM SPECIFICATIONS
Previous: SLA_PLANEL - Planet Position from Elements

SLA_PLANET - Planetary Ephemerides   

ACTION:
Approximate heliocentric position and velocity of a planet.
CALL:
CALL sla_PLANET (DATE, NP, PV, JSTAT)

GIVEN:

DATE D Modified Julian Date (JD-2400000.5)
NP I planet:
1=Mercury
2=Venus
3=Earth-Moon Barycentre
4=Mars
5=Jupiter
6=Saturn
7=Uranus
8=Neptune
9=Pluto

RETURNED:

PV D(6) heliocentric $[\,x,y,z,\dot{x},\dot{y},\dot{z}\,]$, equatorial, J2000
(AU, AU/s)
JSTAT I status:
+1 = warning: date outside of range
0 = OK
-1 = illegal NP (outside 1-9)
-2 = solution didn't converge

NOTES:
1.
The epoch, DATE, is in the TDB timescale and is in the form of a Modified Julian Date (JD-2400000.5).
2.
The reference frame is equatorial and is with respect to the mean equinox and ecliptic of epoch J2000.
3.
If a planet number, NP, outside the range 1-9 is supplied, an error status is returned (JSTAT = -1) and the PV vector is set to zeroes.
4.
The algorithm for obtaining the mean elements of the planets from Mercury to Neptune is due to J.L.Simon, P.Bretagnon, J.Chapront, M.Chapront-Touze, G.Francou and J.Laskar (Bureau des Longitudes, Paris, France). The (completely different) algorithm for calculating the ecliptic coordinates of Pluto is by Meeus.
5.
Comparisons of the present routine with the JPL DE200 ephemeris give the following RMS errors over the interval 1960-2025:

 		 		 position (km) 		 speed (metre/sec) 
 
		 Mercury 		  334 		  0.437
		 Venus 		  1060 		  0.855
		 EMB 		  2010 		  0.815
		 Mars 		  7690 		  1.98
		 Jupiter 		  71700 		  7.70
		 Saturn 		  199000 		  19.4
		 Uranus 		  564000 		  16.4
		 Neptune 		  158000 		  14.4
		 Pluto 		  36400 		  0.137        
From comparisons with DE102, Simon et al. quote the following longitude accuracies over the interval 1800-2200:

 		 Mercury 		  $4\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 Venus 		  $5\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 EMB 		  $6\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 Mars 		 $17\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 Jupiter 		 $71\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 Saturn 		 $81\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 Uranus 		 $86\hspace{-0.05em}^{'\hspace{-0.1em}'}$ 
		 Neptune 		 $11\hspace{-0.05em}^{'\hspace{-0.1em}'}$
In the case of Pluto, Meeus quotes an accuracy of $0\hspace{-0.05em}^{'\hspace{-0.1em}'}\hspace{-0.4em}.6$

in longitude and $0\hspace{-0.05em}^{'\hspace{-0.1em}'}\hspace{-0.4em}.2$ in latitude for the period 1885-2099.

For all except Pluto, over the period 1000-3000, the accuracy is better than 1.5 times that over 1800-2200. Outside the interval 1000-3000 the accuracy declines. For Pluto the accuracy declines rapidly outside the period 1885-2099. Outside these ranges (1885-2099 for Pluto, 1000-3000 for the rest) a ``date out of range'' warning status (JSTAT=+1) is returned.

6.
The algorithms for (i) Mercury through Neptune and (ii) Pluto are completely independent. In the Mercury through Neptune case, the present SLALIB implementation differs from the original Simon et al. Fortran code in the following respects:
  • The date is supplied as a Modified Julian Date rather a Julian Date (${\rm MJD} = ({\rm JD} - 2400000.5$).
  • The result is returned only in equatorial Cartesian form; the ecliptic longitude, latitude and radius vector are not returned.
  • The velocity is in AU per second, not AU per day.
  • Different error/warning status values are used.
  • Kepler's Equation is not solved inline.
  • Polynomials in T are nested to minimize rounding errors.
  • Explicit double-precision constants are used to avoid mixed-mode expressions.
  • There are other, cosmetic, changes to comply with Starlink/SLALIB style guidelines.
None of the above changes affects the result significantly.
7.
NP=3 the result is for the Earth-Moon Barycentre. To obtain the heliocentric position and velocity of the Earth, either use the SLALIB routine sla_EVP or call sla_DMOON and subtract 0.012150581 times the geocentric Moon vector from the EMB vector produced by the present routine. (The Moon vector should be precessed to J2000 first, but this can be omitted for modern epochs without introducing significant inaccuracy.)

REFERENCES:
1.
Simon et al., Astron. Astrophys. 282, 663 (1994).
2.
Meeus, J., Astronomical Algorithms, Willmann-Bell (1991).


next up previous
Next: SLA_PLANTE - of Planet from Elements
Up: SUBPROGRAM SPECIFICATIONS
Previous: SLA_PLANEL - Planet Position from Elements

SLALIB --- Positional Astronomy Library
Starlink User Note 67
P. T. Wallace
12 October 1999
E-mail:ptw@star.rl.ac.uk