I am writing a program to simulate eclipses for about -2000 to 6000. My question is, how accurate does my ephemeris for the sun and moon have to be to get a decent accuracy for eclipses? I currently have an accuracy of about 1'' for the Sun and an accuracy of about 12'' for the moon. Is this good enough, or should I find a more accurate system?

Edit: I'm still rather new to calculating eclipses, though I have some experience with calculating ephemerises. I'd like to calculate several things: when they occur, the duration, the path of the shadow on the earth for a solar eclipse, and perhaps the percent covered. I suppose I'd like the accuracy on these to be about $\pm 0.005$ or better. I have access to several resources that should help me do this, but I need to know how accurate to get the ephemeris.

  • 2
    $\begingroup$ for a good period of time - you need to give at least an order of magnitude for the timescale to get a useful answer. That expression is totally vague. "Decent accuracy" could also do with some values - what's your idea of acceptable error ranges ? $\endgroup$ Commented Apr 1, 2020 at 13:25
  • $\begingroup$ Diameter of both bodies is about 30'. Given your accuracy in positioning you can probably do the math yourself - and the answer to 'good enough' depends on what you define as 'good enough' $\endgroup$ Commented Apr 1, 2020 at 13:27
  • 1
    $\begingroup$ You should also mention exactly what you want to predict. Do you just want to predict when eclipses will happen? Or do you also want to predict the duration of the eclipse, and if it's partial what percentage of the Sun or Moon is maximally covered? And for solar eclipses, do you want to calculate the path on the ground of the Moon's shadow? $\endgroup$
    – PM 2Ring
    Commented Apr 1, 2020 at 13:34
  • $\begingroup$ Thank you all for your comments. I'll add to my question. $\endgroup$ Commented Apr 1, 2020 at 13:35
  • 2
    $\begingroup$ Those are phenomenally good accuracies, may I ask how you got them. Normally, you'd want something like CSPICE (naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/index.html) to compute eclipses, which is what NASA uses. $\endgroup$
    – user21
    Commented Apr 1, 2020 at 15:29

1 Answer 1


I suspect this is fundamentally a question of error propagation. My personal favorite reference is "Data Reduction and Error Analysis" by Philip Bevington. Basically, once you have the formulas in place, such as

eclipse_time = f(sun_ephem, moon_ephem)

You take all the partial derivatives and "stuff" them into the error propagator formulas along with the known or estimated standard deviations (error/uncertainty) of your input variables. The uncertainty in the output just pops right out.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .