我是靠谱客的博主 自然机器猫,最近开发中收集的这篇文章主要介绍java经纬度计算距离_如何计算太阳赤纬,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

上次讲到赤经和赤纬。这次一起来算太阳的赤经吧~

写在前面的话:

这一系列纯属自己推着玩(大概是无聊),并不是对权威公式的讲解,虽然会对结果进行验证,但是难免会有不少出入,如有误导请谅解哦~

以下正文:


你们(其实是我)可能会想,太阳比地球大那么多诶,怎么标得出太阳的经纬?

d12311e088749d8e5f73d51a0aec7aa3.png

其实我们只要看太阳直射点就行了。当我们抬头直直望向天空,视线正对太阳的中心,那我们站着的位置就是太阳直射点,这个位置在地球上的经纬度就是太阳在天球上的经纬度。

23bb3b4214a150be5022f59c37fbbf3d.png

接下来的有点难以描述,需要一些想象力。

我们知道,地球是绕着太阳,以黄道面为轨迹平面旋转的。但是愚蠢的人类就是喜欢以自我为中心(不),所以我们以地球为中心,南北极为轴建立了天球。我们必须要想象成太阳绕着地球旋转,旋转轨迹的平面就是黄道面。

e65889eba697baa95f1b65adabbc7bf8.png

此后我们就假设太阳绕着地球旋转。

所以我们要怎么计算太阳的赤纬呢?

回忆起纬度就是 所在点与地球球心的连线 与 赤道面 的夹角,我们可以得到下图:

3937be285c4e9fdcf464a3b904d355e7.png
图太小了看不出来,实际上那条短虚线我是取黄线上的点作垂直于赤道面的线,垂足并不在赤道上

因为太阳要转整整一年才能绕地球一圈,所以可以判断一天之内(也就是地球自转一周)太阳的赤纬是不会发生什么变化的。如此一来我们就可以选一个最便于观测的参考时间来计算赤纬。我们知道,当我们所在的地方时间是正午12点,那说明太阳直射点此刻就在所在地的这条经线上。

2848b011e891359f4423833b38e9e132.png
这是从北往南看的俯视图,不是上北下南的侧面图

所以我们在赤道上随便找一参考点观察它在正午时与太阳直射点的距离,就能够得到图中的:

4caac9f16a864bbfcfd5ce150bcf2d6a.png

我们也知道,春分和秋分时太阳直射在赤道线上。

ae8a2403409ff0647c3fa1ba5edcbd73.png
盗了一张不知哪来的图

所以为了方便我们以3.21为起始日期t=0。

用三维球体来计算实在是麻烦又没必要,为了方便我们把参考点和太阳直射点投影到二维的地球上:

f09b1cd714cf0f8054508c09dbaf5d8d.png
这是前面那张三维图的正面投影,再次申明L是特意作成垂直于红线(赤道面)的,要想作成垂直于黄道面也可以

注意这里用直线距离L并不是对弧线的近似,不需要近似。

怎么知道x的长度呢?我们从俯视角度看黄道面:

ff1e7c796ded83dd8bcfe13a97f18749.png

因为黄道面穿过地球球心,所以它的半径就是地球半径。

最后我们算太阳赤纬:

9efcb63e4a4b75325f6b31ef892e73cd.png

c4520260f12a4090b8b8c96860ab1af3.png

进行验证:

06026e6e957bacb5a77dcced05a497b2.png

对5月5号有,

904c36170ff32e2a68095f2a87d5d164.png

对12月22号有,

c41a93b5313088318b948f7176204b9b.png

最后放上官方公式:

31bd018c24d13c411e7314a08f5cfc72.png

其中EL指黄道经度,以春分点为0,“由天体向东量度至春分点的角距离”(源自百度百科:黄经)。那我觉得我的公式和官方应该是一个意思。


参考资料:

En.wikipedia.org. (2019). Ecliptic. [online] Available at: https://en.wikipedia.org/wiki/Ecliptic [Accessed 3 Jul. 2019].

En.wikipedia.org. (2019). Ecliptic coordinate system. [online] Available at: https://en.wikipedia.org/wiki/Ecliptic_coordinate_system#Spherical_coordinates [Accessed 3 Jul. 2019].

En.wikipedia.org. (2019). Position of the Sun. [online] Available at: https://en.wikipedia.org/wiki/Position_of_the_Sun#Declination_of_the_Sun_as_seen_from_Earth [Accessed 3 Jul. 2019].

最后

以上就是自然机器猫为你收集整理的java经纬度计算距离_如何计算太阳赤纬的全部内容,希望文章能够帮你解决java经纬度计算距离_如何计算太阳赤纬所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部