Layer B-6 — Placidus 高緯度帯での破綻条件・検出・フォールバックのトレース
本ビューでは、実装上は関数に吸収される処理も、計算過程の理解と検証のために段階的に表示しています。
Placidus の DSHA 計算式:
$$\text{DSHA}(\theta) = \arccos\!\bigl(-\tan\varphi \cdot \tan\delta(\theta)\bigr)$$$\arccos$ は定義域 $[-1,\;1]$ にしか定義されていない。したがって:
$$\bigl|-\tan\varphi \cdot \tan\delta(\theta)\bigr| > 1 \;\Longrightarrow\; \text{DSHA 未定義(破綻)}$$破綻が起きる緯度の目安($\delta(\theta)$ が最大 = 黄道上で $\varepsilon$ と同符号の最大赤緯のとき):
$$|\tan\varphi| > \frac{1}{|\tan\varepsilon|} \;\Longrightarrow\; |\varphi| > 90° - \varepsilon \approx 66.56°$$破綻条件は $|\varphi| > 90° - \varepsilon$ であり絶対値で判定するため、南半球も同じ閾値で破綻する。 「南半球は人が住んでいないから考慮不要」とミスリードされないよう、実在する最南端居住地からトレースする。
Stella-JS の dsha() は破綻を次の2段階で処理する:
effectiveHouseSystem() が
$|\varphi| > 90° - \varepsilon$ を検出した場合、ハウスシステムを
Equal House に自動切り替えし、理由を fallback: 'polar_latitude' で返す。
このページで示した破綻条件($|\varphi| > 90° - \varepsilon \approx 66.56°$ で tan φ が発散)は、
ASC の計算式そのものに起因する問題であり、Placidus に限らない。
ASC の計算式:
$$\lambda_{\text{ASC}} = \text{atan2}\!\bigl(\cos\text{RAMC},\;-\sin\text{RAMC}\cdot\cos\varepsilon - \tan\varphi\cdot\sin\varepsilon\bigr)$$この式を ASC の計算に使うすべての技法が、同じ高緯度破綻を抱えている。
| 技法・システム | ASC を使う場面 | 高緯度での影響 |
|---|---|---|
| Placidus ハウス(本ページ) | DSHA = arccos(−tan φ · tan δ) の計算 | arccos 定義域外 → 破綻 |
| Koch・Regiomontanus・Campanus | 同様に tan φ を含む計算 | 同様に破綻 |
| アストロカルトグラフィー(ASC / DSC ライン) | 「どの地点で惑星が ASC に来るか」を世界地図に描画 | 高緯度帯で ASC ラインが定義できず、途切れる・無意味な値を返す |
| 赤緯占星術・アストロカルトグラフィーを源流とする派生技法 | ASC の黄経を赤緯に変換して判定に使う(δ_ASC = arcsin(sin ε · sin λ_ASC)) | 変換式自体は安全だが、上流の ASC が不安定なため判定結果が信頼できない |
| アストロカルトグラフィー(MC / IC ライン) | MC = atan2(sin RAMC, cos RAMC · cos ε) は緯度に依存しない | 破綻なし(全緯度で安定) |
| Equal House・Whole Sign | ASC を起点とするが tan φ は使わない | ASC 自体が不安定になる緯度では不安定だが、そこまでは安全 |