新規作成 | 一覧 | RSS | FrontPage | 検索 | 更新履歴
[Calendar/When/Exe/暦説明/本編/中国/太陰太陽暦] (前:中国|次:太陽暦) (English)

太陰太陽暦

まえおき

中国においては伝統的に太陰太陽暦が用いられてきました。太陰太陽暦とは、 読んで字のごとく「月」は太陰(=月)の運動を基準にし、「年」は太陽の運 動(=本当は地球の方が動いている)を基準にする暦法です。我々が現在用い ている太陽暦では1年は12か月ですが、

    1太陽年(季節が巡る周期)      =  365.2422  日 ・・・・ (1)
    1朔望月(月が満ち欠けする周期)=   29.530589日 ・・・・ (2)

であり12朔望月は1太陽年よりも11日弱短いため、約3年に1度1年を13か月 とし、季節を調整します。

余分な月(閏月)をいつ挿入するかを決定する判断材料となるのが二十四気です。 二十四気は太陽の軌道上の位置により、下表の様に定義されます。偶数番目の ものを中気、奇数番目のものを節気といいます。中国では、特定の中気が特定の 月に含まれるように閏月を挿入するという方法がとられてきました(戊寅暦、 麟徳暦(=儀鳳暦)では啓蟄と雨水が入れ替わります(中國天文暦法史料[66])。

1:立春315゜7:立夏45゜13:立秋135゜19:立冬225゜
2:雨水330゜8:小満60゜14:処暑150゜20:小雪240゜
3:啓蟄345゜9:芒種75゜15:白露165゜21:大雪255゜
4:春分0゜10:夏至90゜16:秋分180゜22:冬至270゜
5:清明15゜11:小暑105゜17:寒露195゜23:小寒285゜
6:穀雨30゜12:大暑120゜18:霜降210゜24:大寒300゜

四分暦

中国の古代に使用された1年を365.25日、19年を235か月とする太陰太陽暦です。

  (1)(2)式より
    19太陽年  =  6939.6018日 ・・・・ (3)
   235朔望月  =  6939.6884日 ・・・・ (4)

となり、19年に(235-19×12=)7回閏月を挿入すると都合が良いことがわかります (なぜこんな倍数が簡単に見つかるか興味のある方は、初等整数論講義[83] を読んでください-また近似分数を表示するには

 whenhv 365.2422 29.530589 (ret)

などとします)。

19太陽年=235朔望月の周期をメトン周期、この周期の4倍をカリポス周期といいます。

四分暦とは、正確に、

     1太陽年  =  365.25日
    19太陽年  =  235朔望月
  (故に1朔望月  =  29日499/940)

が成立しているものとして計算される太陰太陽暦です。

従って、四分暦では76年を周期として同じ日付パターンが繰り返されます (言い替えると、ユリウス暦と四分暦の対照表は76年分あれば十分)。

中国の戦国時代から秦・漢の初期にかけて、6種類の四分暦が使用されて いたと言われています (要するに各国が勝手な暦を使っていたということでしょう)。

暦法 資料元期干支節気年-365月-29
黄帝暦 文献[50] +1228331正子朔甲子冬至1/4499/940
顓頊暦 文献[50] +1171396正午朔己巳立春1/4499/940
夏暦 文献[50] +1328411正子朔甲子冬至1/4499/940
殷暦 文献[50] +1149071正子朔甲子冬至1/4499/940
周暦 文献[50] +1128251正子朔甲子冬至1/4499/940
魯暦 文献[50] +1048991正子朔甲子冬至1/4499/940

秦から漢の初期にかけて使用されていた顓頊(せんぎょく)暦は、最近の考古学的 発見により、正子(真夜中の0時)ではなく正午ころが起点(朔のみ、立春は正子のまま -massangeanaさん さんのご教示による。 このため、V2.05では四分暦計算アルゴリズムが変更になりました)であることが判明し ました[50][39]

秦・前漢の顓頊暦では原則として冬至が11月に(または雨水が1月に)固定され、固定月 から翌年の固定月までが13ヶ月なる場合その間に閏月を挿入します。挿入する位置は年末 です。秦・漢の初期は年初が10月であったため、後9月が挿入されます。

本プログラムでは、確定的な暦法を提供することをあきらめ、カスタマイズ機能を利用して、 ユーザがパラメータを調整できるようにしました。例えばwhen.rsc 中の

           +-+-+- 表示範囲の下限及び上限(例はプラスマイナス無限大の場合)
           | | +- 四分暦法を示す(111035なら4カリポス周期を1日短縮)
           | | |      +-----+- 元期はユリウス通日1171396の12時
           | | |      |     |
 quarter5: -,+,2, 1171396, 12, 1041285, 12, -1, 9 # 5: 前漢顓頊暦
        |                           |    |   |  |
        +- Q# の #                  |    |   |  +- 9月の後に閏月を挿入
                                    |    |   +- 11月を固定
                                    |    +- 12ヶ月を単位として閏月を計算
                                    +- 元期と固定する中気の差を1/940時間
                                       単位で指定。この場合は冬至から立春
                                       (0時)までの45度+同日12時までの
                                       半日を意味する。
                                           1度 = 22889, 1日 = 22560

を変えることによって、顓頊暦をカスタマイズすることができます。

平朔平気法

平朔平気(平気は恒気または常気という方が一般的か)法は、月の平均黄経と 太陽の平均黄経をもとに朔と中気を計算し、すべての中気を対応する月に固 定する暦法です(平均黄経などの用語は現代天文学の用語ですから、厳密な 概念定義としては「ずれ」があります。詳しくは こちら を参照してください)。

1月中雨水4月中小満7月中処暑10月中小雪
2月中春分5月中夏至8月中秋分11月中冬至
3月中穀雨6月中大暑9月中霜降12月中大寒

中気の無い月を閏月にし、直前の月と同じ月番号に閏字をつけてあらわします (v2.04までの記述では、四分暦では置閏判定で朔の日の区切りを考慮しない と書いてありましたが、これは私の文献誤読によるものでしたので、同記述を 削除します-massangeanaさんのご教示による)。

平朔平気法は、前漢の太初暦から隋の大業暦まで使用されました。次表に、 中国で実際に使用された暦法のパラメータを示します。このうち玄始暦は、 律暦志に元期が記載されていない為、文献[1]から逆算して元期を推定しま した。

この元期を元にした c1$f.rsc による玄始暦の計算値は、文献[37]のデータ と閏月の位置が6箇所ずれており、むしろ汪曰楨『古今推歩諸術攷』巻上,22葉、 等に一致します。これのもとネタは『開元占経』であろうとのことです(-これも massangeanaさんのご教示による)。

文献[37]では閏月の間隔が35ヶ月になることがあり、人為的変更を考慮した 結果であろうかとも推定されますが詳細は不明です。資治通鑑の暦日は計算値の方 によく適合します(これは資治通鑑プロジェクトの一貫として行われた計算によって 元の記録を置き換えたためと思われ、ある意味であたりまえのこと)。

暦法資料元期干支節気年-365月-29
太初暦漢書+1683431正子朔甲子冬至385/ 153943/ 81
四分暦後漢書+1662611正子朔甲子冬至1/ 4499/ 940
乾象暦晋書-898129正子朔甲子冬至145/ 589773/ 1457
景初暦晋書+330191正子朔甲子冬至455/ 18432419/ 4559
三紀暦晋書-28760989正子朔甲子冬至605/ 24513217/ 6063
玄始暦魏書-20568349正子朔甲子冬至1759/ 720047251/ 89052
元嘉暦宋書-200089正子朔甲子雨水75/ 304399/ 752
大明暦宋書-17080189正子朔甲子冬至9589/ 394912090/ 3939
正光暦魏書-59357929正子朔甲子冬至1477/ 606039769/ 74952
興和暦魏書-105462049正子朔甲子冬至4117/ 16860110647/208530
天保暦隋書-38447089正子朔甲子冬至5787/ 23660155272/292635
天和暦隋書-317950249正子朔甲子冬至5731/ 23460153991/290160
大象暦隋書-13244449正子朔甲子冬至3167/ 1299228422/ 53563
開皇暦隋書-1506155749正子朔甲子冬至25063/10296096529/181920
大業暦隋書-519493909正子朔甲子冬至10363/ 42640607/ 1144
麟徳暦*旧唐書-96608689正子朔甲子冬至328/ 1340711/ 1340

 * 日本書紀において儀鳳暦という呼び名で平朔で使用されている

定朔平気法

定朔平気法は、月の視黄経と太陽の視黄経をもとに朔を計算し、太陽の平均黄経をもとに 中気を計算し、すべての中気を対応する月に固定する暦法です。

以後の計算は平朔平気法と同様です。

定朔平気法は、唐の戊寅暦(一時期平朔で使用)から明の大統暦(実質的に元の授時暦と ほとんど同じ)まで使用されました。

月の運動は一様でないため、定朔平気法では大の月(30日まである月)が4ヶ月続くことが あります。また、朔が午後6時以降の場合翌日を1日(ついたち)にするという進朔が唐 から宋にかけて行われていたようです。日本で八百年以上も用いられた宣明暦も唐代の暦法 であるため原則として進朔が行われていました。

朔閏表一覧の注にも書いておりますように、五代十国時代には暦法不明の時期があります。 文献[37]にはこの時期の暦日も記載されていますが、精度は前後の時期よりもかなり 落ちるのではないかと推定されます。

定朔定気法

定朔定気法は月の視黄経と太陽の視黄経をもとに朔と中気を計算し、いくつかの中気を 対応する月に固定する暦法です。

定朔定気法は、清の時憲暦で採用され、太陰太陽暦の廃止まで使用されました。

また日本でも天保暦で採用され、いわゆる「旧暦」も定朔定気法で計算されています。

地球が近日点を通過する1月頃は、太陽の動きが速いため、中気と中気の間隔が朔と朔の 間隔よりも短くなります。このため平気法の様に単純に月番号を決めることができず、 置閏規則は複雑になります。

中国では、まず、康煕甲子元法上(増補改訂中国の天文暦法[39]pp.283, 中國天文暦法史料[66]参照)により、

 1) 冬至を含む月を11月とする。
 2) 次の冬至まで13ヶ月ある場合、中気を含まない最初の月を閏月とする。

