日出日落时间的计算以及中国常见的日出日落时间 以地球中心为原点O,赤道所在平面为XY 平面,东经120 度指向西经60 度为Y 轴正方向
球心指向北极为Z轴正方向
有了Y 轴与Z 轴就可定X 轴的方向(从东经30 度指向西经150 度) 球面方程:X^2 + Y^2 + Z^2 = 1 ( 设地球直径为1) 日出日落时刻圈方程:Y^2 + Z'^2 = 1 (Z'以Z 轴作坐标变换,见下面) Z'=Z*sin(β+90) (β为太阳光直射点纬度) 求纬度α 度时日出时刻
先解出纬度为α 度时的X,Y 坐标
X=sinα*sin(β+90)*cos(β+90)/(cosβ*cosβ) Y=-SQRT(1-X^2-sinα*sinα) (SQRT 为平方根) 有了XY 坐标,求反正切,得出一个角度值(由于在XY 平面内,0 度在X 轴正向,实际的东经120 度在Y 轴负方向上,即 270 度角
所以要换算一下,才能得出经度差) 实算一下:代入杭州的纬度为30
15 度,夏至日时,太阳直射点纬度为23
4333 度
算出X=-0
21835,Y=-0
83578,反正切得出-104
计算时假设杭州在Y 轴负方向上(即 270 度或-90 度)
两者之间相差 14
64 度,换成时间就是 58
(计算出的14
64 度的含义是指,夏至日那天,当赤道上(北纬0 度)东经120 度的地方看到日出时,北纬30
15度,东经(120-14
64)度的地方也正好看到日出
) (换句话说:当赤道上东经120 度的地方看到日出时,北纬30
15 度东经120 度的地方日出已经过去 58
56 分钟了
由于赤道上是昼夜等分的(假设太阳是个点光源),即日出时刻一定在6:00
那么同一经度的北纬30
15 度地方,日出时间是 5:01:26 左