Calendar Calculation on This Website

First draft: October 2018       Last major update: April 17, 2022


The time span of calendars on this website is from 722 BCE to 2200 CE. It can be divided into seven periods: modern period (1912–2200), Qing period (1645 – 1911), middle Han to Ming period (104 BCE–1644 CE), Southern Ming and Zheng period (1645 – 1683), Qin and Early Han period (221 BCE–104 BCE), Warring States period (480 BCE–222 BCE), Spring and Autumn period (722 BCE–481 BCE). Different methods are used to generate calendars in these periods, which are described in the following sections.

For convenience, I use Ny to denote the Chinese year whose New Year day is closest to Jan. 1 in the Western year y. For example, N150 began on Feb. 15, 150 and ended on Feb. 3, 151.


Contents

  1. Modern Period (1912 – 2200)
  2. The Qing Period (1645 – 1911)
  3. Middle Han to Ming Period (104 BCE – 1644 CE)
  4. Southern Ming and Zheng Period (1645 – 1683)
  5. Qin and Early Han Period (221 BCE – 104 BCE)
  6. Warring States Period (480 BCE – 222 BCE)
  7. Spring and Autumn Period (722 BCE – 481 BCE)

       Footnotes and References


Modern Period (1912 – 2200)

In this period, I follow the rules stated by the GB/T 33661-2017 documentPMO17 mentioned in the Chinese calendar rules page to calculate the Chinese calendar and checked the results with the calendar data from the publications of the Purple Mountain Observatory. Positions of the Sun and Moon are computed based on the planetary and lunar ephemeris DE431DE431 developed by the Jet Propulsion Laboratory (JPL). JPL's DE-series ephemerides are based on numerical integration and DE431 is one of the most accurate ephemerides covering long time span.fn0 The calculation takes into account gravitational perturbations from 343 relatively large-mass asteroids. General relativistic effects are included by using dynamical equations derived from a parameterized post-Newtonian n-body metric. Additional accelerations arising from non-spherical effects of extended bodies including the Earth, Moon and Sun are also included. The DE431 ephemeris data are used to compute the geometric positions of the Sun and Moon, which are then corrected for the combined effect of light time and aberration of light. The result is the apparent geocentric positions expressed in rectangular coordinates in the International Celestial Reference System (ICRS). They are then transformed to the ecliptic coordinates of date by taking into account the frame bias matrix, precession and nutation. Precession is calculated using the precession model of Vondrák et. al.Vondrák developed in 2011. Nutation is calculated by the IAU 2000A nutation model using formulas provided by IERS Conventions (2010)IERS10 and Kaplan 2005Kaplan05. Times of moon phases and 24 solar terms are first computed in barycentric dynamical time (TDB) using the Newton-Raphson root-finding method. They are then converted to UT1+8 for years before 1972 and UTC+8 in and after 1972. The difference between TDB and TT (Terrestrial Time) is ignored since it is less than two milliseconds over several millennia. For years before 1972, values of TT-UT1 are calculated using the fitting and extrapolation formulae by Stephenson et al (2016) and Morrison et al (2021)SM16. For years between 1972 and present, TT-UTC is calculated from the published leap seconds. For years beyond 2022, approximate value of TT-UTC is estimated according to an extrapolation formula derived by Stephenson et al (2016) and Morrison et al (2021). The equation is for TT-UT1, but can be used to approximate TT-UTC since by construction |UTC-UT1| < 0.9 seconds. The mathematical detail of all these calculations is explained in this pdf file.

Previously, I used the IAU 2006 precession model to calculate precession for this website, but the IAU 2006 model is only accurate within about 1000 years from the year 2000. This website only covered 1841 – 2200 and so it was fine, but now the time span is extended to 722 BCE – 2200 CE. Even though the past Chinese calendar on this website is based on the calendar issued at that time, times of moon phases and 24 solar terms in UT1+8 calculated using the modern method are also included for reference. Thus, the IAU 2006 model is inadequate for the years before 1000 CE. The Vondrák et. al. model is an improvement over IAU 2006 and is valid within 200,000 years from 2000. I compare the times of moon phases and solar terms computed by these two precession models. I find that between 1600 and 2500 the time differences of the solar terms are no more than 0.19 seconds and the time differences of the moon phases are no more than 0.00038 seconds. Hence, we can regard the two precession models as identical in this period.

The calendar data in this period are compared with those in the book New Edition of WànniánlìPMO86 edited by the Purple Mountain Observatory and in the book Pocket Edition of 100-Year Chinese CalendarLiu93 edited by Liú Bǎolín, who had been involved in the Chinese calendar calculation in the Purple Mountain Observatory for over 40 years. The time span of New Edition of Wànniánlì is from 1840 to 2050, whereas the time span of Liú's book is from 1911 to 2010. The data in these two books agree, but Liú's book also provides the times of new moons, full moons and 24 solar terms to the nearest minute. In the books, the calendar data before 1949 were taken from the calendars issued by the Chinese government at that time. In particular, calendar data before 1912 were taken from the Shíxiàn Calendar published by the Qing dynasty government. Data from 1912 to 1928 were taken from Republic of China Calendar published by the Beiyang government of the Republic of China. Data from 1929 to 1948 were based on the Kuómín Calendar[fn1] published by the Nationalist government of the Republic of China. Data after 1948 are calculated by the Purple Mountain Observatory, which has been responsible for computing the calendar since 1949. Whenever there is a discrepancy between my calculation and the data in the books on the start day of a Chinese month (i.e. lunar conjunction day), I use the data in the books on this website. There are only three discrepancies and they all occurred before 1929. In addition to the discrepancies in the dates of lunar conjunctions, there are also discrepancies in the dates of 24 solar terms. With one exception, all the discrepancies occurred before 1929. The following two tables list all the discrepancies between 1912 and 2050.


