The earth takes 365.242190 days to orbit the sun, though this varies from 365.242196 in 1900 to 365.242184 in 2100.
For the following calculations of error, we presume 1900 as the standard year. This is
not an integral number of days, so we fiddle with the calendar adding leap years to keep the calendar in sync
with the sun. There is a great deal of confusion about how you calculate the leap years.
Julian Calendar
Julius Caesar created the modern calendar in 46 BC, which is distinct from the astronomer’s Julian calendar. Prior to that it was a mess well beyond your wildest
dreams. The Julian calendar is still used by
the Russian Orthodox church and by programmers who are ignorant of the official Gregorian calendar. It has leap
years every four years without exception. It corrects to 365.25. It gets ahead
Astronomer’s Julian Calendar
Joseph Justus Scaliger (born: 1540 died: 1609 at age: 69)
invented an Astronomical Julian calendar, (named after his father Julius Caesar Scaliger, not the Roman emperor).
This Julian calendar uses the offset in days since noon, 4713-01-01 BC. In that scheme,
2000-01-01 noon is the start of day number 2,451,545. This calendar follows the
original Julian scheme of always adding leap years every four years.
Gregorian Calendar
The next major correction was the Gregorian calendar. By
1582, this excess of leap years had built up noticeably. At the suggestion of
astronomers Luigi Lilio and Chistopher Clavius, Pope Gregory XIII dropped 10 days from
the calendar. Thursday 1582-10-04 Julian was followed immediately by Friday
1582-10-15 Gregorian. He decreed that every 100 years, a leap
year should be dropped except that every 400 years the leap year should be restored.
Only Italy, Poland, Portugal and Spain went along with the new calendar immediately. One by one other countries
adopted it in different years. Britain and its
territories (including the USA and Canada) adopted it in 1752. By then, 11 days had to be dropped. 1752-09-02 was followed immediately by
1752-09-14. The Gregorian calendar is the most widely used scheme. This is the scheme
endorsed by the US Naval observatory. It corrects the year to 365.2425. It gets
ahead 1 day every 3289 years.
Herschel Calendar
Astronomer John Herschel
(born: 1792 died: 1871 at age: 79)
suggested dropping a leap year every 4000 years. This scheme never received official
support. It corrects to 365.24225. It gets ahead 1 day every 18,519 years.
Greek Orthodox Computer
The Greek
Orthodox church drops the 400 rule and in its place uses a rule that any year that when divided by 900 gives
a remainder of either 200 or 600 is a leap year. This is the official system in Russia. It corrects to 365.24222.
It gets ahead 1 day every 41,667 years.
SPAWAR (the Space and Naval Warfare systems command) Calendar
The SPAWAR group in the US Navy propose the following
algorithm where a leap year is dropped every 3200 years. This is most accurate of the schemes, and also has the
desirable property of undercorrecting, leaving room for correction with an extra leap day at some point in
future. It corrects to 365.2421875. It gets behind 1 day
every 117,647 years. Leap seconds correct for day length, not year length. Leap seconds are added on average
every 3 out of 4 years to correct for the ever lengthening day.
Leap seconds, though not intended for adjusting year length, add up to roughly an extra day every 115,000 years. When you consider the effects of leap seconds, this scheme is bang on, within
the
Theoretical Calendars
I will leave as an exercise for the reader the staircase leap year algorithm that is
the most accurate possible. If you compose a Java program to compute the leap years for it, I will post it here
with an attribution to you. Hints:
- Consider how you use pixels to draw a diagonal line that is almost horizontal.
- What if you actually went outside and looked at the heavens at midnight each February 28, or every fourth
February 28, and made the decision at that point whether to have a February 29.
- Integrate the function that gives the length of the year in days given the year that considers both leap
seconds and the gradual shortening of the year.
John Stockton suggests a scheme with leap years dropped very 128 years.
Perhaps some future earth citizens will drag the orbit of the earth slightly so no further adjustments will be
necessary. More likely, sentient life will convert to a less terracentric calendar, perhaps time quanta since the
big bang.
Calendar Differences
Differences Between Calendars |
year |
Julian
Leap? |
Gregorian
Leap? |
Herschel
Leap? |
Greek
Leap? |
SPAWAR
Leap? |
1 |
no |
no |
no |
no |
no |
4 |
yes |
yes |
yes |
yes |
yes |
1580 |
yes |
yes |
yes |
yes |
yes |
1582 |
no |
no |
no |
no |
no |
1584 |
yes |
yes |
yes |
yes |
yes |
1600 |
yes |
yes |
yes |
no |
yes |
1700 |
yes |
no |
no |
no |
no |
1800 |
yes |
no |
no |
no |
no |
1900 |
yes |
no |
no |
no |
no |
1996 |
yes |
yes |
yes |
yes |
yes |
1997 |
no |
no |
no |
no |
no |
1999 |
no |
no |
no |
no |
no |
2000 |
yes |
yes |
yes |
yes |
yes |
2100 |
yes |
no |
no |
no |
no |
2200 |
yes |
no |
no |
no |
no |
2300 |
yes |
no |
no |
no |
no |
2400 |
yes |
yes |
yes |
yes |
yes |
2800 |
yes |
yes |
yes |
no |
yes |
2900 |
yes |
no |
no |
yes |
no |
3200 |
yes |
yes |
yes |
no |
no |
3300 |
yes |
no |
no |
yes |
no |
3600 |
yes |
yes |
yes |
no |
yes |
3800 |
yes |
no |
no |
yes |
no |
4000 |
yes |
yes |
no |
no |
yes |
4200 |
yes |
no |
no |
yes |
no |
4400 |
yes |
yes |
yes |
no |
yes |
4700 |
yes |
no |
no |
yes |
no |
4800 |
yes |
yes |
yes |
no |
yes |
5100 |
yes |
no |
no |
yes |
no |
5200 |
yes |
yes |
yes |
no |
yes |
6400 |
yes |
yes |
yes |
no |
no |
6500 |
yes |
no |
no |
yes |
no |
6800 |
yes |
yes |
yes |
no |
yes |
6900 |
yes |
no |
no |
yes |
no |
7200 |
yes |
yes |
yes |
no |
yes |
7400 |
yes |
no |
no |
yes |
no |
7600 |
yes |
yes |
yes |
no |
yes |
7800 |
yes |
no |
no |
yes |
no |