大家好!我在测试《天文计算》第49章 月亮的升降交点 p260页的习题(49.a 计算1987年5月,月亮经过升交点的时刻)时,我将该书中的计算方法整理如下:
year=1987.37
#k=(year-2000.05)*13.4223
k=-170
T=k/1342.23
D=183.6380+331.73735691*k+0.0015057*T**2+0.00000209*T**3-0.000000010*T**4
M=17.4006+26.82037250*k+0.0000999*T**2+0.00000006*T**3
M1=38.3776+355.52747322*k+0.0123577*T**2+0.000014628*T**3-0.000000069*T**4
O=123.9767-1.44098949*k+0.0020625*T**2+0.00000214*T**3-0.000000016*T**4
V=299.75+132.85*T-0.009173*T**2
P=O+272.75-2.3*T
E=1-0.002516*T-0.0000074*T**2
#以下6行把度数归到0-360
D=D%360
M=M%360
M1=M1%360
O=O%360
V=V%360
P=P%360
#角度中含M或-M时,还须乘上E (原书中的提醒)
JDE=2451565.1619+27.212220817*k
+0.0002572*T**2
+0.000000021*T**3
-0.000000000088*T**4
-0.4721*sin(M1)
-0.1649*sin(2*D)
-0.0868*sin(2*D-M1)
+0.0084*sin(2*D+M1)
-E*0.0083*sin(2*D-M)
-E*0.0039*sin(2*D-M-M1)
+0.0034*sin(2*M1)
-0.0031*sin(2*D-2*M1)
+E*0.0030*sin(2*D+M)
+E*0.0028*sin(M-M1)
+E*0.0026*sin(M)
+0.0025*sin(4*D)
+0.0024*sin(D)
+E*0.0022*sin(M+M1)
+0.0017*sin(O)
+0.0014*sin(4*D-M1)
+E*0.0005*sin(2*D+M-M1)
+E*0.0004*sin(2*D-M+M1)
-(E**2)*0.0003*sin(2*D-2*M)
+0.0003*E*sin(4*D-M)
+0.0003*sin(V)
+0.0003*sin(P)
上述程序(python)计算结果:JDE = 2446939.08436
《天文计算》中的结果: JDE = 2446938.76803
结果不一致,特此请教各位!
我将程序与《天文计算》原书对照了N遍,仍然找不到问题所在!
原书中的公式会不会在哪有问题?
[此贴子已经被作者于2012-11-29 13:38:34编辑过]