Chinese YearChinese MonthConjunction Day*Conjunction Time (UT1+8)
N191410Nov. 17, 1914Nov. 18, 1914 at 00:02
N19161Feb. 3, 1916Feb. 4, 1916 at 00:05
N192010Nov. 10, 1920Nov. 11, 1920 at 00:05

* These dates are based on the calendars issued by the Chinese government at those times.


YearSolar TermThis websiteDate (and Time) listed in calendar at the time
1912Z10Nov. 22 (at 23:48)Nov. 23 (at 00:39)
1913Z8Sep. 23 (at 23:53)Sep. 24 (at 00:48)
1917J11Dec. 8 (at 00:01)Dec. 7 (at 23:47)
1927J8Sep. 9 (at 00:05)Sep. 8 (at 23:52)
1928Z5June 22 (at 00:06)June 21 (at 23:53)
1979Z12Jan. 20 (at 23:59:54)Jan. 21 (at 00:00)

The discrepancies before 1914 are mainly caused by the fact that the calendar at that time was calculated based on a method developed in 1742. While the method was pretty good at the time (see the next section), it is not accurate by today's standard. A more accurate method was adopted in the calendar calculation after 1913, but times were still calculated for the Beijing meridian, which was about 14 minutes earlier than the times for the meridians of 120°E. This explains the discrepancies in the years 1914, 1916, 1917, 1920, 1927 and 1928. The case in 1979 is special. My calculation indicates that the time of Z12 was only 6 seconds before Jan. 21. Using the data in the solar table in Chinese Astronomical Amlamac for the Year 1979, I calculate the time to be at 00:00:12 (UTC+8) on Jan. 21. This means that highly accurate ephemerides are required to pinpoint the exact date. Prior to 1984, positions of the Sun in most published annual astronomical almanacs (including the Chinese Astronomical Almanac edited by the PMO) were calculated based on Newcomb's Tables of the Sun, which were developed in 1895 and were accurate to about 1". It is possible that the calendar calculation at that time was based on an ephemeris of similar precision. If so, the times of 24 solar terms could be off by about 25 seconds. By comparing the times of the 24 solar terms in Liú's bookLiu93 (printed to the nearest minute) and my calculation, I find deviations of one minute occurring very frequently. No such deviations are found in the times of 24 solar terms listed in the Chinese Astronomical Almanac for 2015 (edited by the Purple Mountain Observatory). This is not surprising since the times there were computed using JPL's DE421 ephemeris. There is only a very slight difference between DE421 and DE431 within a few dozen years from 2000. In any case, none of the discrepancies listed in the table affects the days and months of the Chinese calendar.

As mentioned in the Chinese calendar rules page, times (in UTC+8) of lunar conjunctions and 24 solar terms decades from now cannot be determined very accurately because of the irregularity of Earth's rotation. In situations when the times are close to midnight, the actual dates of lunar conjunctions and solar terms may be off by one day. These situations are indicated on the relevant calendar pages. When a lunar conjunction occurs near the midnight, the predicted first day of a month may be off by one day. When a major solar term occurs near the midnight, most of the time there will be no effect on the Chinese calendar. However, if a new moon also occurs within a day from the date of the major solar term, the off-by-one-day-error could result in a different leap month. I have checked that this does not happen over the time span covered on this website. The following table lists the lunar conjunctions and solar terms from 2051–2200 that are predicted to occur close to midnight, and therefore may be off by one day.


YearPredicted Date and Time (in UTC+8) of Lunar Conjunction
2057Sep. 29 at 00:00:40
2089Sep. 4 at 23:59:11
2097Aug. 8 at 00:02
2115Feb. 24 at 23:59
2116May 12 at 23:59
2133Sep. 29 at 00:02
2165Dec. 4 at 00:00:29
2172Oct. 18 at 00:01

YearSolar TermPredicted Date and Time (in UTC+8)
2051Z2Mar. 20 at 23:59:19
2083J1Feb. 3 at 23:59:27
2084Z2Mar. 20 at 00:00:35
2114Z10Nov. 22 at 23:58
2142J8Sep. 8 at 00:00:11
2155Z9Oct. 23 at 23:58
2157Z11Dec. 21 at 23:59
2183Z2Mar. 20 at 23:59:46
2186J1Feb. 4 at 00:02

The Qing Period (1645 – 1911)

The rules for the calendar calculation in this period is basically the same as the modern rules. The only difference is that times were computed for the Beijing meridian instead of 120°E (UT1+8), and apparent solar time was used instead of the mean solar time. To reconstruct the calendar in this period, I first used the modern method to calculate the calendar and then modified the data to match the calendar issued by the Qing government. The source of the Qing calendar data are from the book New Edition of WànniánlìPMO86 and 3500 Years of Calendars and Astronomical PhenomenaZhang97. Calendar data in New Edition of Wànniánlì were taken from the Shíxiàn Calendar issued by the Qing government, but the book only covered the years starting from 1840. Calendar data in 3500 Years of Calendars and Astronomical Phenomena were computed using the calendar rules stated in the historical documents and were compared to available calendar data. Most all of the calendars issued by the government over the past 400 years or so have been preserved and so most of the data in the book should be the same as the actual calendar used in this period. I compared the data in the two books between 1840 and 1911 and didn't find any mismatch.

