**by Phill Edwards**

My interest in astronomonical calculations and predictions took off when
Eric Bescher posted the question "I wish to understood why sunsets are delayed
20 minutes in the next 21 days, whereas sunrises remain unchanged. Shouldn't
this stuff be symmetrical with respect to noon?" on his Facebook page. This
started an investigation into the Equation of Time. I found that papers on the
Internet on the subject have errors, are confusing and make unexplained
assumptions. Even worse, the so called definitive text book *Astronomical
Algorithms* by Jean Meeus is so out of date, confusing and error riddled as
to be practically useless. This started this series of explanations of
astronomical events and phenomena.

After much searching and struggling to understand badly written Wikipedia pages, I finally found the definitive source of ephemeris data at NASA JPL. The data sets define the positions of the Sun, Moon and planets to a high degree of accuracy. The data can be found here. One major problem I found was that none of the software to use the data actually works with the later data sets. I chose to work with DE430t data. This is the data set which most accurately describes the lunar orbit and it is used as the basis for the annual Astronomical Almanac. I have written a Java ephemeris library which processes the DE430t data and validates it agains the test data which is provides.

Having got the ephemeris working, I then started converting my software to use it. The current implementation contains the following.

- A program which displays a Kepler orbit where the speed of the planet and the eccentricity of the orbit can be changed by a slider control.
- A program with plots the equation of time components and the equation of time for a given year.
- A program with displays the inner solar system and shows the orbits of Mercury, Venus, Earth and Mars at one day per second.
- A program which displays the Analemma and the times of Solar Noon, Sunrise and Sunset for any given location.
- A program which displays a map of the World and allows locations and journeys to be plotted on it.
- A program which displays the phases of the Moon. It also displays the times of events: Full Moon, New Moon, perigee, apogee, Earth perihelion and aphelion, Vernal and Autumnal equinoxes, June and December solstices. Perihelion and perigee distances and velocities are displayed. It also identifies Blue Moons and Super Moons.

I have downloaded a copy of the Almanac *Astronomical Phenomenon for
the year 2016*. I am using it to write tests for my programs based on
the Almanac data. My software agrees with the Almanac to within a minute.
Interestingly there are a few sunrise times which disagree by about 3
minutes. I believe that I have found errors in the Almanac.

The software is still under development and the following projects are in progress:

- Predict the time of moonrise and moonset for any location.
- Predict the times of solar and lunar eclipses and be able to plot the track of an eclipse on a world map.
- Move onto positions of planets and stars.

There are still some outstanding issues to be resolved:

- There are several different models for the Eath's precession parameters. They are all quite similar.
- I am having trouble generating the Besselian parameters for a solar eclipse. I can calculate the values but they don't agree with the values published by NASA and in the Astronomical Almanac. The algorithms I am using match those published.

Here are some pages which go into more details about the various phenomena:

- The are different ways of measuring time and different definitions of rotation and orbital periods of planets.
- The different coordinate systems required for computations and the transformations between them.
- The Equation of Time explains the asymmetry in the times of sunrise and sunset.
- This document describes how to calculate the times of Equinoxes, Solstices, Apses, Sunrise and Sunset.
- VSOP87 defines analytical solutions to the motions of the planets Mercury, Venus, Earth (and Earth-Moon Barycentre), Mars, Jupiter, Saturn, Uranus and Neptune.
- ELP2000 defines an analytical solution to the motion of the Moon relative to the Earth.
- DE430 is the definitive document from the NASA Jet Propulsion Laboratory for determining the positions of the Sun, planets and the moon. VSOP and ELP are approximations to this data.
- The Earth's Precession and Nutation.
- This document describes how to calculate Moon Phases and Eclipses.
- Two body motion describes how a body orbits around another.