Rata Die — Википедия
Rata Die (c лат. — в подсчитанный день) — число дней, прошедших с начала нашей эры по продлённому в прошлое григорианскому календарю. Rata Die = 1 соответствует 1 января 1 года нашей эры (01.01.0001).
Отличия Rata Die от юлианской даты
[править | править код]Rata Die (RD) похож на юлианские даты (JD) в том смысле, что значения представляют собой простые действительные числа, которые увеличиваются на 1 каждый день. Системы отличаются принципиально тем, что JD принимает определённое значение в конкретное абсолютное время, тогда как значения RD могут быть различными относительно часового пояса. Это делает RD более подходящим для работы с календарными датами. Точки отсчёта также отличаются: RD 1 — полночь (00:00) по местному времени 1 января 1 года н. э. по пролептическому григорианскому календарю, JD 0 — полдень (12:00) по универсальному времени 1 января 4713 года до н. э. по пролептическому юлианскому календарю. В компьютерном языке REXX отсчёт начинается с 0 в полночь (00:00) по местному времени 1 января 1 года н. э. по пролептическому григорианскому календарю.
Формы Rata Die
[править | править код]Есть три различных формы RD. В этом разделе они определены в терминах юлианских дат.
Первая форма RD — это непрерывно увеличивающееся дробное число, принимающее целочисленные значения в полночь по местному времени. Это может быть определено в терминах юлианской даты как
- RD = JD − 1 721 424,5
Во второй форме RD представляет собой целое число, которое обозначает целый день, с полуночи до полуночи по местному времени. Это результат округления первой формы RD в сторону отрицательной бесконечности. Это то же самое, что и отношение между юлианской датой и юлианским номером дня (JDN). Таким образом:
- RD = floor(JD − 1 721 424,5),
где floor — целая часть.
В третьей форме RD представляет собой целочисленное время полудня и не может получать любое другое время дня. Это определяется как
- RD = JD − 1 721 425
где значение RD должно быть целым числом, что ограничивает выбор JD. Эта форма RD используется в книге для преобразования календарных дат между календарями, которые разделяют дни на разных границах.
В книге не проводится четкое различие между этими тремя формами, используется сокращение «RD» для них всех[1].
Книга не говорит о том, что RD основана на гринвичском времени, но на странице 10 утверждается, что RD с десятичной дробью называется моментом, а функция moment-from-jd принимает число с плавающей запятой в качестве аргумента и возвращает аргумент минус 1721424,5; нет возможности учесть смещение часового пояса в качестве аргумента.
Функция DATE компьютерного языка REXX может возвращать количество полных дней (то есть не включая текущий день), начиная с базовой даты, 1 января 1 года нашей эры по пролептическому григорианскому календарю, если указана опция «База». Эта функция использует местное, а не гринвичское время. REXX не использует название «Rata Die».
См. также
[править | править код]Примечания
[править | править код]- ↑ Reingold, Edward[англ.]; Dershowitz, Nachum[англ.]. Calendrical Calculations (англ.). — 3rd. — Cambridge University Press, 2008. — P. chapter 1.2. — ISBN 0-521-70238-0. Архивировано 5 февраля 2019 года. (англ.)