When comparing the calendar data calculated by the modern method and the official calendar data, I find more than 200 mismatches in this period. Even though I had to make more than 200 corrections, it was still faster than entering the data by hand. Apart from the time difference between the local apparent solar time and UT1+8, the cause of the discrepancies was largely due to the inaccuracy of the methods adopted by astronomers in the Imperial Astronomical Bureau (欽天監) in the calculation of the positions of the Sun and Moon.

Update on 2020-12-12: I created a web-based platform to calculate the solar and lunar positions as well as the times of solar terms and moon phases according to the Shixian system. It may be useful for people interested in the study of the history of Chinese astronomy in the Qing dynasty.

The astronomical method used in the almanac calculation before 1730s was developed near the end of the Ming dynasty around 1635 and was based on the astronomical model of Tycho Brahe. In the 17th century, the predicted times of two solar eclipses and one lunar eclipse were significantly different from the actual times. In 1630, Emperor Chóngzhēn (崇禎) appointed Xú Guāngqǐ (徐光啟) to organize a committee to improve the almanac. A calendar office (曆局) was created to carry out the calendar reform. It should be noted that "calendar" is not an accurate translation, since the officials in charge of making "calendar" were also required to predict various astronomcial events such as eclipses. Xú, a Catholic convert, was impressed by an eclipse prediction using Western astronomical calculation introduced by the Italian Jesuit Matteo Ricci. He decided to develop an astronomical system based on the Western astronomy. The Jesuits Nicholas Longobardi, Johann Schreck, Giacomo Rho and Johann Adam Schall von Bell were appointed to the calendar office to help to develop a new astronomical system. In 1635, Chóngzhēn Lìshū (《崇禎曆書》 or Treatises on Calendrical Astronomy of the Chóngzhēn Reign) was compiled, introducing the new system. The calendar based on this system was not adopted because of the opposition of the conservatives. Eight contests between the old and new astronomical systems were recorded to have been taken place in 10 years, involving predictions of eclipses and motions of Jupiter, Mercury and Mars. The new system defected the old system 8-0. The emperor realized the superiority of the new system and decided to adopt it. However, the Ming dynasty collapsed before the adoption was officially announced.

In 1644, the Qing government took over Beijing. The Prince-Regent Dorgon heard of the superiority of the new system. Johann Adam Schall von Bell was asked to explain the new system and the Qing government soon decided to adopt it to calculate the calendar. Schall von Bell shortened the Treatises on Calendrical Astronomy of the Chóngzhēn Reign and renamed it as Xīyáng Xīnfǎ Lìshū (《西洋新法曆書》, roughly translated to Treatises on Calendrical Astronomy Using the New Method from the West). The first calendar calculated by the new system, the Shíxiàn Calendar (時憲曆), was issued in N1645. The new system abandoned the pínqì rule (based on the mean motion of the Sun), which had been used for nearly 2000 years, in favor of the dínqì rule (based on the motion of the true Sun) in the calculation of the 24 solar terms. Positions of the Sun, Moon and planets were computed using Tycho's model.

The Qing government stopped using the Western astronomical system for the imperial calendars from N1666 to N1669 because of the Calendar CaseCC (曆獄). The calendars in this period were calculated by the Dàtǒng system, which was used in the Ming dynasty. The 24 solar terms were calculated based on the pínqì rule. Wāng Yuēzhēn (汪曰楨), a Chinese mathematician in the 19th century, explained in his book 《歷代長術輯要》(roughly translated to Compilation of Historical Calendars) that the calendar book Yù Dìng Wàn Nián Shū (《御定萬年書》 or Ten Thousand Years of Imperial Calendar, compiled in mid-18th century and revised several times later to extend the years of coverage) published by the Imperial Astronomical Bureau recomputed the solar terms in these years based on the Western system, which were different from the actual solar terms listed in the imperial calendars for these years. The calendar data in the book A Chinese calendar translated into the western calendar from 1516 to 1941[Zheng] edited by Hesheng Zheng are based on Ten Thousand Years of Imperial Calendar and so also has the solar term dates different from the imperial calendars. Looking at the data in 3500 Years of Calendars and Astronomical Phenomena, I find that the solar term dates are also based on the dínqì rule and they are the same as the dates in Zheng's book. Since I don't have access to the imperial calendars for these years, I provide two sets of calendrical solar term dates in these years on this website for reference: one based on the dates in 3500 Years of Calendars and Astronomical Phenomena, which are computed using the Western system; another based on the dates computed using the Dàtǒng system. As for the lunar conjunctions, the dates calculated using the Dàtǒng astronomical system are identical to those computed using the Western system in these years. However, the differences in the solar term dates made one leap month in these years inconsistent in the two systems: a leap month should occur after month 12 in N1669 according to the Dàtǒng system, but after month 2 in N1670 according to the Western system. This is also recorded in the official history: In 1669, the Belgian Ferdinand Verbiest was appointed as the assistant director of the Imperial Astronomical Bureau to correct mistakes in the imperial calendars made by the incompetent officials in the Bureau following the Calendar Case. He pointed out a serious mistake in the imperial calendar for N1669: the leap month was placed after month 12 when it should be after month 2 in N1670. Emperor Kangxi (康熙) ordered the Ministry of Rites (禮部) to conduct a thorough investigation. The majority of the officials in the Astronomical Bureau sided with Verbiest. The Kangxi Emperor then ordered by decree to move the leap month from after the 12th month of N1669 to after the second month of N1670 (《康熙朝實錄‧卷二十七》 or Veritable Records in the Kangxi Era, Chapter 27). Since then, the Western system was restored for the calculation of the imperial calendars and astronomical almanacs in the Qing dynasty. Therefore, there were two versions of the imperial calendar for N1669: one calculated using the old system and the other calculated using the Western system.

