多年以來,大部分網路上的農曆應用程式都採用相似的方法:利用預先建立的查找表(Lookup Table)或現成函式庫,將公曆日期直接轉換為農曆日期。
這種方式足以滿足日常查詢需求,但當涉及曆法研究、東方術數或學術用途時,便容易暴露出許多限制。
Quizzman Calendar Engine(Quizzman 曆法引擎) 採取完全不同的設計理念。
它並非單純「查詢曆法」,而是依照天文學原理重新計算整個曆法系統,讓 Quizzman 生態系中的所有工具都建立在同一套可驗證、可重現且一致的資料來源之上。
它不只是日曆,而是整個 Quizzman 東方研究平台的 Calendar Infrastructure(曆法基礎設施)。
設計理念
Quizzman Calendar 並不是為了提供「黃道吉日」而建立。
它的目標包括:
- 以天文學重新建構東亞曆法。
- 公開所有演算法。
- 所有結果皆可驗證。
- 易於擴充各種研究模組。
- 不依賴任何封閉資料來源。
因此,Calendar Engine 成為下列系統共同使用的核心:
- 易經(I Ching)
- 八字(BaZi)
- 紫微斗數(Ziwei)
- 風水(Feng Shui)
- 黃曆
- 干支
- 二十四節氣
- 歷史曆法研究
所有模組共享同一套曆法核心,因此不會因不同工具而出現日期或干支不一致的情況。
不採用查找表
許多現有曆法系統都預先儲存每一年的資料,例如:
- 2024 → 2024 年資料
- 2025 → 2025 年資料
- 2026 → 2026 年資料
優點:
- 執行速度快
- 實作容易
缺點:
- 難以延伸到更久遠的年代
- 無法支援歷史研究
- 無法解釋結果如何產生
- 維護成本高
Quizzman 採用完全不同的方法:
所有曆法資訊皆由演算法即時計算,而非直接讀取預先建立的資料表。
因此系統可以支援極大的時間範圍,同時保持一致性與可驗證性。
天文演算法才是核心
傳統曆法本質上就是天文運動的結果。
因此 Calendar Engine 將天文學作為第一層運算。
整體 Pipeline(處理流程) 如下:
UTC
↓
Julian Day
↓
ΔT
↓
Solar Longitude
↓
二十四節氣
↓
干支
↓
農曆
↓
各種東方研究 Engine(引擎)
每一個步驟都可以與現代天文模型相互驗證。
VSOP87-太陽位置模型
Calendar Engine 的核心之一,是 VSOP87(行星軌道解析模型)。
VSOP87 是目前天文學中廣泛採用的數學模型,可高精度計算太陽系行星的位置。
在 Quizzman 中,它主要用於:
- 計算太陽黃經
- 推算節氣時刻
- 春分、秋分、夏至、冬至
- 年週期運行
由於直接採用天文模型,因此不需要依賴任何固定資料表。
Julian Day-天文時間標準
所有曆法計算都先轉換成 Julian Day Number(儒略日)。
Julian Day 是國際天文學界普遍使用的連續時間標準,可避免:
- 格里曆(Gregorian Calendar)
- 儒略曆(Julian Calendar)
- 閏年
- 曆法改革
所造成的影響。
完成轉換後,再繼續計算:
- 干支
- 節氣
- 朔(日月合朔)
- 望(月望)
- 農曆月份
如此即可保證所有模組使用完全一致的時間基準。
依太陽黃經計算二十四節氣
二十四節氣並非固定日期。
Calendar Engine 會計算太陽黃經到達:
- 0°
- 15°
- 30°
- …
- 345°
的精確時刻。
因此節氣完全依照天文現象決定,而不是查詢固定日期。
精確的干支系統
Quizzman 的干支系統不只支援:
- 年柱
- 月柱
- 日柱
還可計算:
- 時柱
- 節氣交接
- 曆法週期
因此八字、紫微斗數與易經等模組皆可共用同一套干支資料。
支援歷史時區
歷史上的越南與中國並非一直使用相同時區。
若一律固定採用 UTC+7 或 UTC+8,便可能造成歷史日期錯誤。
Quizzman Calendar Engine 支援歷史時區(Historical Time Zone,歷史時區)模型,可重現不同歷史時期的實際時間制度,方便歷史曆法研究。
精度設計
Calendar Engine 採用以下流程:
計算 → 驗證 → 比對 → 校正
所有結果皆會與:
- 天文模型
- 曆法資料
- 學術研究
- 公開參考資料
互相比較。
Quizzman 並非試圖建立另一套曆法,而是建立一套可解釋、可驗證的曆法系統。
在節氣、太陽黃經等天文計算中,實際精度取決於所採用的模型與 ΔT 等修正參數;對教育、研究與東方曆法應用而言,皆具備足夠的準確度。
Quizzman 生態系中的角色
Calendar Engine 並非獨立存在,而是所有東方 Engine(引擎)的共同基礎。
Quizzman I-Ching Engine(易經引擎)
提供:
- 干支
- 日辰
- 月建
- 節氣
- 起卦時間
Quizzman Bazi Engine(八字引擎)
提供:
- 四柱
- 大運
- 流年
- 藏干
Quizzman Ziwei Engine(紫微斗數引擎)
提供:
- 農曆
- 閏月
- 排盤
- 局數
Quizzman Almanac(黃曆系統)
提供:
- 黃曆
- 建除十二神
- 節氣
由於所有模組皆共用同一套 Calendar Engine,因此可避免資料不一致。
Engine(引擎)導向架構
Quizzman Calendar 並不是網站,而是一套真正的 Engine(引擎)。
它提供:
- API(應用程式介面)
- 演算法
- Calendar Core(曆法核心)
- Time Engine(時間引擎)
- Astronomy Engine(天文引擎)
- Conversion Engine(曆法轉換引擎)
因此其他 Quizzman 應用程式都能直接重複利用,而不需要重新開發曆法演算法。
透明且可驗證
Quizzman 的核心理念之一,就是拒絕把曆法做成「黑盒子」。
每一項結果都應具備:
- 可解釋
- 可驗證
- 可重現
- 可擴充
這對東方學研究者、教師、開發者及希望深入理解曆法原理的使用者都十分重要。
未來發展方向
Quizzman Calendar Engine 將持續朝以下方向發展:
- 擴展歷史曆法計算範圍。
- 引入更多高精度天文模型。
- 提升大規模計算效能。
- 與易經、八字、紫微等 Engine 深度整合。
- 建立完整技術文件,公開架構與演算法。
結語
Quizzman Calendar Engine 並不只是公曆與農曆轉換工具。
它是一套以天文學為基礎建立的 Calendar Engine(曆法引擎),融合 Julian Day(儒略日)、VSOP87(行星軌道模型)、干支 與 二十四節氣 等核心技術,致力於打造一個精確、透明、可驗證且可重複利用的現代曆法基礎設施,作為 Quizzman 東方研究與教育平台的重要核心。