Accuracy of an Epicycle Model for Predicting Eclipses
This is a blog post where I try to determine how accurate a simple epicycle model can be for predicting lunar and solar eclipses. Using code, I show how to determine the parameters with Hipparchus' method, and show how these parameters compare to modern values based on an elliptical orbit. The resulting parameters for the sun and moon are then used to predict the eclipses and compare them to modern predictions. One potential advantage of an epicycle model is the easier to calculate by hand, especially in the days where astronomers used tables to determine the positions of the sun and moon.
Analytics
Comments
You're sort of just presenting code, so the novelty is relatively low even if I grant the motivation based solely on mutual curiosity. I think some other visuals could be really helpful from an expositional standpoint (label an orbit, e.g.).
3.4I got this warning when it entered This site has been flagged as part of a community-maintained database of known phishing websites and scams. If you believe the site has been flagged in error, please file an issue.
1This is wonderful groundwork to build this into an exposition because of the thorough tutorial and parameters selected. I've said yet an exposition because there is a playfulness to be introduced of how 'arbitrary' these selections are. Think 3b1b style, where Grant introduces, "what if we pick no, this, or these values?" Also a very small note, may you review what is it was that had non-uniform motion? I think you might mean "moon," although I'm cautious to assume.
6.5Very nice presentation, with clear storyline overall. I didn't go over the code in detail, but the mix was good. I was just left wondering if I had misunderstood that there would be some predictions made which would then be checked for accuracy? There's nothing under the heading "Predicting Solar Eclipse".
5.7The link to the previous blog post on how the Babylonians measured the variability of the moon’s orbit, gives a 404 “Page not found” error. Typo (duplicate text): “of the ascending node of the ascending node”. The section “Predicting Lunar Eclipses” ends mid-sentence with “We can compare this with the value from the NASA Catalogue”. No such comparison is included. The section “Predicting Solar Eclipses” consists solely of the name of the section, with no content thereafter.
6That's historically interesting! But, how accurate /is/ it? You say right at the end, 'compare against NASA's tables', but you leave it to the reader to do so. You could, for example, have colour-coded the final epicycle results with how close they were. For bonus points, does the epicycle method get totality seconds late or early, or minutes? Is there an error in the predicted path of totality? Is it always biased in the same way? It was a little bit unsatisfying to go away with more questions than I went in with, especially as I went in intrigued.
5.6It was an interesting topic and generally well presented. A couple things that could have been improved: - An explanation of astronomy terminology, a lot of it was not familiar to me. Also, pictures of where everything is would be nice. - Less big code blocks, maybe there is a way you could hide them and the reader could look if interested? - Actually comparing the predicted eclipses to actual eclipses to see the error. Also, there were a couple typos. Those are hard to avoid, but it's best if you can clean them up.
4Note: in only 5000 characters I cannot provide a thorough review (I need at least 20000) Note: the link to the previous blog post is broken. Note: The section "Predicting Solar Eclipses" is empty. I think this is a very interesting and worthy topic with a great potential, however I feel that this article needs a lot of improvements. Here are my suggestions: Formatting: long or important equations should be on their own line, to give more importance and to unclutter the view, and to see them better. (Some equations are indeed displayed like this in the article) Pictures: Add diagrams to the presentation, such as when describing Hipparchus model, when defining nodes, when defining the ecliptic limit, when talking about longitude, etc. Definitions: Give definitions of the technical terms (for instance many of the italicised terms, such as 'synodic month', etc.) The focus of the article should have been more on the model and method, and less on the code or actual numbers. The presentatoin should have gone from the beginning with just variables and formulas, no numbers. Then at the end show that you have written scripts that automate the algorithm; such scripts should be displayed minimised (with a button to expand to see the code) to avoid overwhelming the reader. Finally at the end make an example in which you show a table of the required values to be used as input, then show the result of the algorithm (possibly accompanied by a drawing of the epicycle and deferent, their radiuses values, the resulting orbit, and the actual orbit for comparison). When using your script to predict eclipses, show the result as a table in which each row corresponds to an eclipse, and as columns put the date and time of closest approach, type, magnitude, angular separation, then another column for the actual type of eclipse ("no eclipse" if in reality there was none) and actual magnitude (0 if no eclipse occurred) and actual minimum angular separation, and a column for actual time of closest approach (and perhaps also columns that show the errors); also include rows of real eclipses that the model failed to predict. Finally as conclusion to the article it would make sense to briefly say something about the limitations of Hipparchus model, and mention how it has evolved over time (like with non-uniform motions on each circumference). Finally conclude by saying how eclipses are predicted nowadays (gravitational simulations that include many planets), and to which accuracy. It would have also made sense to mention that Hipparchus model can be interpreted as second iteration of Fourier approximation of the actual elliptical orbits. Now here are some things I noticed (as many as I can fit in the character limit). The section "How to Determine the Parameters for the Model" should have started by first giving a clear overview of what kind of measurements one can make about the Sun and Moon, and how to account for the position of the observer. It feels like the main point of the article is missing since the details of the model are not covered, instead left as a reference ("The details can be found in a paper by Duke"). I understand that they may be too technical, but a general overview would have improved the flow of the presentation. Even just a drawing of the trigonometric problem, with the formulas for the solution, would have gone a long way. The required parameters for the code, and the output parameters should have been described before the code. "For the sun, these observations are taken to be the equinoxes and solstices": seems to suggest that the equinox is a measurement; it should be stated that the measurement we seek is the position of the Sun at equinox/solstice, and the time. "For the moon, these observations are taken at lunar eclipses, where the sun is opposite the moon, and therefore the position of the sun allows us to locate the position of the moon" doesn't make sense to the reader, as one would think that the position of the Moon can be measured, since the moon is visible, while the Sun is not. This line requires further explaining. "The values for the longitudes represent the position of the sun at each time. [...] these are simply 90° apart": here it is not clear how the longitude is defined. Also, this seems to imply that we don't need the longitude measurements as inputs, as they are just 0° and 90°. (I understand the algorithm works whichever positions are measured, not just equinox and solstice?) The relation between radius of the epicycle and eccentricity of Earth’s orbit should have been further explained. The calculation for the mean longitude has no explaination, idem the one that follows. "To continue on to the next step, I have written a generic epicycle calculator": this part seems unfinished, like a draft or placeholder, since nothing is explained. The whole section on predicting eclipses is just the author going through computations with no prior "planning" of what steps to follow.
6.2