There were mismatches between figures and tables in Treatises on Calendrical Astronomy Using the New Method from the West. There were also many places where explanations were vague and hard to understand. In 1714, it was decided that the book needed to be revised, resulting in the compilation of Qīn Ruò Lì Shū (欽若曆書) in 1722. It was renamed as Lìxiàng Kǎochéng (《曆象考成》, roughly translated to Thorough Investigation of Calendrical Astronomy) a few years later. The book was compiled in the name of the Kangxi emperor, who intended to break the Jesuit monopoly in calendrical astronomy. He established an Office of Mathematics (Suànxuéguǎn 算學館) at the Hall of Cultivation (Mēngyǎngzhāi 蒙養齋) in the inner palace. Chinese scholars were recruited to study Western mathematics and astronomy and to compile treatises. Many Chinese academicians were involved in the compilation of Thorough Investigation of Calendrical Astronomy and they incorpotated several new methods developed by Chinese scholars. After the formal publication of the book in 1724, the Chinese academicians thought that they had mastered the Western astronomy and began to challenge the Jesuit authority over the astronomical affairs. It was suggested that the Imperial Astronomical Bureau should no longer be directed by westerners. However, the Chinese academicians were not aware of the progress of Western Astronomy. The astronomical theory in Thorough Investigation of Calendrical Astronomy was still based on Tycho's model. Not only was the model outdated, but also the errors accumulated over time. There was a solar eclipse on July 15, 1730. This was the first solar eclipse visible in the capital of China after the publication of Thorough Investigation of Calendrical Astronomy. To assert their authority on astronomy, the Jesuits Ignatius Kögler and Andreas Pereira, who were in charge of the Imperial Astronomical Bureau, used this eclipse as an opportunity to point out a slight discrepancy between observation and prediction based on Thorough Investigation of Calendrical Astronomy. Mingtu (明圖), the Manchu director of the Bureau of Astronomy, presented a petition to the Yongzheng (雍正) emperor, pointing out that if the shortcomings in Thorough Investigation of Calendrical Astronomy were not remedied, discrepancies between predictions and observations would grow with time. The emperor granted the proposal and Kögler and Pereira were put in charge of revising the astronomical system. They used the method and data from the French astronomer Giovanni Cassini and German Jesuit Nicasius Grammaticus to create tables for the motions of the Sun and Moon.

The Jesuits inserted the new tables to the end of the book Thorough Investigation of Calendrical Astronomy without any documentation. Only three people in the Imperial Astronomical Bureau knew how to use them. This was very unusual. As a result, the government asked for a major revision of the book and published Lìxiàng Kǎochéng Hòubiān(《曆象考成後編》, roughly translated to Later Volumes of the Thorough Investigation of Calendrical Astronomy) in 1742. In the new system, Kepler's laws of motion were introduced, but the Sun was described to move on an elliptical orbit around the Earth with the Earth fixed on one focus of the ellipse. In terms of practical calculation, the result was identical to Kepler's heliocentric model. The Moon's position was calculated based on Newton's theory of lunar motion, which incorporated Kepler's laws, Jeremiah Horrocks' rotating ellipse model, and several terms Newton derived from his theory of gravitation.Cook, Kollerstrom

There were many discrepancies between the dates of the 24 solar terms calculated using the modern method and Tycho's model. Therefore, the calendrical solar terms, the solar terms calculated by the astronomical sysetm at that time, are listed on our calendar webpage together with the solar terms calculated using the modern method. When the calculation was switched to using Kepler's laws, the discrepancies were greatly reduced. So after 1733, the dates of the calendrical solar terms were mostly the same as the dates calculated using the modern method and therefore they are omitted, except when there were discrepancies. As for the lunar conjunction, the conjunction day is the same as the first day of a month. Since we use the calendar issued at that time, it is not necessary to list the "calendrical conjunction" separately.

