弘易团队论坛、六爻占卜预测、风水堪舆策划服务

 找回密码
 注册会员
搜索
查看: 1305|回复: 0

天文算法讨论

[复制链接]
发表于 2014-10-31 21:27:56 | 显示全部楼层 |阅读模式
几个月前,增编写个一个农历计算javascript程序,那是我的第一个农历程序。为了实现其中的算法,曾花费了好几个星期的时间研究天文计算相关的原理,当我算出结果之后,对程序的结果仍然没有信心。不过,在“春光”老师介绍《天文算法》一书之后,我认真阅读并翻译全书之后,我知道,我的算法基本上没有错误,但同时也认识到,天文学家们的算法的确高明,比我当时的算法好得多。如果你也对天文计算感兴趣,那就很有必要学习他们的先进思想方法。
当然,重要的是他们的思想方法以用相关的理论,而不一定是他们的计算结果。因为,《天文算法》一书是早期出版的,有些数据比较旧,造成精度不一定很好。如果你对计算精度要球特别高,可能需要更换一些数据,但数据的处理的思想方法及技巧是一样的。
国内不少网友对天文计算比较感兴趣,却又不知如何下手。问题出在哪里呢?为什么苦苦研究几个月甚至几年也没有进展?主要原因是国内有关的书籍太少,业余条件下没有机会学习到天文计算的理论。在我们国家,有不少机构对天文学有深入的研究,比如天文台、一些大学等,可他们不太愿意出版天文算法之类的书籍(这类书籍销量少,出版要赔钱的)。既然如此,就让我们自已想办法解决问题吧。
首先,我认为需要掌握一定的计算机程序设计技术,不要求很利害,但起码也要有几个月的程序设计经验。我如你不会程序设计,那你只能用Excel或计算器之类的工具来处理计算问题,那简直是在浪费你的生命。
其次,应掌握《高等数学》中的一些知识。比如:极限、导数、微分、积分、极值问题、求根问题、最小二乘法、向量数学等。当然,我们更多使用高中的《立体几何》、《解析几何》、《函数》、《三角函数》等有关知识。还应了解《球面三角学》里的几个公式。
其三,《数值方法》这类书籍是必须读的。
其四,需对物理学有所了解,尤其是运动学相关知识。当然,如果你想用数值积分的方法解决天文计算问题,《理论力学》甚至是《天体力学》也是有必要了解的。
对于多数具有大学学历的人来说,基本具备以上知识,也就是说,只要你有兴趣,就完全可以进行天文计算。从本质上讲,日月动动、行星运动主要使用“牛顿力学”及数学方法(如微积分),在牛顿那个年代,力学理论、数学理论、计算工具等都不可能和现在相比,在那个年代,就连“除法问题”主要是“教授”们才能掌握的!他们可以计算天体运动问题,我们为什么就不可以呢?只要有信心,或多或少可以解决问题。
相反,如果根本没有学过《高中数学》《高中物理》《高等数学》,我建议你还是花点时间学习一下(弄不好要花费一两年时间),否则,即使用算出了结果,也很难对你的算出的结果形成理性的认识,甚至是感性的认识也谈不上。如果你不想学习这些“无用”的东西,能不能实现天文算法,或许可以:通过阅读别人的程序。
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|弘易道法团队 ( 桂ICP备2023006885号 )

GMT+8, 2024-9-20 08:38 , Processed in 0.083559 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表