As the modern Chinese calendar uses accurate astronomy, programming
this is not a trivial task. Also, because accurate astronomy gives
rise to some strange anomalies - such as years with two intercalaries
and one omitted month - various rules have been developed by the
Chinese to smooth out the calendar. So, I have created a lookup table
(in cmonth.h) for the Chinese month numbers for the years 1900 to 2100
inclusive. I think this should be enough for most purposes. Requests
outside of this range set the Chinese month number equal to the
Tibetan - which they are anyway, half of the time.
This produces the same results for the years 2006 ro 2013 as the
previous versions, with one exception. I noticed that when the Chinese
month is 1 and the Tibetan month 12, the Chinese month value was set
to 12. I have changed this, as I presume this was a mistake of mine.
Tenzang, am I correct, or is this something you asked me to do? It
makes a difference, for example, to the lunar day data for the last
month of last year. The files are up on the web site:
http://www.kalacakra.org/calendar/os_slc.htm
Edward.