怎样用经纬度计算日出日落的时间
-
怎样用经纬度计算日出日落的时间
下面是一种
随经纬度变化的日出日落时间计算方法
,
我成功运用在一智能路
灯控制器中
,
希望
对需要的朋友有帮助
。
已
知:日出日落时太阳的位置
h
=
-0.
833°
,
要计算地的地理位置
,
p>
经度
Long,
纬度
G1at,
时区
zone,UTo
为
上次计算的日出日落时间
,
第一次计算时
UTo
=
180°
。
(1)
先计算出从格林威治时间公元
2000
年
1
月
1
日到计算日天数
p>
days;
(2)
计算从格林威治时间公元
2000
年
1
月
1
日
到计算日的世纪数
t,
则
t
=
(days+UTo
/
360)
/
36525;
(3)
计算太阳的平黄径
L=280.460+36000.770×
t;
(4)
计算太阳的平近点角
G
=
p>
357.528+35999.050×
t
(5)
计算太阳的黄道经度
λ
=
p>
L+1.915×
sinG+0.020xsin(2G);
(6)
计算地球的倾角
ε
=
23.4393-0.0130×
t;
(7)
计算太阳的偏差
δ
=
arcsin(sinε×sinλ);
(8)
计算格林威治时间的太阳时间
角
GHA
:
GHA=UTo-180-1.915×
< br>sinG-0.020×
sin(2G)
+2.466×sin(2λ)
-
0.053×
sin(4λ)
(9)
计算修正值
e
:
e=arcos{[
sinh-
sin(Glat)s
in(δ)]/cos(Glat)cos(δ)}
(10)
计算新的日出日落时间
UT
=<
/p>
UTo-(GHA+Long±
e);
其中
“+”
表示计算日出时间
,“
-
”
表示计算日落时间
;
(11)
比较
UTo
< br>和
UT
之差的绝对值
,
如果大于
0.1°
即
0
.007
小时
,
把
UT
作为新的日出日落时间
值
,<
/p>
重新从第
(2)
步开始进行迭代计算
p>
,
如果
UTo
和<
/p>
UT
之差的绝对值小于
0.007
小时
,
则
UT
即
为所求的格林威治日出日落时间
;