[LEAPSECS] Time math libraries, UTC to TAI

Brooks Harris brooks at edlmax.com
Mon Jan 2 13:55:05 EST 2017


On 2017-01-02 01:07 PM, Michael.Deckers. via LEAPSECS wrote:
>
>    On 2016-12-31 22:39, Brooks Harris quoted a table
>    from the RFC defining the NTP protocol:
>
>>
>> RFC 5905 Figure 4: Interesting Historic NTP Dates shows
>>
>> +-------------+------------+-----+---------------+------------------+
>>    | Date        | MJD        | NTP | NTP Timestamp | Epoch            |
>>    |             |            | Era | Era Offset |                  |
>> +-------------+------------+-----+---------------+------------------+
>>    | 1 Jan -4712 | -2,400,001 | -49 | 1,795,583,104 | 1st day Julian   |
>>    | 1 Jan -1    | -679,306   | -14 | 139,775,744   | 2 BCE            |
>>    | 1 Jan 0     | -678,491   | -14 | 171,311,744   | 1 BCE            |
>>    | 1 Jan 1     | -678,575   | -14 | 202,939,144   | 1 CE             |
>>    | 4 Oct 1582  | -100,851   | -3  | 2,873,647,488 | Last day Julian  |
>>    | 15 Oct 1582 | -100,840   | -3  | 2,874,597,888 | First day        |
>>    |             |            |     |               | Gregorian        |
>>    | 31 Dec 1899 | 15019      | -1  | 4,294,880,896 | Last day NTP Era |
>>    |             |            |     |               | -1               |
>>    | 1 Jan 1900  | 15020      | 0   | 0             | First day NTP    |
>>    |             |            |     |               | Era 0            |
>>    | 1 Jan 1970  | 40,587     | 0   | 2,208,988,800 | First day UNIX   |
>>    | 1 Jan 1972  | 41,317     | 0   | 2,272,060,800 | First day UTC    |
>>    | 31 Dec 1999 | 51,543     | 0   | 3,155,587,200 | Last day 20th    |
>>    |             |            |     |               | Century          |
>>    | 8 Feb 2036  | 64,731     | 1   | 63,104        | First day NTP    |
>>    |             |            |     |               | Era 1            |
>> +-------------+------------+-----+---------------+------------------+
>>
Hi Michael,
>     Just to show that standards (and RFCs) must be read with caution
>     because they sometimes do not mean what they say,
Yes, there are typos and sometimes hastily or carelessly added clauses, 
or through all the SDO procedures mistakes are just not caught.
> here are a few
>     inconsistencies in the table above:
>
>     The "fffMJD" entry in the line for "Date 1 Jan 0" should be -678,941
>     rather than "-678,491".
That typo has been pointed out here on LEASECS before.
>
>     Did you expect that the dates "1 Jan -1", "1 Jan 0", "1 Jan 1",
>     "4 Oct 1582" are meant to be dates in the (proleptic) Gregorian
>     calendar, while "1 Jan -4712" is meant to be a date in the
>     Julian calendar?
>
>     And of course, the "Last day Julian" should be one day before the
>     "First day Gregorian" but actually is eleven days earlier.
Ah, I think the table is correct - that's the infamous reset made by the 
Gregorian calendar to correct accumulated inaccuracies in the Julian and 
also, I believe, counted days at midnight, not noon, as Julian did 
(does). This is noted in ISO 8601, 3.2.1 The Gregorian calendar -

"The introduction of the Gregorian calendar included the cancellation of 
the accumulated inaccuracies of the
Julian calendar. However, no dates shall be inserted or deleted when 
determining dates in the proleptic
Gregorian calendar."

>
>     Michael Deckers.

I think one of the great weaknesses in most the timekeeping specs and 
the literature in general is that the distinction between YMDhms 
representations of (pure) Gregorian calendar and Leap Second compensated 
Gregorian calendar is not made.

In the table, all the YMDhms representations are called only "Date". 
Those before 1972 are (or, I think, intended to be) Gregorian, while 
after 1972 (and probably at) 1972 they are "UTC".

My preferred Leap Second table is 
https://hpiers.obspm.fr/eoppc/bul/bulc/Leap_Second_History.dat because 
it's the most clear and simplest. In particular, the crucial day values 
are given in MJD, which is more specific than an unexplained  YMDhms 
date representation. Note there that the "Date, day month year" 
representation is not explicitly explained, but its clear from context 
that its "Leap Second compensated", or "UTC". It would make me more 
confident of my interpretation of the table if that were explicitly 
explained.

-Brooks

>
>
> _______________________________________________
> LEAPSECS mailing list
> LEAPSECS at leapsecond.com
> https://pairlist6.pair.net/mailman/listinfo/leapsecs
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist6.pair.net/pipermail/leapsecs/attachments/20170102/02ba2cbd/attachment.html>


More information about the LEAPSECS mailing list