With the adoption of the dínqì rule, problems relating to the leap months arise. The no zhōngqì rule that had been used over 1700 years no longer works, because it is now possible to have a month without a major solar term in a regular suì and more than one month without a major solar term in a leap suì. This problem was already noticed by the officials in the calendar office in the late Ming dynasty. One official named Lǐ Tiānjīng (李天經) proposed a method to resolve the issue. If a solar term and conjunction occur on the same day, the traditional convention is that the solar term is considered to be in the month associated with the conjunction. Lǐ proposed that if the solar term occurred earlier than the conjunction, it should be considered to be in the preceding month even if they were on the same day. Only if the solar term occurred later than the conjunction would it to be considered to be in the month associated with the conjunction. This method would be able to handle almost all situations. In N1645, the Shíxiàn Calendar listed the date of the major solar term Z6 to be on the first day in leap month 6, breaking the traditional rule that a leap month must not contain any major solar term. Wāng Yuēzhēn explained in Compilation of Historical Calendars that even though the solar term Z6 and the lunar conjunction associated with the month occurred on the same day, Z6 occurred earlier in the day than the lunar conjunction and was counted as a major solar term of the previous month. As a result, leap month 6 did not contain any major solar term. This was exactly the idea proposed by Lǐ. However, this rule was only used in N1645. It was never used again after this year. Historical document states that the rule of intercalation was to place a leap month to the first month that did not contain a major solar term after the winter solstice in a leap suì. This is the origin of Rule 5 stated in the Chinese calendar rules page. This rule was made by Schall von Bell. The reason why Lǐ's rule was not adopted was probably because the traditional no zhōngqì rule could handle most leap months. Having a month without a major solar term in a regular suì or more than one month without a major solar term in a leap suì is very rare, and these situations can be resolved by slightly modifying the no zhōngqì rule. Using Lǐ's rule will result in the same situation as in N1645: a leap month that could be handled by the no zhōngqì rule was modified to a leap month that violated tradition. Adopting the dínqì rule already generated controversies. Had Lǐ's rule been used, even more controversies would surely have been generated.


Middle Han to Ming Period (104 BCE – 1644 CE)

There were more than 40 different astronomical systems developed to calculate the calendars in this period spanning more than 1700 years. All of these methods were quite different from the modern method. Studying these systems one by one and then checking the resulting calculations would take too much time. Instead, I use the calendar data in the book 3500 Years of Calendars and Astronomical PhenomenaZhang97 in this period. When checking the data in the book, I found more than 40 mistakes in the book. Most of these mistakes have been pointed out by Xǔ Jiànwěi (許劍偉), creator of the software Shòuxīng Astronomical Almanac (寿星天文历). All of the errors discovered so far are compiled on this page for those who can read Chinese.

Starting on the first day of month 5 in N-103, I use the calendar data from 3500 Years of Calendars and Astronomical Phenomena. The calendar data in N-103 before month 5 are calculated using the reconstruction method described in Section 5.

