首先感谢帮我算题的小玉玉~
算了一周的日出日落,倍觉痛苦,写下来防止下次再算。
根据经纬度和UTC计算日出日落的思路、算法及scala代码如下~
日出和日落的计算思路:
- 一天的日出和日落可以根据正午时刻平分昼长得到。
- 正午时刻可以根据所在时区和经度得到。
- 根据经度可以知道所在时区。
- 昼长可以根据太阳赤角和所在纬度计算得到。
符号说明:
rc:日出
rl:日落
zw:正午
day:昼长
zone:时区
δ:太阳赤纬
lon:经度
lat:纬度
N:每年一月一日到当前的天数
b:弧度制