2
$\begingroup$

As an exercise, I am trying to calculate the JD from a given date in the Gregorian Calendar at a time given in UT. Furthermore, I want to do so from first principles without relying on any formula. Let's say I choose UT 18:30 on 2/28/2010. I am not able to obtain a result consistent with the U.S. Naval Observatory results. I am in need of a calendar guru to show me where my calculation is going astray.

First I find the number of years from 4713 BCE (Julian Date 0) and the target year making sure to add an extra one so as to include 0 CE. This is $4713 + 1 + 2010 = 6724$ years. The number of these years which are leap is $\frac{6724}{4} - 3 = 1681$. This equation attempts to reflect that every fourth year is a leap year except for those years falling after 1582 (the year of the Gregorian Calendar reform) which are both divisible by $100$ and not by $400$. There are three such years which need to be deducted from the total-- 1700, 1800, 1900. This leaves $6724 - 1681 = 5043$ non-leap years.

Now I convert these to days and subtract the $10$ days which were skipped as part of the reform from October 4 to October 15 in 1582. $5043*(365) + 1681*(366) - 10 = 2,455,928$. Next, I find the number of days from January 1st to the target day in the target year (February 28th). This is $59$ days and so I have $2,455,987$.

Finally, the time number of seconds afternoon on the target day is calculated as a fraction of the number of seconds in a 24 hour period. This works out to be $\frac{6(60)(60) + 30(60)}{24(60)(60)} \approx 0.27$. Adding this to the earlier result yields $JD = 2455987.27$.

The actual answer is $2455255.77$ which leaves a difference of $2455987.27 - 2455255.77 = 731.5$ days. This is nearly two years. Obviously, I have either misunderstood the calculation or have performed it incorrectly. Any help would be much appreciated!

$\endgroup$
2
  • 1
    $\begingroup$ USNO Julian Date Converter returns JD 2455256.27 for 2010-02-28 18:30 UT. There is no year 0, so 1 CE - 1 BCE = 1 year; subtract 1 year instead of adding 1. MJD is simpler to compute. $\endgroup$
    – Mike G
    Feb 26, 2019 at 3:40
  • $\begingroup$ Wow this is a very interesting question! $\endgroup$
    – Max0815
    Feb 26, 2019 at 20:29

1 Answer 1

4
$\begingroup$

The Year 0 does not exist in BCE/CE and BC/AD notation. It jumps from 1 BCE to 1 CE directly. So if we look at the sequence of years in BCE/CE notation, we have:

3 BCE
2 BCE
1 BCE
1 CE
2 CE
3 CE

If you want to calculate the number of years between, say, January 1, 2 BCE and January 1, 2 CE, you can add the year numbers to get 4, but then you need to subtract 1 to remove year 0 from the total, giving a total of 3 years. In your particular case, this leads to $4713 - 1 + 2010 = 6722$ years.

In astronomy, we often use another year numbering system called the Astronomical year numbering, which includes a year 0 and makes things more convenient arithmetically when calculating time intervals between eras. It goes (-3, -2, -1, 0, 1, 2, etc.) To convert years BCE to the Astronomical year notation, we subtract 1 and add minus(-) in front of the year. For example, the year 4713 BCE is -4712 in Astronomical year notation. Your year interval is then calculated as $2010 - (\text{-}4712) = 2010 + 4712 = 6722$.

For the leap years calculation, since -4712 is a leap year, this simplifies matters, but don't forget to take the smallest integer greater than or equal to your result (the ceiling function). So in this case $\frac{6722}{4} - 3 = 1677.5$, and the ceiling is 1678, and that is the number of leap years between your years. Also, in your initial calculation, you had forgotten to subtract 3, because 6724 / 4 - 3 = 1678, not 1681.

Finally, the time interval between January 1 and February 28 is 58 days, not 59, because we do not count the last date as part of the interval. This gives a total of $5044 * 365 + 1678 * 366 - 10 + 58 + \frac{6 * 60 * 60 + 30 * 60}{24 * 60 * 60} = 2455256.27$.

You state that the actual answer is 2455255.77, but in fact the answer really is 2455256.27. Perhaps you typed "06:30" instead of "18:30" in the converter.

$\endgroup$

You must log in to answer this question.

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