In this period (104 BCE – 1644 CE), there are a few things worth mentioning:

  1. There were four short periods in which the beginning of a year was changed to other months:

    • The Xin dynasty was established in 9 CE. The chǒu month (present day month 12) was designated as the first month of a year; the yín month (present day month 1) became month 2 and so on. The Chinese month numbers were shifted by one. As a result, N8 had only 11 months. When the Xin dynasty was overthrown in 23 CE, the month numbers were switched back with month 1 being the yín month again in the following year. As a result, N23 had 13 months, where month 12 appeared twice (zǐ month and chǒu month).
    • In 237 CE, emperor Mingdi of the Wei dynasty (魏明帝) declared that the chǒu month (present day month 12) would be the first month of a year; the yín month (present day month 1) became month 2 and so on. The Chinese month numbers were shifted by one. The new system was imposed after month 2 in N237, in which month 4 was followed by month 2. When the emperor died in 239 CE, the month numbers were switched back with month 1 being the yín month again in the following year. As a result, N239 had 13 months, where month 12 appeared twice (zǐ month and chǒu month). In addition, month 12 in N236 had only 28 days as a new version of the Chinese calendar was adopted.
    • In December 689, Empress Consort Wu (武則天) designated the zǐ month (month 11) as the first month of a year. However, the month numbers did not change. The zǐ month was named Zheng, which was usually referred to month 1; chǒu month was still called month 12; yín month was month 1 and so on. On this website the Zheng month is still labelled as month 11. The first month of a year was changed back to month 1 in February 701. N689 only had 11 months (one leap month), whereas N700 had 15 months (one leap month).
    • In December 761, emperor Suzong of the Tang dynasty (唐肅宗) designated the zǐ month (present day month 11) as the first month of a year; the chǒu month (present day month 12) became month 2; the yín month (present day month 1) became month 3 and so on. The Chinese month numbers were shifted by two. As a result, N761 had only 10 months. The month numbers ware switched back to the old system in April 762. N762 had 14 months, with two month 4s (mǎo month and sì month) and two month 5s (chén month and wǔ month).
  2. Between 104 BCE and 1644 CE, there were periods when China was divided into many states. Each state issued its own calendar and these calendars were not exactly the same. I studied about 20 of the ancient astronomical systems that were used for calendar computation, and was able to reproduce the Chinese calendars before 665, in 822-892 and in 1281-1644. My calendar data before 619 almost completely match the data in 3500 Years of Calendars and Astronomical Phenomena, whereas the majority of my data in 619-665, 822-892 and 1281-1644 match the data in the book. With these newly created computer programs, I was in a position to reproduce the calendars in the periods when China was divided.

    Appendices 2-4 in 3500 Years of Calendars and Astronomical Phenomena contain tables comparing the calendar differences between different states in the Three Kingdoms period (223-280), Southern and Northern dynasties period (384-589) and the period between 947 and 1279. The preface of the book says that the data in the appendices are based on the book 《歷代長術輯要》(roughly translated to Compilation of Historical Calendars) by Wāng Yuēzhēn (汪曰楨). For the convenience of comparison between my calculation and the data in the book, I wrote a code to create tables for calendar differences in the Three Kingdoms period (223-280) and Northern and Southern dynasties period (384-589) in the same form as the tables in Appendices 2-3 of the book. I found that there were only a few mismatches between my computation and the data in the book. Three of the mismatches are also present between the book's main text and the appendices! My data agree with the main text. Since I am not an expert in Chinese history, I can't determine which of them are correct. I therefore only mention these discrepancies. For the other discrepancies, I compared the data with the calendar data on the Chinese-Western calendar conversion website created by Academia Sinica in Taiwan, as well as the data in the book Compilation of Historical Calendars. I found that in 4 of the mismatches, the book's data agree with the other two sources and therefore I modified my data. However, in 4 of the remaining mismatches my data agree with the other sources and so I don't use the book's data.

    I also intended to calculate the calendars in 947-1279 but encountered a difficulty. Four astronomical systems were used in the dynasties in the North for calendar computation in 947-1279. At the beginning of the Liao (a.k.a Khitan) dynasty, Tiáoyuán system was used until 994 when it was replaced by the Dàmíng system. This Dàmíng system was created by Jiǎ Jùn (賈俊), which was different from the Dàmíng system created by Zǔ Chōngzhī (祖沖之) several hundred years earlier. After the Jin dynasty (established by the Jurchen people) replaced Liao in 1125, a new calendar based on another Dàmíng system (created by Yáng Jí 楊級) was adopted in 1137. The system was found to be inaccurate in predicting several eclipses and so was revised by Zhào Zhīwēi (趙知微) in 1182 and was in use even after the Mongols conquered Jin in 1234. Tiáoyuán system and Jiǎ's Dàmíng system were not preserved. When the 14th century historians wrote the chapters on calendars and almanacs in the book History of Liao, they didn't have the information on Jiǎ's Dàmíng system and thought that it was the same as Zǔ Chōngzhī's Dàmíng system. They then copied the description of Zǔ's Dàmíng system from an earlier historical record! To deal with the missing systems, Wāng reconstructed the calendars using systems that he thought were similar to the missing ones. In particular, he replaced Tiáoyuán system by Xuānmíng system, Jiǎ's Dàmíng system by Zhào Zhīwēi's revised Dàmíng system and then adjusted the leap months according to the records in History of Liao. Looking at the calendar difference table in Appendix 4 of 3500 Years of Calendars and Astronomical Phenomena, I see that the calendar differences between the south and north dynasties are not much. Instead of following Wāng's "calculate-and-correct" approach to reconstruct the calendars in the north states, it is much simpler to just use Appendix 4's calendar difference data directly to reconstruct the calendars in the north states from the calendars in the south state. The resulting JavaScript code and the JSON data storing the calendar differences turn out to be much shorter than the code that generates the calendars in 221-280 and 384-589. This approach is equivalent to using the systems in the south state to calculate calendars and then make corrections. The complicated calculation is actually hidden in the calendar computation using the systems in the south state. Appendix 4 of 3500 Years of Calendars and Astronomical Phenomena has no information on the calendrical solar terms, so I need to find a way to fill in the data for the calendar page. The approach is described briefly at the bottom of the calendar differences in 947-1279 page.

    Combined the algorithms of calendar calculation in these periods, I added calendars in several additional dynasties in 221-280, 384-589, and 947-1279 in the calendar page. When a Western year in those periods is entered, there will be buttons appearing on the page for selecting different dynasties. Conversion tables for these additional dynasties are also added in the conversion table page.

  3. In my study of the Ming calendar calculation, I found at least 7 mistakes in the lunar conjunction dates in several Chinese calendar data books. The 7 mistakes on this website have been corrected based on the imperial calendars in the Ming dynasty. I present my findings in the article "Lunar Conjunction Calculation in the Ming Dynasty and Corrections to the Ming Calendar Data".

  4. While the Chinese calendar was modified many times in this period, the Western calendar was quite stable. There was one major reform in 1582: the Gregorian calendar reform. Before 1582, the Western calendar was based on the Julian calendar, which was a solar calendar. Years that were divisible by 4 (leap years) had 366 days and the others had 365 days. The average length of a year in the Julian calendar is 365.25, which is 0.0078 days longer than the tropical year. The Gregorian calendar reform was motivated by the controversies over the date of Easter. The date of Easter was established by the First Council of Nicaea in 325 to be the Sunday following the full moon that follows the vernal (March) equinox. However, "full moon" and "vernal equinox" were not defined by astronomy. The date of Easter is actually determined by the first Sunday after the ecclesiastical full moon that occurs on or after March 21. March 21 was chosen since it was the approximate date of the equinox in 325 in the Julian calendar. The ecclesiastical full moon was determined by the Metonic cycle, in which 235 synodic months were assumed to be the same as 19 tropical years. Since the average year of the Julian calendar is slightly longer than the tropical year, the date of vernal equinox drifted earlier and earlier in the Julian calendar. Also, there is a 0.08-day difference between 235 synodic months (6939.688 days) and 19 tropical years (6939.6075 days), causing a drift between the ecclesiastical full moon and astronomical full moon. By the late 16th century, the vernal equinox drifted to March 11 and the astronomical full moon were occurring four days before the ecclesiastical full moon, causing controversies over the "correct" time for celebrating Easter. In 1582, Pope Gregory XIII carried out the calendar reform. The date following Oct. 4, 1582 was Oct. 15, 1582. Ten days were skipped in order to restore the vernal equinox back to March 21. To prevent the drift of the vernal equinox in the calendar, three leap years are subtracted in every 400 years. This is accomplished by the rule that years that are divisible by 4 but not 100 (e.g. 2016) are leap years; years that are divisible by 100 but not 400 (e.g. 1900) are not leap years and years that are divisible by 400 (e.g. 2000) are leap years. This is the Gregorian calendar we are using today. The average length of a year is 365.2425 days, close to the tropical year 365.2422 days. It takes 3300 years for the error to accumulate to one day. The ecclesiastical calendar was also adjusted to synchronise the astronomical and ecclesiastical full moon over longer period of time. In 1582, only Spain, Portugal, France, Poland, Italy, Catholic Low Countries, and colonies adopted the new calendar. Over the next three centuries, the Protestant and Eastern Orthodox countries also adopted the new calendar, with Greece being the last European country to adopt the calendar in 1923. Although not every country in the West adopted the Gregorian calendar in 1582, the convention is still to switch to the Gregorian calendar on Oct. 15, 1582.fn2

  5. Julian calendar was proposed by Julius Caesar, the dictator of the Roman Republic. Caesar adopted the calendar system designed by the astronomer Sosigenes of Alexandria. The calendar took effect on Jan. 1, 45 BCE. Caesar was soon assassinated in 44 BCE and the leap years were not implemented correctly in the first 36 years. A leap day was inserted every three years instead of every four years. By 8 BCE, three additional leap days had been added. The error was rectified in -8 (9 BCE) by skipping three leap years in the following 12 years and the system was operated as Caesar intended after 4 CE. I follow the usual convention of not taking into account the leap-year error of the Julian calendar and simply extending the Julian calendar backwards to dates before 8 CE. This is known as the proleptic Julian calendar.

  6. The months in the Western calendar are January, February, March, April, May, June, July, August, September, October, November and December. January, March, April, May and June were named after the Roman gods and goddesses (see, e.g., Origins and Meanings of the 12 Months). February was named for Februalia, a festival dedicated to ritual springtime cleaning and washing. July was named to honor Julius Caesar. August was named to honor the first Roman emperor (and grandnephew of Julius Caesar) Augustus Caesar. September to December are numbers representing seven to ten, indicating the numerical orders of the months in the ancient Roman calendar. The ancient Roman calendar had names for the first ten months: March, April, May, June, Quintilis, Sextilis, September, October, November and December. Later, January and February were added to the end of the year. Sometime between 8th century BCE and 2nd century BCE, January was moved to the beginning of the year. The Julian calendar reform in 45 BCE did not alter the month order, but Quintilis was renamed July in 44 BCE and Sextilis was renamed August in 8 BCE.

    Even though January 1st had been the New Year's Day since ancient time, some Western countries that adopted the Julian/Gregorian calendar started a year on different dates. For example, some countries used March 1st as the New Year's Day, some used March 25th (near Spring equinox), some used Easter, some used December 25th (near winter solstice) and so on. Sometimes, dual dating is used to indicate some dates. For example, "10/20 February 1661/62" means that the date was February 10th (in Julian calendar) or February 20th (in Gregorian calendar). The year was 1661 or 1662, depending on the start date of a year. On this website, January 1st is used as the New Year's Day for all Western years. As mentioned above, Gregorian calendar is used on and after October 15th, 1582; Julian calendar is used between 8 CE and October 4th, 1582. Proleptic Julian calendar is used before 8 CE. The current month names are used in all Western years.

    It seems that many Chinese people use Western month names for the Chinese months. For example, they say June when they actually mean the sixth month in the Chinese calendar, which causes confusion. We don't adopt this terrible "translation" here.


