CALPAK
Calendar Calculations
CALPAK
is a C++ library which
computes various simple calendrical quantities.
These include converting
from day-number/year to day/month/year format, calculating the time
difference between two dates, finding the day of the week of a given date,
and other feats.
Some common methods of marking the date include:
-
JED, the Julian Ephemeris Date, a count of days since
a long time ago;
-
YMD, for "year, month, day";
-
YJ, for "year, day number".
While there have been many calendars over the years, it
is instructive to contemplate just the crazy story of our
current "common" calendar. To this day, people disagree about
whether there was a year 0, although the Julian calendar
was a Roman invention, and Dionysius Exiguus, who gets the
blame for shifting the Julian calendar's starting date to
the birth year of Christ four hundred years afterwards, didn't
have an accurate idea of when that was.
There was a
controversial shift from the Julian to the Gregorian calendar,
which took place piecemeal throughout the Catholic
world, with several countries actually switching back and
forth more than once, and with England holding out on the
old system until after George Washington was born (which
means he was born on February 11 AND February 22).
People didn't agree on when the year started, so that January and
February, in particular, were a little murky about which
year they belonged to, and the year sometimes started
around March 22, near the vernal equinox.
There are a number of side issues, including
-
determining the day of the week of a given date;
-
determining the number of days between two dates;
-
the computation of the date of certain holidays;
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
CALPAK is available in
a C++ version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
ANALEMMA,
a C program which
evaluates the equation of time, a formula for the difference between
the uniform 24 hour day and the actual position of the sun,
by Brian Tung.
CALENDAR_NYT,
a FORTRAN90 library which
shows the correspondence between dates and the New York Times volume and
issue number;
CALENDAR_RD,
a C++ program which
computes the representation of a given date in a
number of calendrical systems,
by Edward Reingold and Nachum Dershowitz
DATES,
a dataset directory which
contains lists of dates in various calendar systems.
DOOMSDAY,
a C++ library which
is given the year, month and day of a date, and uses
John Conway's doomsday algorithm to determine the corresponding day of the week.
WEEKDAY,
a C++ library which
determines the day of the week for a given day.
Reference:
-
Anonymous,
A Correction; Welcome to 51,254,
The New York Times,
01 January 2000, Volume 149, Issue 51254.
-
James Barron,
What's in a Number? 143 Years of News,
The New York Times,
14 March 1995, Volume 144, Issue 50000.
-
Bonnie Blackburn, Leofranc Holford-Stevens,
The Oxford Companion to the Year,
Oxford, 1999,
ISBN: 0192142313,
LC: CE73.B553.
-
Lewis Carroll (Charles Dodgson),
To Find the Day of the Week for Any Given Date,
Nature, 31 March 1887.
-
John Conway,
Tomorrow is the Day After Doomsday,
Eureka,
Volume 36, October 1973, pages 28-31.
-
Peter Duffett-Smith,
Practical Astronomy With Your Calculator,
Third Edition,
Cambridge University Press, 1996,
ISBN: 0-521-35699-7,
LC: QB62.5.D83.
-
Donald Knuth,
The Art of Computer Programming,
Volume 1, Fundamental Algorithms,
Third Edition,
Addison-Wesley, 1997,
ISBN: 0201896834,
LC: QA76.6.K64.
-
Donald Knuth,
The Calculation of Easter,
Communications of the ACM,
Volume 5, Number 4, April 1962, pages 209-210.
-
Gary Meisters,
Lewis Carroll's Day-of-the-Week Algorithm,
Math Horizons,
November 2002, pages 24-25.
-
Lance Latham,
Standard C Date/Time Library,
Programming the World's Calendars and Clocks,
Miller Freeman, 1998,
ISBN: 0-87930-496-0.
-
The New York Times,
Page One, 1896-1996, A Special Commemorative Edition Celebrating the
100th Anniversary of the Purchase of the New York Times by Adolph S Ochs,
Galahad Books, 1996,
ISBN: 0-88365-961-1,
LC: D411.P25.
-
The New York Times,
The Complete First Pages, 1851-2008,
Black Dog & Leventhal Publishers, 2008,
ISBN13: 978-1-57912-749-7,
LC: D351.N53.
-
Thomas OBeirne,
Puzzles and Paradoxes,
Oxford University Press, 1965,
LC: QA95.O2.
-
Frank Parise, editor,
The Book of Calendars,
Gorgias, 2002,
ISBN: 1931956766,
LC: CE11.K4.
-
William Press, Brian Flannery, Saul Teukolsky, William Vetterling,
Numerical Recipes in FORTRAN: The Art of Scientific Computing,
Second Edition,
Cambridge University Press, 1992,
ISBN: 0-521-43064-X,
LC: QA297.N866.
-
Edward Reingold, Nachum Dershowitz,
Calendrical Calculations: The Millennium Edition,
Cambridge University Press, 2001,
ISBN: 0-521-77752-6,
LC: CE12.R45.
-
Edward Reingold, Nachum Dershowitz,
Calendrical Calculations I,
Software - Practice and Experience,
Volume 20, Number 9, September 1990, pages 899-928.
-
Edward Reingold, Nachum Dershowitz, Stewart Clamen,
Calendrical Calculations, II: Three Historical Calendars,
Software - Practice and Experience,
Volume 23, Number 4, pages 383-404, April 1993.
-
Edward Richards,
Mapping Time, The Calendar and Its History,
Oxford, 1999,
ISBN: 0-19-850413-6,
LC: CE11.R5.
-
Ian Stewart,
Easter is a Quasicrystal,
Scientific American,
Volume 284, Number 3, March 2001, pages 80-83.
-
Daniel Zwillinger, editor,
CRC Standard Mathematical Tables and Formulae,
30th Edition,
CRC Press, 1996,
ISBN: 0-8493-2479-3,
LC: QA47.M315.
Source Code:
Examples and Tests:
List of Routines:
-
CWS_TO_JED_GPS converts a GPS CWS date to a JED.
-
DATENUM_TO_JED converts a MATLAB date number to a JED.
-
DAY_BORROW_ALEXANDRIAN borrows days from months in an Alexandrian date.
-
DAY_BORROW_COMMON borrows days from months in a Common date.
-
DAY_BORROW_EG_CIVIL borrows days from months in an Egyptian Civil date.
-
DAY_BORROW_ENGLISH borrows days from months in an English date.
-
DAY_BORROW_GREGORIAN borrows days from months in a Gregorian date.
-
DAY_BORROW_HEBREW borrows days from months in a Hebrew date.
-
DAY_BORROW_ISLAMIC borrows days from months in an Islamic date.
-
DAY_BORROW_JULIAN borrows days from months in a Julian date.
-
DAY_BORROW_REPUBLICAN borrows days from months in a Republican date.
-
DAY_BORROW_ROMAN borrows days from months in a Roman date.
-
DAY_CARRY_ALEXANDRIAN carries days to months in an Alexandrian date.
-
DAY_CARRY_COMMON carries days to months in a Common date.
-
DAY_CARRY_EG_CIVIL carries days to months in an Egyptian Civil date.
-
DAY_CARRY_ENGLISH carries days to months in an English date.
-
DAY_CARRY_GREGORIAN carries days to months in a Gregorian date.
-
DAY_CARRY_HEBREW carries days to months in a Hebrew date.
-
DAY_CARRY_ISLAMIC carries days to months in an Islamic date.
-
DAY_CARRY_JULIAN carries days to months in a Julian date.
-
DAY_CARRY_REPUBLICAN carries days to months in a Republican date.
-
DAY_CARRY_ROMAN carries days to months in a Roman date.
-
DAY_LIST_COMMON prints a list of days between two dates.
-
DAYS_BEFORE_MONTH_COMMON returns the number of days before a Common month.
-
DAYS_BEFORE_MONTH_GREGORIAN returns the number of days before a Gregorian month.
-
DAYS_BEFORE_MONTH_JULIAN returns the number of days before a Julian month.
-
DEFLATE_COMMON "deflates" dates in the Common Calendar transition month.
-
DEFLATE_ENGLISH "deflates" dates in the English Calendar transition month.
-
DIGIT_TO_CH returns the base 10 digit character corresponding to a digit.
-
EASTER_DS computes the month and day of Easter for a Common year.
-
EASTER_EGR computes the month and day of Easter for a Common year.
-
EASTER_EGR2 computes the month and day of Easter for a Common year.
-
EASTER_JULIAN computes the date of Easter in the Julian calendar.
-
EPOCH_TO_JED_AKBAR returns the epoch of the Akbar calendar as a JED.
-
EPOCH_TO_JED_ALEXANDRIAN: epoch of the Alexandrian calendar as a JED.
-
EPOCH_TO_JED_ARMENIAN returns the epoch of the Armenian calendar as a JED.
-
EPOCH_TO_JED_BAHAI returns the epoch of the Bahai calendar as a JED.
-
EPOCH_TO_JED_BESSEL returns the epoch of the Bessel calendar as a JED.
-
EPOCH_TO_JED_CHINESE returns the epoch of the Chinese calendar as a JED.
-
EPOCH_TO_JED_COMMON returns the epoch of the Common calendar as a JED.
-
EPOCH_TO_JED_COPTIC returns the epoch of the Coptic calendar as a JED.
-
EPOCH_TO_JED_DECCAN returns the epoch of the Fasli Deccan calendar as a JED.
-
EPOCH_TO_JED_EG_CIVIL: epoch of the Egyptian Civil calendar as a JED.
-
EPOCH_TO_JED_EG_LUNAR: epoch of the Egyptian Lunar calendar as a JED.
-
EPOCH_TO_JED_ENGLISH returns the epoch of the English calendar as a JED.
-
EPOCH_TO_JED_ETHIOPIAN returns the epoch of the Ethiopian calendar as a JED.
-
EPOCH_TO_JED_GPS returns the epoch of the GPS calendar as a JED.
-
EPOCH_TO_JED_GREEK returns the epoch of the Greek calendar as a JED.
-
EPOCH_TO_JED_GREGORIAN returns the epoch of the Gregorian calendar as a JED.
-
EPOCH_TO_JED_HEBREW returns the epoch of the Hebrew calendar as a JED.
-
EPOCH_TO_JED_HINDU_LUNAR: epoch of the Hindu lunar calendar as a JED.
-
EPOCH_TO_JED_HINDU_SOLAR: epoch of the Hindu solar calendar as a JED.
-
EPOCH_TO_JED_ISLAMIC_A returns the epoch of the Islamic A calendar as a JED.
-
EPOCH_TO_JED_ISLAMIC_B returns the epoch of the Islamic B calendar as a JED.
-
EPOCH_TO_JED_JED returns the epoch of the JED as a JED.
-
EPOCH_TO_JED_JELALI returns the epoch of the Jelali calendar as a JED.
-
EPOCH_TO_JED_JULIAN returns the epoch of the Julian calendar as a JED.
-
EPOCH_TO_JED_KHWARIZMIAN: epoch of the Khwarizmian calendar as a JED.
-
EPOCH_TO_JED_MACEDONIAN: epoch of the Macedonian calendar as a JED.
-
EPOCH_TO_JED_MATLAB: epoch of the "MATLAB calendar" as a JED.
-
EPOCH_TO_JED_MAYAN_LONG: epoch of the Mayan long count calendar as a JED.
-
EPOCH_TO_JED_MJD returns the epoch of the MJD calendar as a JED.
-
EPOCH_TO_JED_NYT returns the epoch of the NYT calendar as a JED.
-
EPOCH_TO_JED_PERSIAN returns the epoch of the Persian calendar as a JED.
-
EPOCH_TO_JED_PERSIAN_SOLAR: epoch of the Persian solar calendar as a JED.
-
EPOCH_TO_JED_RD returns the epoch of the RD calendar as a JED.
-
EPOCH_TO_JED_REPUBLICAN: epoch of the Republican calendar as a JED.
-
EPOCH_TO_JED_ROMAN returns the epoch of the Roman calendar as a JED.
-
EPOCH_TO_JED_SAKA returns the epoch of the Saka calendar as a JED.
-
EPOCH_TO_JED_SOOR_SAN: epoch of the Fasli Soor San calendar as a JED.
-
EPOCH_TO_JED_SYRIAN returns the epoch of the Syrian calendar as a JED.
-
EPOCH_TO_JED_UNIX returns the epoch of the UNIX calendar as a JED.
-
EPOCH_TO_JED_Y2K returns the epoch of the Y2K calendar as a JED.
-
EPOCH_TO_JED_ZOROASTRIAN: epoch of the Zoroastrian calendar as a JED.
-
FRAC_BORROW_COMMON borrows fractions from days in a Common YMDF date.
-
FRAC_BORROW_ENGLISH borrows fractions from days in an English YMDF date.
-
FRAC_BORROW_GREGORIAN borrows fractions from days in a Gregorian YMDF date.
-
FRAC_BORROW_HEBREW borrows fractions from days in a Hebrew YMDF date.
-
FRAC_BORROW_ISLAMIC borrows fractions from days in an Islamic YMDF date.
-
FRAC_BORROW_JULIAN borrows fractions from days in a Julian YMDF date.
-
FRAC_BORROW_REPUBLICAN borrows fractions from days in a Republican YMDF date.
-
FRAC_BORROW_ROMAN borrows fractions from days in a Roman YMDF date.
-
FRAC_CARRY_COMMON carries fractions from days in a Common YMDF date.
-
FRAC_CARRY_ENGLISH carries fractions from days in an English YMDF date.
-
FRAC_CARRY_GREGORIAN carries fractions from days in a Gregorian YMDF date.
-
FRAC_CARRY_HEBREW carries fractions from days in a Hebrew YMDF date.
-
FRAC_CARRY_ISLAMIC carries fractions from days in an Islamic YMDF date.
-
FRAC_CARRY_JULIAN carries fractions from days in a Julian YMDF date.
-
FRAC_CARRY_REPUBLICAN carries fractions from days in a Republican YMDF date.
-
FRAC_CARRY_ROMAN carries fractions from days in a Roman YMDF date.
-
FRAC_TO_HMS converts a fractional day into hours, minutes, seconds.
-
HOUR_BORROW_COMMON "borrows" a day of hours.
-
HOUR_CARRY_COMMON is given a YMDH date, and carries hours to days.
-
I4_MAX returns the maximum of two I4's.
-
I4_MIN returns the minimum of two I4's.
-
I4_MODP returns the nonnegative remainder of I4 division.
-
I4_SWAP switches two I4's.
-
I4_TO_A returns the I-th alphabetic character.
-
I4_WRAP forces an I4 to lie between given limits by wrapping.
-
INFLATE_COMMON "inflates" dates in the Common Calendar transition month.
-
INFLATE_ENGLISH "inflates" dates in the English Calendar transition month.
-
J_BORROW_COMMON borrows year-days from years in a Common date.
-
J_BORROW_ENGLISH borrows year-days from years in an English date.
-
J_BORROW_GREGORIAN borrows year-days from years in a Gregorian date.
-
J_BORROW_HEBREW borrows year-days from years in a Hebrew date.
-
J_BORROW_ISLAMIC borrows year-days from years in an Islamic date.
-
J_BORROW_JULIAN borrows year-days from years in a Julian date.
-
J_BORROW_REPUBLICAN borrows year-days from years in a Republican date.
-
J_BORROW_ROMAN borrows year-days from years in a Roman date.
-
J_CARRY_COMMON carries year-days to years in a Common date.
-
J_CARRY_ENGLISH carries year-days to years in an English date.
-
J_CARRY_GREGORIAN carries year-days to years in a Gregorian date.
-
J_CARRY_HEBREW carries year-days to years in a Hebrew date.
-
J_CARRY_ISLAMIC carries year-days to years in an Islamic date.
-
J_CARRY_JULIAN carries year-days to years in a Julian date.
-
J_CARRY_REPUBLICAN carries year-days to years in a Republican date.
-
J_CARRY_ROMAN carries year-days to years in a Roman date.
-
JED_CHECK checks a Julian Ephemeris Date.
-
JED_TEST returns some "interesting" JED's.
-
JED_TO_CWS_GPS converts a JED to a GPS CWS date.
-
JED_TO_DATENUM converts a JED to a MATLAB date number.
-
JED_TO_MAYAN_LONG converts a JED to a Mayan long count date.
-
JED_TO_MAYAN_ROUND converts a JED to a Mayan round date.
-
JED_TO_MJD converts a JED to a modified JED.
-
JED_TO_NEAREST_NOON converts a JED to the JED of the nearest noon.
-
JED_TO_NEXT_NOON converts a JED to the JED of the next noon.
-
JED_TO_RD converts a JED to an RD.
-
JED_TO_SS_UNIX converts a JED to a UNIX SS date.
-
JED_TO_WEEKDAY computes the day of the week from a JED.
-
JED_TO_YEAR_HEBREW: the year in the Hebrew calendar when a JED occurred.
-
JED_TO_YEARCOUNT_BESSEL converts a JED to Bessel year count.
-
JED_TO_YEARCOUNT_JULIAN converts a JED to a Julian year count.
-
JED_TO_YJF_COMMON converts a JED to a Common YJF date.
-
JED_TO_YJF_ENGLISH converts a JED to an English YJF date.
-
JED_TO_YJF_GREGORIAN converts a JED to a Gregorian YJF date.
-
JED_TO_YJF_HEBREW converts a JED to a Hebrew YJF date.
-
JED_TO_YJF_ISLAMIC_A converts a JED to an Islamic-A YJF date.
-
JED_TO_YJF_ISLAMIC_B converts a JED to an Islamic-B YJF date.
-
JED_TO_YJF_JULIAN converts a JED to a Julian YJF date.
-
JED_TO_YJF_REPUBLICAN converts a JED to a Republican YJF date.
-
JED_TO_YJF_ROMAN converts a JED to a Roman YJF date.
-
JED_TO_YMDF_ALEXANDRIAN converts a JED to an Alexandrian YMDF date.
-
JED_TO_YMDF_ARMENIAN converts a JED to an Armenian YMDF date.
-
JED_TO_YMDF_BAHAI converts a JED to a Bahai YMDF date.
-
JED_TO_YMDF_COMMON converts a JED to a Common YMDF date.
-
JED_TO_YMDF_COPTIC converts a JED to a Coptic YMDF date.
-
JED_TO_YMDF_EG_CIVIL converts a JED to an Egyptian Civil YMDF date.
-
JED_TO_YMDF_EG_LUNAR converts a JED to an Egyptian Lunar YMDF date.
-
JED_TO_YMDF_ENGLISH converts a JED to an English YMDF date.
-
JED_TO_YMDF_ETHIOPIAN converts a JED to an Ethiopian YMDF date.
-
JED_TO_YMDF_GREGORIAN2 converts a JED to a Gregorian YMDF date.
-
JED_TO_YMDF_HEBREW converts a JED to a Hebrew YMDF date.
-
JED_TO_YMDF_HINDU_SOLAR converts a JED to a Hindu solar YMDF date.
-
JED_TO_YMDF_ISLAMIC_A converts a JED to an Islamic A YMDF date.
-
JED_TO_YMDF_ISLAMIC_B converts a JED to an Islamic B YMDF date.
-
JED_TO_YMDF_JELALI converts a JED to a Jelali YMDF date.
-
JED_TO_YMDF_JULIAN converts a JED to a Julian YMDF date.
-
JED_TO_YMDF_JULIAN2 converts a JED to a Julian YMDF date.
-
JED_TO_YMDF_JULIAN3 converts a JED to a Julian YMDF date.
-
JED_TO_YMDF_KHWARIZMIAN converts a JED to a Khwarizmian YMDF date.
-
JED_TO_YMDF_MACEDONIAN converts a JED to a Macedonian YMDF date.
-
JED_TO_YMDF_PERSIAN converts a JED to a Persian YMDF date.
-
JED_TO_YMDF_REPUBLICAN converts a JED to a Republican YMDF date.
-
JED_TO_YMDF_ROMAN converts a JED to a Roman YMDF date.
-
JED_TO_YMDF_SAKA converts a JED to a Saka YMDF date.
-
JED_TO_YMDF_SOOR_SAN converts a JED to a Soor San YMDF date.
-
JED_TO_YMDF_SYRIAN converts a JED to a Syrian YMDF date.
-
JED_TO_YMDF_ZOROASTRIAN converts a JED to a Zoroastrian YMDF date.
-
MAYAN_LONG_TO_JED converts a Mayan long count date to a JED.
-
MAYAN_ROUND_TO_JED converts a Mayan round date to a JED.
-
MINUTE_BORROW_COMMON "borrows" an hour of minutes in a Common date.
-
MINUTE_CARRY_COMMON: given a Common YMDHMS date, carries minutes to hours.
-
MJD_TO_JED converts a modified JED to a JED.
-
MONTH_BORROW_ALEXANDRIAN borrows a year of months on Alexandrian calendar.
-
MONTH_BORROW_BAHAI borrows a year of months on the Bahai calendar.
-
MONTH_BORROW_COMMON borrows a year of months on the Common calendar.
-
MONTH_BORROW_EG_CIVIL borrows a year of months on Egyptian Civil calendar.
-
MONTH_BORROW_ENGLISH borrows a year of months on the English calendar.
-
MONTH_BORROW_GREGORIAN borrows a year of months on the Gregorian calendar.
-
MONTH_BORROW_HEBREW borrows a year of months on the Hebrew calendar.
-
MONTH_BORROW_ISLAMIC borrows a year of months on the Islamic calendar.
-
MONTH_BORROW_JULIAN borrows a year of months on the Julian calendar.
-
MONTH_BORROW_REPUBLICAN borrows a year of months on the Republican calendar.
-
MONTH_BORROW_ROMAN borrows a year of months on the Roman calendar.
-
MONTH_CARRY_ALEXANDRIAN carries a year of months on the Alexandrian calendar.
-
MONTH_CARRY_BAHAI carries a year of months on the Bahai calendar.
-
MONTH_CARRY_COMMON carries a year of months on the Common calendar.
-
MONTH_CARRY_EG_CIVIL carries a year of months on the Egyptian Civil calendar.
-
MONTH_CARRY_ENGLISH carries a year of months on the English calendar.
-
MONTH_CARRY_GREGORIAN carries a year of months on the Gregorian calendar.
-
MONTH_CARRY_HEBREW carries a year of months on the Hebrew calendar.
-
MONTH_CARRY_ISLAMIC carries a year of months on the Islamic calendar.
-
MONTH_CARRY_JULIAN carries a year of months on the Julian calendar.
-
MONTH_CARRY_REPUBLICAN carries a year of months on the Republican calendar.
-
MONTH_CARRY_ROMAN carries a year of months on the Roman calendar.
-
MONTH_LENGTH_ALEXANDRIAN returns the number of days in an Alexandrian month.
-
MONTH_LENGTH_BAHAI returns the number of days in a Bahai month.
-
MONTH_LENGTH_COMMON returns the number of days in a Common month.
-
MONTH_LENGTH_COPTIC returns the number of days in a Coptic month.
-
MONTH_LENGTH_EG_CIVIL returns the number of days in an Egyptian Civil month.
-
MONTH_LENGTH_EG_LUNAR returns the number of days in an Egyptian Lunar month.
-
MONTH_LENGTH_ENGLISH returns the number of days in an English month.
-
MONTH_LENGTH_ETHIOPIAN returns the number of days in an Ethiopian month.
-
MONTH_LENGTH_GREEK returns the number of days in a Greek month.
-
MONTH_LENGTH_GREGORIAN returns the number of days in a Gregorian month.
-
MONTH_LENGTH_HEBREW returns the number of days in a Hebrew month.
-
MONTH_LENGTH_HINDU_SOLAR returns the number of days in a Hindu solar month.
-
MONTH_LENGTH_IRANIAN returns the number of days in an Iranian month.
-
MONTH_LENGTH_ISLAMIC returns the number of days in an Islamic month.
-
MONTH_LENGTH_JULIAN returns the number of days in a Julian month.
-
MONTH_LENGTH_LUNAR returns the number of days in a lunar month.
-
MONTH_LENGTH_PERSIAN returns the number of days in a Persian month.
-
MONTH_LENGTH_REPUBLICAN returns the number of days in a Republican month.
-
MONTH_LENGTH_ROMAN returns the number of days in a Roman month.
-
MONTH_LENGTH_SYNODIC returns the mean synodic month length.
-
MONTH_TO_MONTH_NAME_COMMON returns the name of a Common month.
-
MONTH_TO_MONTH_NAME_COMMON3 returns the abbreviated name of a Common month.
-
MONTH_TO_NONES_ROMAN returns the day of the nones of a Roman month.
-
MOTHERS_DAY computes the date of Mother's Day (US) for a Common year.
-
NEW_YEAR_TO_JED_HEBREW returns the JED of the beginning of a Hebrew year.
-
NOW_TO_JED expresses the current date as JED.
-
NOW_TO_YJF_COMMON expresses the current date as a Common YJF date.
-
NOW_TO_YMDF_COMMON expresses the current date as a Common YMDF date.
-
NOW_TO_YMDHMS_COMMON expresses the current date as a Common YMDHMS date.
-
NYT_TO_JED converts an NYT date to a JED.
-
NYT_TO_YMD converts an NYT date to a YMD date.
-
R8_ABS returns the absolute value of an R8.
-
R8_MOD returns the remainder of R8 division.
-
R8_NINT returns the nearest integer to an R8.
-
R8_SWAP switches two R8's.
-
R8_UNIFORM returns a scaled pseudorandom R8.
-
RD_TO_JED converts an RD to a JED.
-
SECOND_BORROW_COMMON "borrows" a minute of seconds in a common date.
-
SECOND_CARRY_COMMON: given a Common YMDHMS date, carries seconds to minutes.
-
SS_TO_JED_UNIX converts a UNIX SS date to a JED.
-
THANKSGIVING_CANADA computes Canadian Thanksgiving for a Common year.
-
TIMESTAMP prints the current YMDHMS date as a time stamp.
-
TRANSITION_TO_JED_COMMON returns the Common calendar transition as a JED.
-
TRANSITION_TO_JED_ENGLISH returns the English calendar transition as a JED.
-
TRANSITION_TO_JED_JED returns the JED calendar transition as a JED.
-
TRANSITION_TO_JED_MAYAN_LONG: Mayan long count calendar transition as a JED.
-
WEEKDAY_CHECK_COMMON makes sure the Common weekday number is between 1 and 7.
-
WEEKDAY_TO_NAME_BAHAI returns the name of a Bahai weekday.
-
WEEKDAY_TO_NAME_COMMON returns the name of a Common weekday.
-
WEEKDAY_TO_NAME_COMMON2 returns the abbreviated name of a Common weekday.
-
WEEKDAY_TO_NAME_COMMON3 returns the abbreviated name of a Common weekday.
-
Y_ASTRONOMICAL_TO_COMMON converts an Astronomical year to a Common year.
-
Y_CHECK_ALEXANDRIAN checks an Alexandrian year.
-
Y_CHECK_BAHAI checks a Bahai year.
-
Y_CHECK_COMMON checks a Common year.
-
Y_CHECK_EG_CIVIL checks an Egyptian Civil year.
-
Y_CHECK_ENGLISH checks an English year.
-
Y_CHECK_GREEK checks a Greek year.
-
Y_CHECK_GREGORIAN checks a Gregorian year.
-
Y_CHECK_HEBREW checks a Hebrew year.
-
Y_CHECK_ISLAMIC checks an Islamic year.
-
Y_CHECK_JULIAN checks a Julian year.
-
Y_CHECK_REPUBLICAN checks a Republican year.
-
Y_CHECK_ROMAN checks a Roman year.
-
Y_COMMON_TO_ASTRONOMICAL converts a Common year to an Astronomical year.
-
Y_JULIAN_TO_ROMAN converts a Julian year to a Roman year.
-
Y_ROMAN_TO_JULIAN converts a Roman year to a Julian year.
-
Y_TO_S_COMMON writes a Common year into a string.
-
YEAR_IS_EMBOLISMIC_EG_LUNAR: TRUE if the Egyptian Lunar year was embolismic.
-
YEAR_IS_EMBOLISMIC_GREEK returns TRUE if the Greek year was embolismic.
-
YEAR_IS_EMBOLISMIC_HEBREW returns TRUE if the Hebrew year was embolismic.
-
YEAR_IS_LEAP_ALEXANDRIAN: TRUE if the Alexandrian year was a leap year.
-
YEAR_IS_LEAP_BAHAI returns TRUE if the Bahai year was a leap year.
-
YEAR_IS_LEAP_COMMON returns TRUE if the Common year was a leap year.
-
YEAR_IS_LEAP_COPTIC returns TRUE if the Coptic year was a leap year.
-
YEAR_IS_LEAP_EG_LUNAR: TRUE if the Egyptian Lunar year was a leap year.
-
YEAR_IS_LEAP_ENGLISH returns TRUE if the English year was a leap year.
-
YEAR_IS_LEAP_ETHIOPIAN returns TRUE if the Ethiopian year was a leap year.
-
YEAR_IS_LEAP_GREEK returns TRUE if the Greek year was a leap year.
-
YEAR_IS_LEAP_GREGORIAN returns TRUE if the Gregorian year was a leap year.
-
YEAR_IS_LEAP_IRANIAN returns TRUE if the Iranian year was a leap year.
-
YEAR_IS_LEAP_ISLAMIC returns TRUE if the Islamic year was a leap year.
-
YEAR_IS_LEAP_JULIAN returns TRUE if the Julian year was a leap year.
-
YEAR_IS_LEAP_PERSIAN returns TRUE if the Persian year was a leap year.
-
YEAR_IS_LEAP_REPUBLICAN returns TRUE if the Republican year was a leap year.
-
YEAR_IS_LEAP_ROMAN returns TRUE if the Roman year was a leap year.
-
YEAR_LENGTH_ALEXANDRIAN returns the number of days in an Alexandrian year.
-
YEAR_LENGTH_BAHAI returns the number of days in a Bahai year.
-
YEAR_LENGTH_COMMON returns the number of days in a Common year.
-
YEAR_LENGTH_COPTIC returns the number of days in a Coptic year.
-
YEAR_LENGTH_EG_CIVIL returns the number of days in an Egyptian Civil year.
-
YEAR_LENGTH_EG_LUNAR returns the number of days in an Egyptian lunar year.
-
YEAR_LENGTH_ENGLISH returns the number of days in an English year.
-
YEAR_LENGTH_ETHIOPIAN returns the number of days in an Ethiopian year.
-
YEAR_LENGTH_GREEK returns the number of days in a Greek year.
-
YEAR_LENGTH_GREGORIAN returns the number of days in a Greegorian year.
-
YEAR_LENGTH_HEBREW returns the number of days in a Hebrew year.
-
YEAR_LENGTH_HINDU_SOLAR returns the number of days in a Hindu solar year.
-
YEAR_LENGTH_ISLAMIC returns the number of days in an Islamic year.
-
YEAR_LENGTH_JULIAN returns the number of days in a Julian year.
-
YEAR_LENGTH_LUNAR returns the number of days in a "lunar year".
-
YEAR_LENGTH_PERSIAN returns the number of days in a Persian year.
-
YEAR_LENGTH_REPUBLICAN returns the number of days in a Republican year.
-
YEAR_LENGTH_ROMAN returns the number of days in a Roman year.
-
YEAR_LENGTH_SOLAR returns the number of days in a "solar year".
-
YEAR_LENGTH_MONTHS_ALEXANDRIAN: number of months in an Alexandrian year.
-
YEAR_LENGTH_MONTHS_BAHAI: number of months in a Bahai year.
-
YEAR_LENGTH_MONTHS_COMMON returns the number of months in a Common year.
-
YEAR_LENGTH_MONTHS_COPTIC: number of months in a Coptic year.
-
YEAR_LENGTH_MONTHS_EG_CIVIL: number of months in an Egyptian Civil year.
-
YEAR_LENGTH_MONTHS_EG_LUNAR: number of months in an Egyptian lunar year.
-
YEAR_LENGTH_MONTHS_ENGLISH returns the number of months in an English year.
-
YEAR_LENGTH_MONTHS_ETHIOPIAN returns the number of months in an Ethiopian year.
-
YEAR_LENGTH_MONTHS_GREEK returns the number of months in a Greek year.
-
YEAR_LENGTH_MONTHS_GREGORIAN returns the number of months in a Gregorian year.
-
YEAR_LENGTH_MONTHS_HEBREW returns the number of months in a Hebrew year.
-
YEAR_LENGTH_MONTHS_HINDU_LUNAR returns the number of months in a Hindu lunar year.
-
YEAR_LENGTH_MONTHS_HINDU_SOLAR returns the number of months in a Hindu solar year.
-
YEAR_LENGTH_MONTHS_ISLAMIC returns the number of months in an Islamic year.
-
YEAR_LENGTH_MONTHS_JULIAN returns the number of months in a Julian year.
-
YEAR_LENGTH_MONTHS_PERSIAN returns the number of months in a Persian year.
-
YEAR_LENGTH_MONTHS_REPUBLICAN returns the number of months in a French Republican year.
-
YEAR_LENGTH_MONTHS_ROMAN returns the number of months in a Roman year.
-
YEAR_TO_DOMINICAL_COMMON: dominical numbers, Common calendar.
-
YEAR_TO_DOMINICAL_GREGORIAN: dominical numbers, Gregorian calendar.
-
YEAR_TO_DOMINICAL_JULIAN: dominical numbers, Julian calendar.
-
YEAR_TO_EPACT_GREGORIAN returns the epact of a Gregorian year.
-
YEAR_TO_EPACT_JULIAN returns the epact of a Julian year.
-
YEAR_TO_GOLDEN_NUMBER returns the golden number of a Common year.
-
YEAR_TO_INDICTION_COMMON returns the indiction number of a Common year.
-
YEAR_TO_SCALIGER_COMMON converts a Common year to its Scaliger indices.
-
YJ_CHECK_COMMON checks a Common YJ date.
-
YJ_CHECK_ENGLISH checks an English YJ date.
-
YJ_CHECK_GREGORIAN checks a Gregorian YJ date.
-
YJ_CHECK_HEBREW checks a Hebrew YJ date.
-
YJ_CHECK_ISLAMIC checks an Islamic YJ date.
-
YJ_CHECK_JULIAN checks a Julian YJ date.
-
YJ_CHECK_REPUBLICAN checks a Republican YJ date.
-
YJ_CHECK_ROMAN checks a Roman YJ date.
-
YJF_CHECK_COMMON normalizes a Common YJF date.
-
YJF_CHECK_ENGLISH normalizes an English YJF date.
-
YJF_COMPARE compares two YJF dates.
-
YJF_DIF_COMMON computes day difference between two Common YJF dates.
-
YJF_SWAP swaps the data defining two YJF dates.
-
YJF_TO_JED_COMMON converts a Common YJF date to a JED.
-
YJF_TO_JED_ENGLISH converts an English YJF date to a JED.
-
YJF_TO_JED_GREGORIAN converts a Gregorian YJF date to a JED.
-
YJF_TO_JED_HEBREW converts a Hebrew YJF date to a JED.
-
YJF_TO_JED_ISLAMIC_A converts an Islamic-A YJF date to a JED.
-
YJF_TO_JED_ISLAMIC_B converts an Islamic-B YJF date to a JED.
-
YJF_TO_JED_JULIAN converts a Julian YJF date to a JED.
-
YJF_TO_JED_REPUBLICAN converts a Republican YJF date to a JED.
-
YJF_TO_JED_ROMAN converts a Roman YJF date to a JED.
-
YJF_TO_YMDF_COMMON converts a Common date from YJF to YMDF format.
-
YJF_TO_YMDF_ENGLISH converts an English date from YJF to YMDF format.
-
YJF_TO_YMDF_GREGORIAN converts a Gregorian date from YJF to YMDF format.
-
YJF_TO_YMDF_HEBREW converts a YJF to YMDF date, both in the Hebrew calendar.
-
YJF_TO_YMDF_ISLAMIC: YJF to YMDF date, both in the Islamic calendar.
-
YJF_TO_YMDF_JULIAN converts a YJF to YMDF date, both in the Julian calendar.
-
YJF_TO_YMDF_REPUBLICAN: YJF to YMDF date in the Republican calendar.
-
YJF_TO_YMDF_ROMAN converts a YJF to YMDF date in the Roman calendar.
-
YJF_UNIFORM_COMMON picks a random Common YJF date between two given dates.
-
YM_CHECK_ALEXANDRIAN checks an Alexandrian YM date.
-
YM_CHECK_BAHAI checks a Bahia YM date.
-
YM_CHECK_COMMON checks a Common YM date.
-
YM_CHECK_EG_CIVIL checks an Egyptian Civil YM date.
-
YM_CHECK_ENGLISH checks an English YM date.
-
YM_CHECK_GREGORIAN checks a Gregorian YM date.
-
YM_CHECK_HEBREW checks a Hebrew YM date.
-
YM_CHECK_ISLAMIC checks an Islamic YM date.
-
YM_CHECK_JULIAN checks a Julian YM date.
-
YM_CHECK_REPUBLICAN checks a Republican YM date.
-
YM_CHECK_ROMAN checks a Roman YM date.
-
YMD_CHECK_ALEXANDRIAN checks an Alexandrian YMD date.
-
YMD_CHECK_COMMON checks a Common YMD date.
-
YMD_CHECK_EG_CIVIL checks an Egyptian Civil YMD date.
-
YMD_CHECK_ENGLISH checks an English YMD date.
-
YMD_CHECK_GREGORIAN checks a Gregorian YMD date.
-
YMD_CHECK_HEBREW checks a Hebrew YMD date.
-
YMD_CHECK_ISLAMIC checks an Islamic YMD date.
-
YMD_CHECK_JULIAN checks a Julian YMD date.
-
YMD_CHECK_REPUBLICAN checks a Republican YMD date.
-
YMD_CHECK_ROMAN checks a Roman YMD date.
-
YMDF_CHECK_COMMON checks a Common YMDF date.
-
YMDF_CHECK_JULIAN checks a Julian YMDF date.
-
YMDF_COMPARE compares two YMDF dates.
-
YMDF_NEXT_COMMON returns the Common YMDF date of the next day.
-
YMDF_TO_JED_ALEXANDRIAN converts an Alexandrian YMDF date to a JED.
-
YMDF_TO_JED_ARMENIAN converts an Armenian YMDF date to a JED.
-
YMDF_TO_JED_BAHAI converts a Bahai YMDF date to a JED.
-
YMDF_TO_JED_COMMON converts a Common YMDF date to a JED.
-
YMDF_TO_JED_COPTIC converts a Coptic YMDF date to a JED.
-
YMDF_TO_JED_EG_CIVIL converts an Egyptian Civil YMDF date to a JED.
-
YMDF_TO_JED_EG_LUNAR converts an Egyptian Lunar YMDF date to a JED.
-
YMDF_TO_JED_ENGLISH converts an English YMDF date to a JED.
-
YMDF_TO_JED_ETHIOPIAN converts an Ethiopian YMDF date to a JED.
-
YMDF_TO_JED_GREGORIAN converts a Gregorian YMDF date to a JED.
-
YMDF_TO_JED_HEBREW converts a Hebrew YMDF date to a JED.
-
YMDF_TO_JED_HINDU_SOLAR converts a Hindu solar YMDF date to a JED.
-
YMDF_TO_JED_ISLAMIC_A converts an Islamic A YMDF date to a JED.
-
YMDF_TO_JED_ISLAMIC_A2 converts an Islamic A YMDF date to a JED.
-
YMDF_TO_JED_ISLAMIC_B converts an Islamic B YMDF date to a JED.
-
YMDF_TO_JED_JELALI converts a Jelali YMDF date to a JED.
-
YMDF_TO_JED_JULIAN converts a Julian YMDF date to a JED.
-
YMDF_TO_JED_JULIAN2 converts a Julian YMDF date to a JED.
-
YMDF_TO_JED_KHWARIZMIAN converts a Khwarizmian YMDF date to a JED.
-
YMDF_TO_JED_MACEDONIAN converts a Macedonian YMDF date to a JED.
-
YMDF_TO_JED_PERSIAN converts a Persian YMDF date to a JED.
-
YMDF_TO_JED_REPUBLICAN converts a Republican YMDF date to a JED.
-
YMDF_TO_JED_ROMAN converts a Roman YMDF date to a JED.
-
YMDF_TO_JED_SAKA converts a Saka YMDF date to a JED.
-
YMDF_TO_JED_SOOR_SAN converts a Soor San YMDF date to a JED.
-
YMDF_TO_JED_SYRIAN converts a Syrian YMDF date to a JED.
-
YMDF_TO_JED_ZOROASTRIAN converts a Zoroastrian YMDF date to a JED.
-
YMDF_TO_WEEKDAY_COMMON returns the weekday of a Common YMDF date.
-
YMDF_TO_WEEKDAY_ENGLISH returns the weekday of an English YMDF date.
-
YMDF_TO_WEEKDAY_GREGORIAN returns the weekday of a Gregorian YMDF date.
-
YMDF_TO_WEEKDAY_JULIAN returns the weekday of a Julian YMDF date.
-
YMDF_TO_YJF_COMMON converts from YMDF to YJF form in the Common calendar.
-
YMDF_TO_YJF_ENGLISH converts from YMDF to YJF form in the English calendar.
-
YMDF_TO_YJF_GREGORIAN: YMDF to YJF form in the Gregorian calendar.
-
YMDF_TO_YJF_HEBREW converts from YMDF to YJF form in the Hebrew calendar.
-
YMDF_TO_YJF_ISLAMIC converts from YMDF to YJF form in the Islamic calendar.
-
YMDF_TO_YJF_JULIAN converts from YMDF to YJF form in the Julian calendar.
-
YMDF_TO_YJF_REPUBLICAN: YMDF to YJF form in the Republican calendar.
-
YMDF_TO_YJF_ROMAN converts from YMDF to YJF form in the Roman calendar.
You can go up one level to
the C++ source codes.
Last revised on 28 June 2010.