MoonA
月齢
旧暦の暦がつくりたくなったので(六曜をしりたくなったので)月齢の計算式がきになったので調べてみた
まんまのGITがここに
$ pip3.9 install git+https://github.com/fgshun/qreki_py.git@v0.5.1#egg=qreki
http://koyomi8.com/reki_doc/doc_0250.htm
ユリウス暦で調べる
JDE= 2451550.09766+29.530588561*K + 0.00015437*T^2 - 0.000000150*T^3 + 0.00000000073*T^4 らしい Tは、J2000.0 からのユリウス世紀 J2000.0 = JD2451545.0 = 2000年1月1日12:00の事
*jy は ユリウス年 jc = jy /100; jd = jy * 365.25; moon_ege = ( jd + 2451544.5 - ( 2451550.09766 + 0.00015437 * jc * jc - 0.000000150 * jc * jc * jc + 0.00000000073 * jc * jc * jc * jc) ) % 29.530588561;
Key words は
海上保安庁水路部 略算式
- https://github.com/komasaru/CalendarPy/tree/master/ephemeris_jcg_i
- https://www1.kaiho.mlit.go.jp/KOHO/
- http://www.kotenmon.com/cal/jpl_DE.htm
日の出・日の入りの計算―天体の出没時刻の求め方
ユリウス日
https://eco.mtk.nao.ac.jp/koyomi/wiki/A5E6A5EAA5A6A5B9C6FC.html
Maxima で
^ ## f(x):= ( x + 2451544.5 - ( 2451550.09766 + 0.00015437*(x/36525)*(x/36525) - 0.000000150* (x/36525)*(x/36525)*(x/36525) + 0.00000000073 * (x/36525)*(x/36525)*(x/36525) *(x/36525) )); (%i1) f(x):= ( x + 2451544.5 - ( 2451550.09766 + 0.00015437*(x/36525)*(x/36525) - ( 0.000000150 * (x/36525)*(x/36525)*(x/36525)) + (0.00000000073*(x/36525)*(x/36525)*(x/36525)*(x/36525)))); (%i11) solve(f(x)=0,x);