Southern Ming and Zheng Period (1645 – 1683)

The calendar data for the Southern Ming and Zheng dynasty are largely based on Cán Míng Dà Tǒng Lì (殘明大統曆 or Datong Calendar of the Waning Ming Dynasty) by Fu Yili (傅以禮) compiled in the 19th century. Fu's work is included in the last volume of the book series Èr Shí Wǔ Shǐ Bǔ Biān (二十五史補編 or Supplement to The Twenty-Five Official Dynastic Histories). Two corrections have been made on Fu's data: the Chinese New Year in 1671 is corrected according to the official Datong Calendar for 1671 produced by the Zheng dynasty; the calendrical Z11 (winter solstice) date in 1676 is corrected according to the official Datong Calendar for 1676. On the yearly calendar page, there is a button to select the calendar of the Southern Ming dynasty in 1645-1661 and a button to select the calendar of the Zheng dynasty in 1662-1683. In the conversion table page, the conversion tables for Ming, Southern Ming and Zheng dynasties are placed on the same page. There is another page showing the calendar differences between Qing, Southern Ming and Zheng dynasties.

Several versions of calendars in the Southern Ming and Zheng dynasty were produced in this period. Even though they were all based on the Datong astronomical system, their calculations most certainly deviated slightly from the calendar calculations used by the officials in the Ming dynasty before 1645. All discrepancies between the calendar dates calculated by the Datong system (using the method before 1645), Datong Calendar of the Waning Ming Dynasty and other sources are listed on relevant pages for reference. On a separate webpage, I discuss the calendar dates in Southern Ming and Zheng dynasty from the viewpoint of calendar computation.


