We give a unified algorithmic presentation for more than 30 calendars of
current and historical interest: the Gregorian (current civil), ISO
(International Organization for Standardization), Egyptian (and nearly
identical Armenian), Julian (old civil), Coptic, Ethiopic, Islamic (Moslem)
arithmetic and observational, modern Persian (both astronomical and arithmetic
forms), Bahai (both present and future forms), Hebrew (Jewish) standard and
observational, Mayan (long count, haab, and tzolkin) and two almost identical
Aztec, Balinese Pawukon, French Revolutionary (both astronomical and
arithmetic forms), Chinese (and nearly identical Japanese, Korean, and
Vietnamese), old Hindu (solar and lunisolar), Hindu (solar and lunisolar),
Hindu astronomical, and Tibetan. Easy conversion among these calendars is a
natural outcome of the approach, as is the determination of secular and
religious holidays. Calculations of lunar phases, solstices, equinoxes,
sunrise, and sunset are described as well.
Tables for easy conversion of fifteen different calendars. Ten
calendars are given explicitly (Gregorian, ISO, Hebrew, Chinese, Coptic,
Ethiopic, Persian, Hindu lunar, Hindu solar, and Islamic); another five are
easily obtained from the tables with minimal arithmetic (JD, RD, Julian,
arithmetic Islamic, and arithmetic Persian).
Bresenham's algorithm minimizes error in drawing lines on integer grid
points; leap year calculations, surprisingly, are a generalization. We
compare the two calculations, and show how to compute directly, without
iteration, individual points of a Bresenham line. We also discuss an
unexpected connection of the leap year/line pattern with Euclid's algorithm
for computing the greatest common divisor.
(PDF; 13 pages)
Hebrew Dating
By Nachum Dershowitz and Edward M. Reingold
The 24th IAJGS International Conference on Jewish Genealogy,
Jerusalem, July 4-9, 2004.
Ancient Indian Leaps in the Advent of Mathematics
edited by B. S. Yadav and M. Mohan, Birkhauser, 2011
We analyze various Indian calendars. We discuss the Indian day count, a
generic solar calendar that generalizes various calendars including the mean
Indian solar calendar, the true and astronomical Indian solar calendars, a
generic lunisolar calendar that generalizes the Indian version, and the true
and astronomical Indian lunisolar calendars. We also discuss aspects of the
traditional Indian calculation of the time of sunrise and the determination of
lunisolar holidays.
(PDF; 31 pages)
The following material is now way out of date, having
been superseded by the book above.
A unified algorithmic presentation for 25 calendars of current and
historical interest: the Gregorian (current civil), ISO (International
Organization for Standardization), Egyptian (and nearly identical Armenian),
Julian (old civil), Coptic, Ethiopic, Islamic (Moslem), modern Persian (both
astronomical and arithmetic forms), Bahai (both present and future
forms), Hebrew (Jewish), Mayan (long count, haab, and tzolkin), Balinese
Pawukon, French Revolutionary (both astronomical and arithmetic forms),
Chinese (and nearly identical Japanese), old Hindu (solar and lunisolar), and
modern Hindu (solar and lunisolar). Easy conversion among these calendars is
a natural outcome of the approach, as is the determination of secular and
religious holidays. Calculations of lunar phases, solstices, equinoxes,
sunrise, and sunset are described as well.
A unified, algorithmic presentation is given for the Gregorian (current
civil), ISO, Julian (old civil), Islamic (Moslem), Hebrew (Jewish), Persian,
Coptic, Ethiopic, Bahai, Mayan, French Revolutionary, Chinese, and Hindu
calendars. Easy conversion among these calendars is a byproduct of the
approach, as is the determination of secular and religious holidays.
Calculations of lunar phases, solstices, equinoxes, sunrise, and sunset are
described as well.
Birashkname (Musa Akrami, editor),
University of Shahid Beheshti, 1998
In this note we describe a unified implementation of calendars whose year
is based on the astronomical solar cycle--that is, on the precise solar
longitude at a specified time. For example, the astronomical Persian calendar
begins its new year on the day when the vernal equinox (approximately March
21) occurs before apparent noon (the middle point of the day, not clock time)
and is postponed to the next day if the equinox is after apparent noon. Other
calendars of this type include the French Revolutionary calendar and the
future form of the Bahai calendar. Our approach also offers a slight
simplification to the implementation of the Chinese lunisolar calendar.
(PDF; 7 pages)
Software-Practice and Experience20 (1990), 899-928
A unified, algorithmic presentation is given for the Gregorian (current
civil), ISO, Julian (old civil), Islamic (Moslem), and Hebrew (Jewish)
calendars. Easy conversion among these calendars is a byproduct of the
approach, as is the determination of secular and religious holidays.
(PDF; 30 pages)