这个换算器能做什么
本工具可将西方历法日期(公历或儒略历)换算为希吉来历,即伊斯兰教使用的阴历。希吉来历是一种纯阴历,全年十二个月,月份在 30 天(大月)和 29 天(小月)之间交替;为了让每月之首尽量贴近新月,每 30 年的循环周期中会插入 11 个闰年。你既可以换算单个月份,也可以一次性列出最长一年时间跨度内的每一天。
使用方法
先选择输入的日期是公历还是儒略历(在 1582 年历法改革前后这一点尤为关键),输入公元(A.D.)年份,选定起始月份,再设定要换算的时间跨度,最后选择希吉来历的算法版本(标准、科威特或法蒂玛)。结果会显示起始日对应的希吉来历日期,并附上一张表格,列出该时间段内每一天的星期几和换算后的希吉来历日期,格式为「月份缩写 + 日 + 希吉来历年份(AH)」。
公式解析
两种历法通过儒略日数(JDN,一个连续递增的整数日计数)来搭桥换算。系统先用上述公式把西历日期转换成 JDN,再采用闭式列表算法(科威特算法)把 JDN 映射到伊斯兰历:先扣除已完成的、每个为 10631 天的 30 年循环周期,用剩余天数确定该年在循环中的位置,再经进一步运算得出希吉来历的月份和日期。星期几则由 JDN 对 7 取余得出。
$$\begin{gathered} \text{JDN} = D + \left\lfloor \frac{153m+2}{5} \right\rfloor + 365y + \left\lfloor \frac{y}{4} \right\rfloor - \left\lfloor \frac{y}{100} \right\rfloor + \left\lfloor \frac{y}{400} \right\rfloor - 32045 \\[1.2em] \text{Hijri} = f\big(\text{JDN} - 1948440\big) \end{gathered}$$
换算实例
以公历 2001 年 9 月 11 日为例:\(a = 0\),\(y = 6801\),\(m = 6\),算得 \(\text{JDN} = 2{,}452{,}164\)。代入列表换算后得到:哲马迪·阿色尼月(第 6 月)22 日,希吉来历 1422 年,星期二。因此最终结果为「Jum2 22, 1422 AH」。
常见问题
为什么换算结果可能和我所在清真寺公布的日期不一样?本工具采用的是算术(列表)历法,而真正的宗教节期取决于实地观测新月,两者可能相差约一天。
希吉来历的一天从何时开始?伊斯兰历的一天从前一个公历傍晚的日落起算,因此某个希吉来历日期实际上是从前一天日落延续到当天日落。
三种算法版本有什么区别?它们的唯一差别在于:30 年循环中哪几个年份会在「都尔黑哲月」末尾多加一天,这会让部分换算结果略有偏移。