とされ、さらに嘉慶年間に、

 1) 冬至を含む月を11月、春分を含む月を2月、夏至を含む月を5月、秋分を
    含む月を8月とする。
 2) 閏月は中気を含まない月に置く、しかし中気を含まなくても必ず閏月にし
    なければならない訳ではない。

と改められました。日本の天保暦も後者に基づいています(この点については疑問を 持っています(天保暦置閏法の謎参照))。

今仮に、前者を中国流、後者を日本流と言うものとすると、明らかに中国流 の方が矛盾のない規定です。

日本流では二至二分間の月数が足りない場合(1699-1700年-表A、2033年-表B)や、 月数が余っても中気のない月を複数を含む場合(2033-34年-表B)の扱いがはっきり しません(従って、本プログラムの計算法には、私の独断がはいっています)。

表A
1700年年初付近の朔1700年年初付近の中気
1 Nov 21 23:52
Nov 22 8:31 小雪
2 Dec 21 17:54Dec 21 20:47 冬至
冬至を含む月
3 Jan 20 13:20Jan 20 7:24 大寒
Feb 18 22:35 雨水
4 Feb 19 8:33
春分を含む月Mar 20 23:25 春分
5 Mar 21 1:46
6 Apr 19 15:51
Apr 20 12:39 穀雨
7 May 19 2:45

