日出日落与月相

选城市或填经纬度,算出当天的日出、日落、昼长、黄金时刻和月相,拍摄和出行前看一眼。

选城市会覆盖经纬度和时区,之后可以继续手改。夏令时地区要自己把时区加一小时。

怎么算的

先用当天在一年中的序号算出太阳赤纬和时差,再由高度角 −0.833° 反推时角,时角每度对应 4 分钟。日出是正午减时角,日落是正午加时角,正午则由经度和时差共同决定,所以同一时区里东边的城市会先看到日出。

民用晨昏用 −6° 高度角,对应天还没黑透、能看清地面轮廓的那段;黄金时刻取 −4° 到 6°,是光线最柔和的区间。纬度越高,太阳升起的倾角越小,晨昏和黄金时刻持续得越久。

月相以新月为起点算相位比例,照亮比例是 (1 − cos(2π × 相位)) / 2。上弦和下弦附近照亮一半,朔望附近接近 0% 和 100%。这个比例是几何值,实际观测时月亮近地点和远地点会让亮面略大一些。

要查某个日期是农历几号、什么节气,用农历查询;换算时间戳用时间戳转换。

常见问题

日出日落按什么标准算?

按太阳上边缘与地平线相切的那一刻,已经算上 34 角的大气折射和 16 角的太阳半径,也就是天文学上常用的 -0.833 度高度角。所以你看到太阳刚冒头,和这里显示的时间基本对得上。

为什么和手机上显示的差一两分钟?

一是经纬度精度,城市中心点和你在的位置可能差几公里;二是海拔,海拔越高日出越早、日落越晚,每 1000 米大约差几分钟;三是算法本身是简化的,误差通常在一两分钟内。要精确到秒得用完整的星历。

黄金时刻是怎么定义的?

这里按太阳高度角在 -4 度到 6 度之间计算,也就是日出后和日落前光线最柔、色温最暖的那一段。不同摄影教程的定义略有出入,有的用 -6 到 6 度,范围会更宽一些。

极昼极夜为什么没有时间?

在极圈内,某些日子太阳整日不落或者整日不升,日出日落方程没有实数解。这时页面会直接标出极昼或极夜,而不是给出一个错误的时间。纬度越高,出现这种情况的日子越多。

月相按什么算的?

以 2000 年 1 月 6 日的一次新月为起点,用 29.530588853 天的朔望月周期推算,得到月龄和照亮比例。误差在一天以内,判断盈亏、安排拍摄足够用,但不适合做天文测量。

时区要怎么填?

填当地标准时区相对 UTC 的偏移,东八区填 8,日本填 9,英国冬令时填 0。夏令时期间要手动加一小时,因为这里只做固定偏移换算,不查时区数据库。