Qin and Early Han Period (221 BCE – 104 BCE)

The calendars used between 221 BCE and 104 BCE were modified versions of the Zhuanxu calendar, one of the old calendars used in the third century BCE in the state of Qin. The first month was the hài month (present-day month 10). However, it was still called month 10 instead of month 1. The numerical order of the months in a year was 10, 11, 12, 1, 2, ..., 9. The intercalary month was placed at the end of a year, called post month 9 (後九月). There was a major calendar reform in 104 BCE, where the first month of a year was changed to month 1 and the intercalary month was placed in the month that did not contain a major solar term. The Chinese year in 104 BCE had 15 Chinese months as a result of the change. The calendars in this period are reconstructed according to the description in the article by Lǐ Zhōnglín (李忠林) in 2012Li. The computation method is explained on this page.

Even though the reconstruction method is claimed to be valid for calendar from N-245 to month 5 in N-103, our calendar page uses this method from 221 BCE to month 4 in N-103 and our calendar table page uses this method from N-220 to month 4 in N-103 (the calendar page is mainly based on the Western calendar and the calendar table page is mainly based on the Chinese calendar). Starting from month 5 in N-103, both pages use the data from the book 3500 Years of Calendars and Astronomical PhenomenaZhang97, which shows calendar data based on the Tàichū system (太初曆) beginning in month 1 in N-103fn3. In N-103, month 3 had 29 days and month 4 should have had 30 days according to the reconstructed calendar. However, when the new calendar was used in month 5, the conjunction day moved one day earlier, turning month 4 into a short month. Month 5 was a short month in the new calendar. As a result, months 3, 4, 5 in N-103 all had 29 days. This is impossible for any calendar based on the píngshuò rule (i.e. based on the mean motion of the Moon and Sun), and could only occur when switching to a new calendar. If the switch is changed to month 6, month 5 will have 28 days, which is also impossible under normal circumstances.


Warring States Period (480 BCE – 222 BCE)

In the Warring States period, China was divided into many states. Each state used its own calendar. It was believed that there were six versions of calendars used by the states at that time. They are collectively called gǔliùlì (古六曆) or ancient six calendars. These six calendars were Zhou, Lu, Huangdi, Yin, Xia and Zhuanxu. They were all based on a similar algorithm. However, the first month of a year was not the same. The epoch (used to specify the initial data for the lunar conjunction and winter solstice) used in each calendar was also different. The calendars in gǔliùlì on this website are reconstructed based on the information in Section 3.6 of the book Zhōng Guó Gǔ Dài Lì Fǎ (《中国古代历法》 or Ancient Chinese Calendars and Almanacs)ZCBH. The computation method is explained in the ancient six calendars page.

The Xia calendar had two versions, which used slightly difference epoch in the calendar calculation. The version shown in the Spring and Autumn period (722 BCE – 481 BCE) is different from the one used in the Warring States period (480 BCE – 222 BCE): the epoch used in the Spring and Autumn period was the time when the lunar conjunction and Z1 were assumed to occur at midnight, whereas the epoch used in the Warring States period was the time when the lunar conjunction and winter solstice were assumed to occur at midnight.

Scholars have not come to a consensus on the position of the intercalary month. I assume that it was placed at the end of a year, and was simply called the leap month. Some people think that leap month was placed in the month without any major solar term. Months without a major solar term are also indicated for reference. The Zhuanxu calendar is special. The first month of the Zhuanxu calendar was the hài month (present day month 10), but it was called month 10. The subsequent months were named month 11, month 12, month 1, ..., month 9. The leap month was placed at the end of a year and was called post month 9 (後九月).

It is believed that the ancient six calendars were developed in the Warring States period, but none of them is preserved today. We can now only learn about them from sources that were written hundreds of years later. The reliability of the information remains uncertain to this date.


Spring and Autumn Period (722 BCE – 481 BCE)

In the Spring and Autumn period, China was divided into many states. Each state used its own calendar. In this period, we only have fragmented information about the calendar used by the Lu state from the chronicle Chunqiu revised by Confucius. This calendar is called Chunqiu here. The Chunqiu calendar on our website is reconstructed based on the information in Section 3.5 of the book Ancient Chinese Calendars and AlmanacsZCBH. The computation method is explained on the Chunqiu Calendar page.

The Chunqiu calendar did not have a fixed rule for placing the intercalary months. The result was that the first month of a year varied between the hài month (present day month 10) and yín month (present day month 1). The first month often coincided with the chǒu month (present day month 12) in the early years, and often coincided with the zǐ month (present day month 11) in the later years. Scholars have not come to a consensus on the position of the intercalary month. I assume that it was placed at the end of a year, and was simply called the leap month. The Chunqiu calendar did not have an algorithm to compute the winter solstice (or any other solar terms). The winter solstice at the time was determined by observation. Thus, there were no calendrical solar terms.

In addition to the Chunqiu calendar, three calendars Zhou, Yin and Xia (three of the gǔliùlì or ancient six calendars) are also provided for reference, although it is believed that they were developed in a later period. As mentioned in the previous section, the Xia calendar had two versions. The epoch used in the Spring and Autumn period was the time when the lunar conjunction and Z1 were assumed to occur at midnight.



Footnotes and References