Il calendario cinese:

Il calendario cinese è contemporaneamente lunisolare (cioè i mesi si sincronizzano con le fasi lunari e, nello stesso tempo, gli anni con le stagioni) e osservazionale (cioè è basato sul moto reale della luna e del sole, piuttosto che su approssimazioni matematiche). Il risultato è un calendario di una complessità enorme.

I mesi iniziano sempre con un giorno che contiene la Luna Nuova. La conseguenza è che i mesi hanno sempre o 29 o 30 giorni, in un ordine che non è perfettamente uniforme. Gli anni hanno o dodici di questi mesi (anni "ordinari") oppure tredici mesi (anni "intercalari"). Fin qui, si nota che questo calendario somiglia molto al calendario ebraico (con l'eccezione, però, che il calendario ebraico usa in realtà un algoritmo uniforme e matematicamente esatto).

Un'altra somiglianza con il calendario ebraico, tra l'altro, consiste nel fatto che un anno ordinario può avere 353, 354 oppure 355 giorni; un anno bisestile può avere 383, 384 oppure 385 giorni.

I mesi sono specificati da un numero. Il mese n.11 contiene sempre il solstizio d'inverno. Come conseguenza, tra due "mesi n.11" consecutivi si possono avere o dodici o undici mesi. Questo fatto crea il problema di come numerare i mesi in tale intervallo. Se vi sono undici mesi tra i due "mesi n.11", allora la soluzione è semplice: il mese n.11 sarà seguito dal mese n.12, il quale a sua volta sarà seguito dal mese n.1 dell'anno successivo, e poi dal mese n.2, n.3, ... fino a un altro mese n.11 che di nuovo conterrà il solstizio d'inverno. Questo è il caso "facile", e avviene circa il 63% delle volte. La maggior parte dei grossi problemi con il calendario cinese si verificano quando vi sono dodici mesi tra due "mesi n.11" consecutivi:

I cinesi hanno diviso il percorso del Sole nel cielo (cioè l'eclittica) in dodici tratti di uguale lunghezza, pari a 30 gradi ciascuno. I punti di divisione sono chiamati i dodici "Termini Principali". I solstizi d'inverno e d'estate sono due di questi termini; altri due sono gli equinozi.

Nel caso "difficile", quindi, vi sono dodici lunazioni tra i due "mesi n.11" consecutivi, e durante questo periodo di tempo il sole attraversa undici Termini Principali. Quindi, almeno una lunazione (o mese) non conterrà un Termine Principale. Il primo di questi mesi intermedi sarà chiamato "mese intercalare". (In genere sarà il primo e l'unico di tali mesi, ma vi possono essere eccezioni).

I restanti mesi saranno numerati in modo logico, come è stato descritto prima (il mese n.11 è seguito dal mese n.12, e poi dal n.1 dell'anno successivo, dal n.2, dal n.3, ... fino al n.11). Il mese intercalare prende il numero da quello del mese che lo precede, con l'aggiunta della designazione di mese intercalare.

Un esempio di tutto questo può essere di grande aiuto. Nella tabella seguente, si vede che la Luna Nuova del 30 novembre 1997 e quella del 18 dicembre 1998 (secondo il calendario Gregoriano contengono entrambe il solstizio d'inverno, e quindi saranno entrambe designate come "mese n.11" (degli anni cinesi 4634 e 4635). Nel periodo intermedio, vi sono dodici lunazioni e undici Termini Principali.

  GG       Data (Greg)  Ora(TU) Mese Anno
2450782    30 Nov 1997  2:14:00  11  4634
2450804 p  21 Dic 1997 20:05:10 TERMINE PRINCIPALE (solstizio d'inverno)
2450812    29 Dic 1997 16:56:34  12  4634
2450833 p  20 Gen 1998  6:44:24 TERMINE PRINCIPALE
2450841    28 Gen 1998  6:00:58   1  4635
2450863 p  18 Feb 1998 20:52:58 TERMINE PRINCIPALE
2450871    26 Feb 1998 17:26:07   2  4635
2450893 p  20 Mar 1998 19:52:04 TERMINE PRINCIPALE (equinozio di primavera)
2450900    28 Mar 1998  3:13:44   3  4635
2450923 p  20 Apr 1998  6:53:41 TERMINE PRINCIPALE
2450929    26 Apr 1998 11:41:22   4  4635
2450954 p  21 Mag 1998  6:02:05 TERMINE PRINCIPALE
2450959    25 Mag 1998 19:32:14   5  4635
2450985 p  21 Giu 1998 13:59:22 TERMINE PRINCIPALE (solstizio d'estate)
2450988    24 Giu 1998  3:50:19   5i 4635
2451017    23 Lug 1998 13:43:45   6  4635
2451017 p  23 Lug 1998  0:52:31 TERMINE PRINCIPALE
2451047    22 Ago 1998  2:03:01   7  4635
2451048 p  23 Ago 1998  7:55:49 TERMINE PRINCIPALE
2451077    20 Set 1998 17:01:29   8  4635
2451079 p  23 Set 1998  5:33:23 TERMINE PRINCIPALE (equinozio d'autunno)
2451106    20 Ott 1998 10:09:20   9  4635
2451109 p  23 Ott 1998 14:54:15 TERMINE PRINCIPALE
2451136    19 Nov 1998  4:26:33  10  4635
2451139 p  22 Nov 1998 12:29:51 TERMINE PRINCIPALE
2451166    18 Dic 1998 22:42:14  11  4635
2451169 p  22 Dic 1998  1:52:33 TERMINE PRINCIPALE (solstizio d'inverno)
2451195    17 Gen 1999 15:46:06  12  4635
  GG       Data (Greg)  Ora(TU) Mese Anno

Si può notare che una di queste lunazioni (o mesi), quella che inizia il 24 giugno 1998, non contiene Termini Principali. Pertanto sarà il mese intercalare, che sarà designato come "5i 4635".

Vanno qui fatte due importanti osservazioni: la prima riguarda il giorno in cui avviene la Luna Nuova (o Termine Principale). Il fatto che la lunazione che inizia il mese 6 4635 avvenga circa tredici ore dopo il Termine Principale non ha importanza; entrambi gli eventi si verificano nello stesso giorno di calendario, e questo è quello che conta. La seconda osservazione riguarda il fatto che il "giorno di calendario" è basato sulla longitudine di 120 gradi Est, che corrisponde a otto fusi orari in anticipo rispetto all'ora di Greenwich (Tempo Universale).

In ogni caso, tutte le precedenti considerazioni provengono dall'"Explanatory Supplement to the Astronomical Almanac". A sua volta, questa pubblicazione ha ricavato le sue informazioni da un lavoro, di prossima pubblicazione, di Liu e Stephenson, intitolato "The Chinese Calendar and Its Operational Rules" ("Il Calendario Cinese e le sue Regole Operative"). Le regole riportate in tale lavoro sono quelle usate dall'Osservatorio della "Montagna di Porpora" in Cina per preparare i calendari.

Occorre una precisazione sulla numerazione degli "Anni Cinesi" riportati sopra. Il calendario cinese normalmente si svolge o in un ciclo di sessanta anni, oppure contando gli anni dall'ascesa al trono di un imperatore, piuttosto che incrementando il numero dell'anno con continuità uniforme. Tuttavia è anche uso comune quello di iniziare la numerazione, contando gli anni dal ciclo di sessanta anni che è iniziato nel 2637 a.C. Nell'esempio precedente, il 28 gennaio 1998 corrisponderà al "Capodanno Cinese" dell'anno 4635. Questo numero si ottiene dall'operazione: 77*60 + 15 = 4635. E' come dire che si tratta del Capodanno dell'anno 15 del 78-esimo "ciclo" (non esiste un "ciclo zero").

Il programma Guide segue quest'ultima convenzione; per esempio, riporterà che il 28 Gennaio 1998 del calendario Gregoriano corrisponde al "Capodanno cinese" dell'anno 4635. Gli anni del ciclo di 60 anni hanno un nome, e Guide riporterà anche tali nomi. (L'anno 4635, che è il quindicesimo anno del ciclo corrente, ha, per esempio, il nome "wu-yin").

Come per quasi tutti i calendari usati da Guide, è possibile scaricare il codice sorgente in linguaggio C/C++ per i calcoli relativi al calendario cinese, collegandosi al sito: http://www.projectpluto.com/source.htm#astrocalc

C'è tuttavia qualche avvertenza circa questo calendario. Tutti gli altri calendari sono gestiti mediante algoritmi matematici. Il calendario cinese, invece, richiede che venga caricato in memoria il file CHI_CAL.DAT. Tale file (di circa 13 kb) può essere scaricato da Internet, collegandosi con: http://www.projectpluto.com/chinese.zip

Sostanzialmente, questo file contiene un calendario cinese "precalcolato", in forma compressa. In realtà tutto il lavoro, che il programma DATE.CPP deve fare, è quello di decomprimere il file, cosa molto semplice e veloce.

Inoltre, occorre prestare molta attenzione ad inserire il mese intercalare in modo corretto. Il codice sorgente JD.CPP mostra come viene effettuata questa operazione (e presenta anche un esempio di come si carica in memoria il file CHI_CAL.DAT).

Infine, va tenuto presente che tutto questo è basato sull'aver calcolato il calendario "nel modo giusto", usando accurate teorie circa il moto della luna e del sole. Alcuni calendari cinesi sono stati calcolati usando una precisione più scarsa, o usando il moto medio del sole, anziché il moto vero, o con approssimazioni basate su altri tipi di regole, oppure usando una longitudine diversa da 120 gradi Est.