计算高度角

当定义一颗星的升落点时,通常需要考虑大气折射(蒙气差)。这个效应使升起的时间略早于无折射的情况,而下落时间则显得略晚。本项目中计算高度角和天体视运动轨迹时使用同一个大气模型。模型中使用标准大气压,温度为 10°C,由此得到的地平线处折射角约为 34 角分。更多细节请参阅本项目使用的主要 Python 科学包 Skyfield 文档中的计算折射角部分。

日出和日落

定义日出和日落时,不仅包含大气折射,也计入太阳半径。Skyfield 遵循美国海军天文台给出的日出日落定义

出于计算目的,日出日落被定义为……日面中心位于地平线下方 50 角分处……这 50 角分是通过将太阳平均视半径(16 角分)与地平线处平均大气折射角(34 角分)相加得到的。

晨昏时分的天体可见度

美国海军天文台给出的晨昏蒙影定义

日落:
民用晨昏蒙影: 地平线下 0° 至 6°
航海晨昏蒙影: 地平线下 6° 至 12°
天文晨昏蒙影: 地平线下 12° 至 18°
入夜: 地平线下 18°

根据 Tousey 和 Koomen(1953),各晨昏蒙影阶段天体可见度如下:

  • 日出/日落: 此时只有金星、木星等非常亮的星才能肉眼可见。
  • 民用曙光始/民用暮光终: 此时在大部分天区亮于 1 等的星能够肉眼可见。
  • 航海曙光始/航海暮光终: 此时在大部分天区亮于 4 等的星能够肉眼可见。

时区

本项目中调用的时区数据使用的是 Same since 1970” from Timezone Boundary Builder。根据 IANA time zone database,这个数据库该数据库试图记录自 1970 年(Unix 时间戳)以来的历史时区和所有民事变更。

本项目中的时区标识(Time zone ID)和标准偏移量(standard offset)反映某地理位置的当前时区。这是为了保证生成稳定且无歧义的时区标识,同时也为用户提供更熟悉、更直观的当地时间参考。其取值仅用于计算二分二至日期、计算升落时间窗口以及结果表格中标准时这一列的数据显示。

角分和角秒符号

角分和角秒分别使用 ASCII 半角单引号 '半角双引号 " 以适应不同的显示方式。

日期格式

ISO 8601

ISO 8601: 日期和时间格式

# ISO 8601-2:2019
日期和时间: YYYY-MM-DDThh:mm:ss[.sss][Z|±hh:mm]
时间范围: YYYY-MM-DD/YYYY-MM-DD

公历纪元

NASA 关于公历纪元表示方法的约定 解释了使用 BCE/CE 代替 BC/AD 的理由:

近年来,一些历史学者提倡使用宗教中立的缩写词 BCE(公元前)代替“BC”、使用“CE”(公元)代替“AD”。由于这种表示方法的两个缩写都是后缀,因此更适合计算机表格的显示。