antony,

The NTP timescale described on the NTP Era and Era Numbering page at the NTP Project site reckonds JDN days and fraction since noon on the first day of year 4613. The correspondence betwen JDN day and civil year prior to Pope Gregory's bull is in JDN years of 365.25 days , as is the habit of historians. The year since the papal bull corresponds to the Gregorian Calendar. The tables you see in the documentation were determined by an awesome Excel spreadsheet that apparently is unreadable with the current Excel version. Whatever bugs may remain are mine, but do not affect the current NTP timekeeping, only possible historic misadventures.

David

antony.arciu...@oooii.com wrote:

In http://www.ietf.org/rfc/rfc5905.txt and 
http://www.eecis.udel.edu/~mills/database/reports/ntp4/ntp4.pdf

Figure 4: Interesting Historic NTP Dates/Table 2: Interesting Historic NTP Dates

It seems to me that all MJD values in the table are calculated using Gregorian 
calculations all the way back. If I put in an "if before Gregorian was used" to 
do a different leap day calculation, then none of the pre-Gregorian values come out 
correctly.

This is all true EXCEPT for the first test, the Julian Day Number Epoch. The document 
describes what should be "zero" for MJD, i.e. the exact constant that the 
offset is from regular JD. Using the Gregorian calculation for Julian Days, the value for 
Jan 1, -4712 is 38, not 0. Thus the MJD I get is -2399963, not -2400001. That's way more 
than any precision/noon v. midnight would produce.

Why is that first date different algorithmically, if the test values are to be 
believed? It's not a Julian v. Gregorian thing because I can generate the other 
BCE dates consistently.

Am I missing something? I feel like either the first MJD in the table is 
incorrect, or all BCE values are incorrectly calculated using Gregorian math in 
a non-Gregorian era.

I am using code from http://www.tondering.dk/claus/calendar.html AND 
http://bowie.gsfc.nasa.gov/time/julian.txt (ported to C) for JDN calc and they 
are always self consistent (I do a assert(JDN1 == JDN2) to be sure I've got the 
calcs right). I also have a 3rd I did right from 
http://en.wikipedia.org/wiki/Julian_day, but that too produces 38.

I can only get 0 JDN, thus -2400001 MJD with a non-Gregorian calculation, but then all BCE calcs + 
"Last day Julian" fail (the CE tests after "Last day Julian" all pass.

Please, can someone shed some light on what I am missing? What are the rules 
NTP uses for calculating JDN?

_______________________________________________
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions

_______________________________________________
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions
  • [ntp:questions... antony . arciuolo
    • Re: [ntp:... E-Mail Sent to this address will be added to the BlackLists
      • Re: [... antony . arciuolo
        • R... E-Mail Sent to this address will be added to the BlackLists
    • Re: [ntp:... David L. Mills

Reply via email to