之前曾经得到过一条计算夏至精确时间的公式,现在检验一下(之前推导是根据了2009年的数据)

公元Y年的夏至日期为该年的6月
$21.9938+0.2422Y-\lfloor Y/4 \rfloor-\lfloor Y/400 \rfloor+\lfloor Y/100 \rfloor$
其中$\lfloor x \rfloor$表示整数部分。

将Y=2011代入上式,得到22.058,即6月22日1时23分,通过查阅《寿星万年历》得到的数据6月22日1时16分29秒。

这表明,误差并不是十分大,看来公式具有实用性,于是尝试下提高数据的精确度。把0.2422改成0.24219879,将21.9938改成21.991346736。即

$21.991346736+0.24219879Y-\lfloor Y/4 \rfloor-\lfloor Y/400 \rfloor+\lfloor Y/100 \rfloor$

现在已经拟合了2011年的数据,检验一个比较远的年份(2020)。代入后得到21.232902536,即21日5时35分22秒;同样查《寿星万年历》得到21日5时43分33秒。由此可以看出,提高初始数据精度能够提高计算的精度(原来一两年就误差几分钟,现在10年才有同样的误差),但是误差还是有的,因为这条公式考虑的是无摄动模型。(注:修正后的数据的观测地点是BoJone的家乡,即广东云浮,不同于其他地方)

实际上,这里采用的算法并非真正意义上的天体力学计算,仅仅是利用取整函数把现行的公历历法表达出来了而已。如果仅仅需要精确到日,那么未来几百年内用这条公式都应该没有问题。
留给大家一个问题:实际上还可以利用插值法继续提高精度,例如可以假设Y年的误差$\Delta T_Y \propto (Y-2011)^a$,a是一个常数,当然a<<1(a肯定随时间变化,但是变化应该比较慢,否则每年的长度都有很大变化了),用其他年份的数据进行对比修正。读者可以动手试一下,可以看下谁拟合的公式最精确?


转载到请包括本文地址:http://spaces.ac.cn/archives/906/

如果您觉得本文还不错,欢迎点击下面的按钮对博主进行打赏。打赏并非要从中获得收益,而是希望知道科学空间获得了多少读者的真心关注。当然,如果你无视它,也不会影响你的阅读。再次表示欢迎和感谢!