年柱如何计算
从出生地历史时区、精确立春时刻和六十甲子顺序,说明八字年柱的计算步骤及边界核验方法。
概览
八字年柱不在公历一月一日更换;按照 OpenFate 的标准口径,也不等到农历正月初一,而是在立春的精确交节时刻切换。计算前先根据出生地和当时有效的历史时区,把出生记录还原成可比较的唯一瞬间,再与同一时间基准下的立春时刻比较。交节前仍属于上一个干支年,交节当时及之后进入新的干支年。年干还是月干序列的起点,所以年界发生变化后必须重新推导月柱,不能只替换显示出来的年柱。
概念速览
- 标准年界
- 立春精确交节时刻
- 不是年界
- 元旦或农历正月初一
- 立春之前
- 沿用上一个干支年
- 立春当时及之后
- 进入新的干支年
- 循环结构
- 十干十二支共同形成六十组
- 依赖结果
- 年干改变后需要重算月干
先把出生记录还原成确定瞬间
民用日期和钟表时间不一定对应唯一的时间轴瞬间。必须先确认来源历法、出生地、IANA 历史时区、当天 UTC 偏移,以及是否明确启用真太阳时,才能与立春比较。
如果出生时间落在夏令时重复或不存在的时段,需要先消除歧义。把今天的时差套到历史日期上,可能让边界出生落到错误的一侧。
- 同时保存原始记录和转换轨迹。
- 不能仅凭经度猜测时区。
比较立春瞬间,不用整天代替
立春是二十四节气之一,由太阳到达指定黄经定义。它每年的本地时间不同,因此不能把固定的二月某日或午夜当成通用切点。
出生与交节必须使用同一种时间基准,并声明“正好等于交节”如何处理;OpenFate 把交节时刻视为新八字年的开始。
- 使用可以追溯来源的交节时刻。
- 测试交节前、交节时和交节后。
把有效年份映射到唯一干支组合
年界确定后,再从有记录的基准年计算六十甲子索引。天干和地支必须同步前进,不能从两个无关表格中任意组合。
早于基准年的年份需要非负取模;如果得到阴阳不匹配的干支组合,通常说明索引或数据出现错误。
- 把基准年和索引规则一起版本化。
- 检查相邻年份和六十年回归。
重算依赖的月柱并保留边界证据
年柱并非孤立标签。年干决定月干序列起点,月支由所在节令区间决定;如果立春让年干改变,月柱必须从解析后的状态重新计算。
若出生时间的不确定范围跨过立春,应展示两张有清晰标签的候选盘,而不是暗中选择。保存交节时间、时差、政策和边界距离,结果才能复核。
- 不可只修改画面上的年柱。
- 仅在真实跨界时生成候选盘。
来源与编辑依据
- Hong Kong Observatory: The 24 Solar Terms香港天文台以太陽黃經界定二十四節氣並提供立春交節資料,支持以精確瞬間而非元旦、農曆初一或固定日期判定年界香港天文台对二十四节气、黄道每十五度分段,以及十二中气与十二节气交替排列的官方天文说明。
- Hong Kong Observatory: Heavenly Stems and Earthly Branches香港天文台列出十干、十二支與六十干支的標準次序,提供年干支共同遞進及循環核驗基礎香港天文台对天干地支标准次序、干支纪日与六十甲子的现代官方说明。
- OpenFate 编辑方法说明OpenFate 公開引擎不變式驗證年柱在立春前後恰好前進一個六十甲子索引,並由新年干重新推導月干OpenFate 将确定性的排盘计算、传统解释框架与现代编辑说明分开处理。