与这个关于查找给定日期和坐标的太阳方位角和仰角的非常有用的问题相关。我希望找到相反的:时间和日期太阳将在天空的那个位置。
因此,我想知道是否有人可以帮助解决现有公式或修改链接到的公式。
我目前的想法是采用两个范围,两者都有几度的变化,一个用于方位角(120-123 度)和仰角(18-21 度)。然后编写一个算法来遍历所有天/时间,并检查给定范围是否存在于当天的某个时间。循环这些天并使用附加的算法并不能完全保持大 O 小,也不会是最好的性能。
任何帮助或提示,请。
谢谢。
这里有一些有用的东西(请参阅链接 - 特别是 [12]-[15])
https://en.wikipedia.org/wiki/Position_of_the_Sun
一个问题是,如果您使用它来确定诸如“哪几天太阳会直接在公元前千山巨石阵的‘脚后石’上方”之类的事情,那么除了岁差和/或之外,还会有很多错误来源章动(地震改变了地球的自转周期,当太阳接近地平线时,你会得到一些显着的折射)。还有http://www.stargazing.net/kepler/sun.html。但是,由于太阳处于特定位置的日子和时间很多,因此猜测日期和时间窗口然后迭代地进行牛顿式近似的方法可能是最好的。也许如果你能提供更多关于你为什么试图找到答案的信息(即“橡树的影子什么时候落在埋藏的宝藏上......”),
经过一番思考,你可以得到这样的日期:
if (ang>=0.0) date = (21.March) +ang*(21.June -21.March )/(23.4 degrees);
else date = (21.September)-ang*(21.December-21.September)/(23.4 degrees);
如果您在天文中午测量太阳高度(在您的纬度),那么:
ang = height - (90 degrees - your latitude)
要计算白天的时间,您需要寻找
不要忘记这种方法不包括岁差,章动......