年の十干十二支九星

年の十干十二支九星のプログラミング。

 西暦y>=1以上とします。
十干 = (y+6)%10
 ただし:0=甲, 1=乙,....., 9=癸

十二支 = (y+8)%12
 ただし:0=子,1=丑,...., 11=亥

九星 = 9-(y+7)%9
 ただし: 1=一白水星,2=二黒土星,....9=九紫火星

注意点が一つあります。
九星気学風水では新年のスタートは「立春」です。二十四節気の考えです。正確に言うと、太陽の視黄経が 315°になる”日時”です。天文計算をして出す必要があります。
立春はほぼ2/4ですが、何年かに一度、2/3になったり2/5になったりします。
例えば立春が”2/4 07:00″だとしますと、”2/4 00:00″だと”前年”で、”2/4 08:00″だと年があけています。

月の十干十二支九星

月の十干十二支九星の計算は、年より複雑です。
年と同じように、24節気の日時で月を切り替えているからです。それは後述(3)します。
基本的には次のようにします。

方法としては2とおりあります。
1.月を累積した数を割って、余りを見る
2.各年単位で見る。

(1).
“ユリウス日”という日数を累積していく方法があります。これと同じ考え方で、月も累積していきます。例えば西暦1年の1月を0、2月を2、…西暦2年の2月を13、…というようにしたとします。

 s=0,1,2,...;0=1年1月,....13=2年2月,14=2年3月,....
十干 = (s+6)%10
 ただし:0=甲,1=乙,....9=癸
十二支 = s%12
 ただし:0=子,1=丑,....11=亥
九星 = 9 - (s%9)
 ただし:1=一白水星,....9=九紫火星

(2).
各年単位で出す方法。

 m=1,2,...12 ; m=月をしめす
十二支 = m-1
 ただし:0=子,1=丑,...11=亥。

十二支は簡単ですね。十二支と月は完全に一致しているからです。

月の九星と十干は、年の九星と十干を使って計算できます。
年の九星(十干)が分かれば、その年の2月は常に同じ九星(十干)になるからです。
12ヶ月は、3の倍数だから九星とうまく合いますし(36ヶ月=3年で一巡)、5年だと60ヶ月となり十干で割り切れるからです。
この特徴をふまえた計算方法(考え方)はいくつもあります。一例をあげておきます。

求めたい月 m は 2,3,4,...13 とする(1月を13にする)。

甲=0,乙=1,....癸=9とする。
k=求めたい年の十干で、0,1,2,...8 とする。

a = 2( (k % 5) + 1) % 10
月の十干 = (a + m - 2) % 10
求められる値は 0,1,...9

s=求めたい年の九星で、1,2,...9 とする。1=一白水星。
九星 = (3s + 7 - m) % 9
求められる値は 0,1,...8 で、0は九紫火星

(1)の方法を利用してもかまいません。

十干 = ((y-1)*12+M+6)%10
 ただし:y=西暦で、1,2,...;Mは月で、M=0,1,...11
九星 = 9-((y-1)*12+M)%9
 ただし:y=西暦で、1,2,...;M=0,1,...11

(3).月の切り替わり
月の変わりの判定には二十四節気を使います。正確にその日時で変わると考えています。例えば2015年3月に啓蟄がありますが、国立天文台の発表では、啓蟄は”2015 3/6 06:58″です。つまり”3/6 00:00″はまだ前の月が続いていて(2月扱い)、”3/6 07:00″は月が変わった後(3月)です。
この日時も太陽の視黄経を計算する必要があります。


02月 315° 立春
03月 345° 啓蟄
04月 015° 清明
05月 045° 立夏
06月 075° 芒種
07月 105° 小暑
08月 135° 立秋
09月 165° 白露
10月 195° 寒露
11月 225° 立冬
12月 255° 大雪
01月 285° 小寒

日の十干十二支九星

日の十干十二支九星は、年や月のように二十四節気に左右されません。ですから計算は楽になります、と言いたいところですが、九星以外は、です。

mj:修正ユリウス日とする
  ユリウス日は0時が0.5日となるので、修正ユリウス日の方が計算しやすい
十干 = mj % 10
  ただし:0=甲,1=乙,....9=癸
十二支 = (mj+10) % 12
  ただし:0=子,1=丑,....11=亥

九星のルール
ややこしいのが九星です。ここでは”天象学会”出版の『萬年暦』にそって話をします。(他にもルールがあるらしいですが、どういうものか知りません。)

九星は、毎日数が増える”陽遁”と、毎日数が減っていく”陰遁”があります。

 ┇
 二
 一
11〜1月のある日(甲の日)に切り替え。ここから陽遁

 一
 二
 三
 ┇
 八
 九
5〜7月のある日(甲の日)に切り替え。ここから陰遁
 九
 八
 ┇

この切り替えサイクルが180日です。

┣ 一甲子
┃     180日
┣ 九甲子
┃     180日
┣ 一甲子

ここで不都合が発生。地球の一年は365.xxxと、360日を超えています。この180日(十干十二支九星の最小公倍数だから180日)ということは、2サイクル360日で一年を数えていることになっています。これではズレが大きくなっていきます。日盤のチェンジが2月や3月になる可能性があります。(実際『萬年暦』の日盤のチェンジは5月〜7月、11月〜1月になります。)
そこで!
定期的に60日を足すことになっています。

┃     +30日七甲午 陽遁への切り替え
┃     +30日
┃     180日
┣ 九甲子
┃     180日
┣ 一甲子
┃     180日
┣ 九甲子
┇
┇
┣ 九甲子
┃     180日
┣ 一甲子
┃     180日
┃     +30日三甲午 陰遁への切り替え
┃     +30日
┃     180日
┣ 一甲子
┃     180日
┣ 九甲子
┇
┇

七三甲午が出てくる範囲を大きく見ると、8400日周期になります。

┣ 七甲午 陽遁への切り替え
┃     4200日
┣ 三甲午 陰遁への切り替え
┃     4200日
┣ 七甲午 陽遁への切り替え

夏至冬至±30日内の”甲子”を探す方法では出ません。8400日(4200日)という単位で見る必要があります。

ちなみに、修正ユリウス日がプラスになる範囲において、三碧、七赤の切替日が最初に現れるのは、 220日目 のときです。これは 1859-06-25 で、三碧の日です。

※別の問題について:
日盤切替の問題

生きる、活かす

宇宙(周り)から活かされるためには、自分の生きる力があってこそです。どういう状況であれ、決意・意思を立ち上げましょう。そして目標に向かって歩みましょう。この自分の生きる力を「自力」といいます。自力を出すことによって宇宙が祐(たす)けてくれるようになります。自分が生きてこそ活かされます。それを続けているうちに、他を活かすこともできてきます。これが「生活」です。