更に修正を加えました
気温は22℃とそんなに暑くはないのですが空がどんよりとして蒸しています。この土日はこんな天気のようですが、来週は晴れて暑くなるようで梅雨入りはまだ先になりそうです。
先の記事の復活祭の日にちに関して東方教会系の日取りの計算方法を調べている内に西方教会系の日取りの計算についても誤りがありましたので修正しました。
どうもイースター(復活祭)の日取りを決める上でキーとなる「春分の日」や「満月」というのは天文学上の定義ではなく、教会で使われる暦の定義を使用しているようです。そして、天文学的な計算をするのではなく、ある数式を適用することで日取りが求められるとのことです。
国立天文台のHPに在ったその計算式とは以下のようなもので、西暦Yを与えることでMとDがイースターの月と日になります。
Y年のイースターの日付をM月D日とすると、
ただし、÷は小数点以下を切り捨てる整数演算、%は剰余を求める整数演算で、たとえば2013÷100=20、2013%19=18となります。
- G = Y%19
- C = Y÷100
- K = (C-17)÷25
- H = {19×G+15+C-C÷4-(C-K)÷3}%30
- I = H-(H÷28)×[1-{29÷(H+1)}×{(21-G)÷11}]
- J = (Y+Y÷4-C+C÷4+I+2)%7
- L = I-J
- M = 3+(L+40)÷44
- D = L+28-31×(M÷4)
内容はまったく理解できませんが、その通りスクリプトを組むことで日取りを求めることができました。
先の記事の追記に書いたのですが、月と太陽の黄経差を求める*1ことで「満月」の日取りを正確に求めるスクリプトを作ったのですが、このイースターの件では使うことはなくなりました。ただ、月名の欄に在る「新月」「上弦の月」「満月」「下弦の月」の表示に適用することで、それまで在った2030年までの制限を除くことが出来たのでそれなりの成果とはなりました。
尚、東方教会系の復活祭の日取りを求める規定を見つけることは出来ず終いでした。
コメントする