月齢

月齢(げつれい)には、次のような意味がある。

  • 暦法における月齢。本項で解説。
  • 年齢単位で表したもの。主に1歳未満の赤ちゃん家畜に対して使用される。

暦法における月齢(げつれい)とは、直前のの瞬間からの経過時間をを単位として表したものである[1]。通常「ある日の月齢」といえばその地域の標準時正午の月齢である[2]。したがって、朔の瞬間の時刻によって月齢には後述するように小数で表される。

月齢と月相

月齢はおおむねの満ち欠け(月相)と連動するため、月相の目安として用いることができる[2]。ちなみに通常、月相は太陽と月の黄経差を28分割した整数で表すのに対し、月齢は小数点以下第1位まで求める。

  • 朔(新月)、月齢 0
  • 三日月、月齢3[1]
  • 上弦、月齢6.6から8.2[3]
  • 望(満月)、月齢13.8から15.8[3]
  • 下弦、月齢21.4から22.8[3]

ただし、月齢と月相の対応は一定ではなく、例えば、望の瞬間の月齢は13.8から15.8の間で変動する。すなわち、月齢14の日が満月とは限らない。これは月の軌道楕円であるため、満ち欠けの速度が一定にはならないこと、さらに月の近地点が太陽の摂動により移動していることによる[3][4]

旧暦との関係

旧暦では朔日天保暦では朔の瞬間を含む)が第1日目である[5]。したがって、月齢の端数を四捨五入して1を足せば旧暦の日付とおおよそ一致する。ただし、朔の瞬間が午後の場合は、月齢をにはせず、その旧暦月1日の正午月齢は前月の最終日の翌日の数値(正の値)とする。

具体的な月齢の計算結果は以下のようになる。

朔の瞬間の時刻t
(旧暦1日)
旧暦の日付ごとの月齢
1日2日3日4日5日6日7日8日9日10日n日

0:00≦ t ≦1:120.51.52.53.54.55.56.57.58.59.50.5+n-1=n-0.5
1:12< t ≦3:360.41.42.43.44.45.46.47.48.49.40.4+n-1=n-0.6
3:36< t ≦6:000.31.32.33.34.35.36.37.38.39.30.3+n-1=n-0.7
6:00< t ≦8:240.21.22.23.24.25.26.27.28.29.20.2+n-1=n-0.8
8:24< t ≦10:480.11.12.13.14.15.16.17.18.19.10.1+n-1=n-0.9
10:48< t ≦12:000.01.02.03.04.05.06.07.08.09.00.0+n-1=n-1.0

12:00< t ≦13:12前月
末日

月齢
+1
1.0+n-2=n-1.0
13:12< t ≦15:360.91.92.93.94.95.96.97.98.90.9+n-2=n-1.1
15:36< t ≦18:000.81.82.83.84.85.86.87.88.80.8+n-2=n-1.2
18:00< t ≦20:240.71.72.73.74.75.76.77.78.70.7+n-2=n-1.3
20:24< t ≦22:480.61.62.63.64.65.66.67.68.60.6+n-2=n-1.4
22:48< t <24:000.51.52.53.54.55.56.57.58.50.5+n-2=n-1.5

グレゴリオ暦からの月齢計算

グレゴリオ暦の日付 ymd 日から月齢 age 日を求める略算法として、堀源一郎が1968年に『天文月報』で発表した簡易月齢計算法がよく知られている[6]

  • 西暦年数 y から 11 を引き、その値を 19 で割った余りを求め、11 を掛ける。この値を a とする。
  • 月数 m から、下表によって b を求める。
月 (m)123456789101112
b0202245678910
  • b は、6月までは「おにおににし (020224)」と語呂合わせで覚え、7月以降は m−2 として求める。a+b に日 d を加える。求めた値を 30 で割った余りが、その日のおおよその月齢である。ただし、最大 2 程度の誤差がある。

上の内容を数式にしたのが、次式である。ymd 日の月齢 age 日を求める。ここで、% は剰余演算子とし、b(m) は上表による値とする。例: 62%30 = 2、b(5) = 2。

age = (((y−11)%19)×11+b(m)+d)%30

また,次の「満月方程式」によって、m 月の満月の日 D を求めることができる[7]。これは非常に簡単だが、やはり数日の誤差がある。

D = (pm)%30

ここで、p は、2020年は 12、2021年は 1、2022年は 20、…… と、年ごとに 11 ずつ引いていく。引けなくなったら 30 を足してから 11 を引く。

脚注

関連項目

外部リンク