« 平壌時間 | トップページ | 8011Fの貫通化改造 »

九星の計算【3】

承前) Calend Mateでは、九星計算のアルゴリズムをversion 2.20で大幅に変更しました。

Version 2.10以前

九星の計算【1】で示した「冬至・夏至が癸巳・甲午・乙未のときを閏とし、甲午で折り返す」方法(方法2)を採用していました。

  1. 求めたい日の直前の二至の干支から陽遁・陰遁の切替日を計算
    • 甲子~壬辰:二至直前の甲子日
    • 癸巳~乙未:甲午日(計算の起点は6日前の戊子日)
    • 丙申~癸亥:二至直後の甲子日
  2. 1で求めた切替日が求めたい日より後ろになったら、もう1つ前の二至に関して切替日を計算
  3. 冬→夏の期間なら陽遁、夏→冬の期間なら陰遁で求めたい日の九星を算出

ここで、1の甲子日切替時に計算起点を6日前の戊子日にした理由ですが、陽遁ではこの日を一白水星にすると甲午日が七赤金星となり、陰遁では戊子日を九紫火星にすると甲午日が三碧木星となり、通常の甲子日切替と同じ計算が可能になるからでした。

ところが、夏の甲午日で六白金星→三碧木星、冬の甲子日で四緑木星→一白水星と不連続になるという御指摘をビスタカーさんから頂戴しました。この原因は、切替日の間隔が

  • …-甲子-(180日)-甲子-(240日)-甲子-(180日)-甲子-… (閏見落とし)
  • …-甲子-(210日)-甲午-(180日)-甲午-(210日)-甲子-… (閏過剰)

となってしまうからでした。同時に40世紀以降において、切替日の間隔で以下のパターンが発生するという御指摘も頂戴しました。この原因は九星の計算【2】で示した冬至から夏至の間隔が短くなってしまうためです。

  • …-甲子-(180日)-甲子-(210日)-甲午-(150日)-甲子-(240日)-甲子-(180日)-甲子-…
  • …-甲子-(180日)-甲子-(240日)-甲子-(150日)-甲午-(210日)-甲子-(180日)-甲子-…

Version 2.20以降

方法2を加味した「冬至・夏至に直近の甲子日の間隔が240日になるとき、最後の60日間を閏とする」方法(方法1)に切り替えました。その手順は次の通りです。

  1. 求めたい日の直前の二至の干支から陽遁・陰遁の切替日を計算
    • 甲子~壬辰:二至直前の甲子日
    • 癸巳~癸亥:二至直後の甲子日
  2. 求めたい日の直後の二至の干支から陽遁・陰遁の切替日を同様に計算
  3. 甲子日の間隔が180日のときは通常の陽遁(冬→夏、一白水星開始)・陰遁(夏→冬、九紫火星開始)
  4. 甲子日の間隔が240日のときは後の60日が閏
    • 夏閏:閏の前半30日間は陽遁を続け、後半30日間は三碧木星開始の陰遁
    • 冬閏:閏の前半30日間は陰遁を続け、後半30日間は七赤金星開始の陽遁
  5. 甲子日の間隔が120日のときは直後の240日期間と合わせて180日×2とし、直前の240日期間に閏を適用

このうち、手順5は40世紀頃から85世紀頃までの間で必要な処理です。このとき、120日期間の開始直前の冬至の干支は癸巳になりますので、前の240日期間が閏となるように調整します。

…-冬-(180日)-夏-(240日)-冬-(120日)-夏-(240日)-冬-(180日)-夏-…

まずは120日期間後の夏至直近の甲子日を60日だけ後倒しすることで、180日×2としています。

…-冬-(180日)-夏-(240日)-冬-(180日)--(180日)-冬-(180日)-夏-…

そして、前の240日期間に対して手順4を適用しています。これにより、冬至直近の甲午日で陰遁から陽遁が切り替わることになります。

…-冬-(180日)-夏-(210日)--(210日)-夏-(180日)-冬-(180日)-夏-…

なお、Version 2.20では手順1で甲子~癸巳と甲午~癸亥に分けていましたが、Version 2.21で方法2を加味して上述の方法に変更しています。 (完)

謝辞

ビスタカーさんには多大なるご教示を賜り、かつ有益な議論をしていただきました。ここに御礼申し上げます。

【参考文献】
岡田芳朗、阿久根末忠 『現代こよみ読み解き事典』 柏書房 1993年3月10日
岡田芳朗 『旧暦読本 現代に生きる「こよみ」の知恵』 創元社 2006年12月20日
【関連記事】
九星の計算【2】 (2015.08.08)
九星の計算【1】 (2015.07.31)
恵方と節分 (2015.02.03)
朔旦冬至 (2014.12.22)
暦関係の法令 (2012.03.29)
旧暦2033年問題【2】 (2005.04.13)
旧暦2033年問題【1】 (2005.02.12)

|

« 平壌時間 | トップページ | 8011Fの貫通化改造 »

天体・暦」カテゴリの記事

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/64930/62056584

この記事へのトラックバック一覧です: 九星の計算【3】:

« 平壌時間 | トップページ | 8011Fの貫通化改造 »