表B
2034年年初付近の朔2034年年初付近の中気
1 Jul 26 17:12
Aug 23 4:02 処暑
2 Aug 25 6:39
閏7月?
3 Sep 23 22:39Sep 23 1:51 秋分
秋分を含む月
4 Oct 23 16:28Oct 23 11:27 霜降
5 Nov 22 10:38Nov 22 9:15 小雪
冬至を含む月Dec 21 22:44 冬至
6 Dec 22 3:46
閏11月?
7 Jan 20 19:01Jan 20 9:26 大寒
Feb 18 23:29 雨水
8 Feb 19 8:10
閏1月?
9 Mar 20 19:14Mar 20 22:16 春分
春分を含む月
10 Apr 19 4:25
Apr 20 9:03 穀雨
11 May 18 12:12

本プログラムでは、日本流中国流いずれにも対応するため、カスタマイズ 機能を利用して、ユーザがパラメータを調整できるようにしました。

whenhv.rsc の

 #        閏月の計算単位(月数)  中気を固定する月  その中気の太陽黄経
 #leap:           3,                  2,                  0
 #                ↓                  ↓                  ↓
 leap:            12,                 11,                270

を参考にしてください。whenhv.rsc を + オプションで指定すれば、中国流 の太陰太陽暦も計算できます(地方時を SET TZ=-8 とすることを忘れないで)。