计算方法是利用寿星万年历
以地球中心为原点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度即可,当然……
实际上这很难算准……因为日出时间受地球公转影响,地球公转轨道有近日点和远日点.
地球的公转速度在近日点最大,远日点最小……所以大约在冬至(近日点附近)时,每过一天日出时间就提早1分钟左右~而相反在夏至(远日点附近)那几天日出时间变化幅度很小,大约5、6秒左右……所以我建议你还是去查比较好~
推荐两个查询日出日落时间的网站