修正可能改變日柱或時柱,年柱與月柱仍使用真實物理瞬間。
民用時間與視太陽時處理的是兩種不同時間問題
民用時間由所在地的法律與制度維護,歷史標準時與日光節約時間變化都包含在內。視太陽時則追蹤太陽的表觀運動,太陽通過當地子午線時對應視太陽正午。因此,同一地點與日期的兩種時鐘可能存在差距。
有效的真太陽時計算要從已正確解析的物理時刻出發,不能跳過歷史日光節約時間,也不能把今天的 UTC 偏移視為永遠有效。MingWeave 先依 IANA 時區資料把當地鐘面時間解析成 UTC,再由經度換算地方平太陽時,最後加入均時差。
校正包含經度與均時差兩個部分
經度先把 UTC 物理時刻放到地方平太陽時上:地球約每轉一度需要四分鐘。接著套用均時差,反映地球軌道與自轉軸傾斜造成的平太陽時與視太陽時季節差異。校正有可能跨過午夜,因此日期向前或向後移動都必須被保留。
MingWeave 在追蹤中同時顯示民用時間、解析後的 UTC、經度項、均時差數值,以及最後的視太陽時,並使用版本化公式與明確精度規則。這些細節很重要,因為不同產品雖然都寫著「太陽時」,底層實作可能採取完全不同的捷徑。
- 先用歷史民用時區規則確定真實 UTC 時刻。
- 經度把該時刻換算為地方平太陽時。
- 出生日期決定均時差修正量。
真太陽時何時真的會改變命盤
大多數校正不會跨過日期或兩小時時辰邊界。只有視太陽時越過時辰交界、民用午夜,或在指定設定檔下跨過 23:00 換日點時,日柱或時柱才可能改變。年柱與月柱永遠以真實 UTC 出生瞬間對照節氣,因此真太陽時不會把年、月的天文邊界一起移動。
舉例來說,一筆合成紀錄的民用時間若為 08:05,校正量為負 20 分鐘,工作時鐘會成為 07:45。依預設兩小時映射,這會從辰時退回卯時,因此時柱可能改變。這只是示意機制;真實修正仍取決於日期、經度與當時的歷史時區。
負責任地比較民用時間與真太陽時
先用民用時間預設設定檔計算,再保持所有出生輸入完全相同,切換到真太陽時設定檔。依序核對經度項、均時差、邊界警示與逐柱差異。不要為了得到偏好的命盤而改動出生地或原始鐘面時間。
城市資料庫中的座標通常代表一個地點中心,並不是產房等級的精確位置。MingWeave 會在適當時顯示地點精度警示。如果校正後時間非常靠近邊界,可以測試合理的座標與鐘面誤差範圍,並把結果描述為對邊界敏感,而非宣稱某一側絕對正確。