排盤引擎驗證報告
“我們的盤是準的”本身沒有意義,能被複核才有。這一頁寫清楚:驗證了什麼、怎麼驗證、結果如何,以及哪些東西沒有被驗證。
驗證了什麼(四項,均為獨立實現)
我們按《紫微斗數全書》安星訣,另寫了一份與排盤引擎(iztro)沒有任何程式碼共享的古典演算法,並逐項與引擎輸出對照:① 命宮地支(生月宮起子時逆數至生時);② 身宮地支(順數至生時);③ 五行局(五虎遁定命宮天干,再取命宮干支的納音五行);④ 紫微星位(局數除生日,不整除則補數,商數從寅起數,補數奇退偶進)。
怎麼驗證
隨機抽取 1930–2029 年的出生日期和 24 個整點,用引擎排盤後與古典演算法對照。閏月按全書口徑(上半月並當月、下半月算下月)。另有專項:農曆年末、早晚子時、閏四月、閏二月(閏與非閏的區別)、正月初一後立春前(年界)、1900 年與 2099 年的極端日期。
結果
2026-10-01 執行 3000 個隨機樣本:命宮、身宮、五行局、紫微星位的不符數均為 0;全部邊界專項通過。
這次驗證發現了什麼
驗證指令碼的升級本身暴露了一個問題:此前的驗證只對照了命宮與身宮,紫微星位用的是“由引擎輸出反推出來的基準表”——那隻能防止迴歸,不算獨立驗證;五行局的獨立演算法寫了卻沒有參與對照。現已改為上面四項全部獨立對照。另外,驗證覆蓋的是引擎本身,沒有覆蓋“年界”這條口徑——我們因此發現並改變了預設年界(見《排盤口徑詳解》)。
沒有驗證什麼
星曜的廟旺利陷、四化表、輔星煞星的安放、大限與流年的細節,以及不同流派之間的差異,目前沒有做同等級別的獨立驗證;真太陽時模組另有一組斷言(歷史夏令時、跨日、均時差量級、晚子時),但它是我們自己的實現。AI 解讀與知識庫文字不屬於“排盤正確性”範疇,也沒有被這套驗證覆蓋。
如何複核
驗證指令碼隨站點一同維護。如果你是研究者或開發者,希望拿到指令碼、樣本和逐例結果自行復核,請通過頁尾的聯絡方式聯絡我們。發現與其它軟體不一致的命例,歡迎把出生資訊(可脫敏)發來,我們會逐例排查並公開結論。
問:你們的排盤引擎是自己寫的嗎?
不是。排盤使用開源的 iztro,農曆換算使用 lunar-javascript;我們做的是口徑選擇、真太陽時、以及獨立的驗證。
問:驗證通過是不是說明所有細節都對?
不是。只說明命宮、身宮、五行局、紫微星位這四項與古典公式一致。其它部分見“沒有驗證什麼”。