通过MCP连接 →

输入计算

数学公式

广告

结果

公历日期
11 August 3114 BC
Long Count 0.0.0.0.0
儒略历(推算) 6 September 3114 BC
儒略日数 584,283 days
卓尔金历数字 4
卓尔金历日名 Ahau
哈布历日数 8
哈布历月名 Kumku
历法轮 4 Ahau 8 Kumku

这个换算器有什么用

本工具可将中美洲玛雅文明的长计历日期——以「Baktun.Katun.Tun.Winal.Kin」的形式书写——换算为对应的西方历法日期。它会给出推算公历(proleptic Gregorian)日期、推算儒略历(proleptic Julian)日期、儒略日数(Julian Day Number),以及在两套玛雅周期历中的对应位置:260 天的卓尔金历(Tzolkin)和 365 天的哈布历(Haab)。整个换算只用到通用的算术运算,因此全球通用,不依赖任何特定国家或地区的规则。

使用方法

从下拉菜单中分别选择长计历的五个位数。请注意,Winal 这一位只能取 0 到 17,因为每 18 个 Winal 才凑足一个 Tun。接着选择一个对应常数(correlation constant):GMT(584283) 是现代的 Lounsbury/修正版 Goodman–Martinez–Thompson 值(默认选项,对应周期结束日为 2012 年 12 月 21 日);GMT(584285) 则是经典 GMT 值(对应 2012 年 12 月 23 日)。这两者恰好相差两天。

公式解析

首先,长计历会按各位数的天数权值换算为天数总和 D:Baktun = 144,000、Katun = 7,200、Tun = 360、Winal = 20、Kin = 1。儒略日数为 $$\text{JDN} = D + \text{GMT}$$ 对应值,其中对应值即原点 0.0.0.0.0 所对应的儒略日数。其中 $$\begin{gathered} \text{JDN} = D + \text{GMT} \\[1.5em] \text{where}\quad \left\{ \begin{aligned} D &= 144000\,\text{Baktun} + 7200\,\text{Katun} \\ &\quad + 360\,\text{Tun} + 20\,\text{Winal} + \text{Kin} \end{aligned} \right. \end{gathered}$$ 再用 Fliegel–Van Flandern 整数算法把 JDN 转换为公历日期,并用一套类似的算法换算推算儒略历日期。卓尔金历与哈布历的位置则由 D 的模运算得出,并以原点对应 4 Ahau 8 Kumku 作为锚点。

从长纪历到儒略日数,再到公历和儒略历日期的流程
将长纪历天数加上 GMT 相关常数即得儒略日数,再对应到日历日期。
玛雅长纪历五个单位及其金值的图示
长纪历的五个位值:1 巴克盾 = 144000 金,1 卡盾 = 7200,1 盾 = 360,1 维纳尔 = 20,1 金 = 1。

实例演算

以长计历 13.0.0.0.0 配合 GMT(584283) 为例。$$D = 13 \times 144{,}000 = 1{,}872{,}000 \text{ 天}$$ $$\text{JDN} = 1{,}872{,}000 + 584{,}283 = 2{,}456{,}283$$ 对应公历的 2012 年 12 月 21 日。此时历法轮(Calendar Round)回到著名的 4 Ahau 3 Kankin。

常见问题

为什么会有两个对应常数?学界对于究竟哪一个儒略日对应玛雅历原点仍有争议。584283 与 584285 是被引用最多的两个数值;它们会让每个西方日期相差两天,但卓尔金历与哈布历的名称不变,因为这两套历法只取决于 D。

这里的公历和儒略历有什么区别?两者都是把现代历法向过去回推得到的结果。对于 1582 年之前的日期,推算儒略历与推算公历之间的天数差会随时间逐渐增大。

公元前 1 年是如何处理的?算法内部采用天文纪年法,即第 0 年等同于公元前 1 年,最终显示结果时会把非正数的年份转换为「公元前(BC)」标注。

最后更新: