Calculation Trace — Placidus 高緯度帯での破綻(B-6)

Layer B-6 — Placidus 高緯度帯での破綻条件・検出・フォールバックのトレース

本ビューでは、実装上は関数に吸収される処理も、計算過程の理解と検証のために段階的に表示しています。

Stella-JS を読み込み中…

破綻の数学的条件

② 定義・公式

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°$$
$\varepsilon \approx 23.44°$ のとき破綻緯度閾値 $\approx 90° - 23.44° = 66.56°$(北極圏境界に相当)。
これは天体が地平線上に没しない「白夜」と地平線下に出ない「極夜」が起きる緯度帯と一致する。
Placidus はそのような環境では物理的に定義できない(天体が子午線から地平線まで移動しないため)。

緯度別の破綻確認(静的比較)

③ 代入・条件判定
計算中…
各緯度に対し、$\theta = \text{RAMC}$(初期値)でのみ判定した参考値。 実際には全 Newton-Raphson 反復で $-\tan\varphi\cdot\tan\delta$ を評価するため、 特定の $\theta$ でのみ破綻する「部分破綻」も起きうる。

都市別トレース(東京・レイキャヴィーク・北極点近傍)

東京(北緯 35.69°)— 正常

計算中…

ヘルシンキ(北緯 60.17°)— 一部カスプで危険域に近い

計算中…

レイキャヴィーク(北緯 64.14°)— 破綻寸前

計算中…

北緯 70°(ノルウェー北部・北極圏内)— 破綻・クランプ発生

計算中…

北緯 80°(スヴァールバル諸島付近)— 深刻な破綻

計算中…

南半球トレース(北半球と対称であることの確認)

破綻条件は $|\varphi| > 90° - \varepsilon$ であり絶対値で判定するため、南半球も同じ閾値で破綻する。 「南半球は人が住んでいないから考慮不要」とミスリードされないよう、実在する最南端居住地からトレースする。

ウシュアイア(アルゼンチン・南緯 54.80°)— 正常(世界最南端の市街地)

計算中…

エスペランサ基地(アルゼンチン・南緯 63.40°)— 安全だが閾値まで残り 3.2°

計算中…

マランビオ基地(アルゼンチン・南緯 64.24°)— 安全だが閾値まで残り 2.3°

計算中…

南緯 70°(仮想)— 破綻・クランプ発生

計算中…

マクマード基地(米国・南緯 77.85°)— 深刻な破綻

計算中…

フォールバック(Stella-JS の実装)

② Stella-JS の対処方針

Stella-JS の dsha() は破綻を次の2段階で処理する:

  1. クランプ(継続):引数を $[-1,\;1]$ に強制的に収める。 $$\text{引数} = \max\!\bigl(-1,\;\min(1,\;-\tan\varphi\cdot\tan\delta)\bigr)$$ これにより $\arccos$ は計算できるが、DSHA は 0° または 180° に張り付いた 物理的に無意味な値になる。
  2. ファサード(フォールバック):effectiveHouseSystem() が $|\varphi| > 90° - \varepsilon$ を検出した場合、ハウスシステムを Equal House に自動切り替えし、理由を fallback: 'polar_latitude' で返す。
Equal House は「ASC から 30° ずつ等分」なので緯度に依存しない。
フォールバック先は Equal が最も安全(Whole Sign も可)。Koch・Regiomontanus・Campanus も同様の閾値で破綻する。

フォールバック動作確認

計算中…

まとめ — 破綻条件・影響・対処一覧

計算中…

⚠ 重要:この破綻は Placidus 固有の問題ではない

他技法への波及

このページで示した破綻条件($|\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 自体が不安定になる緯度では不安定だが、そこまでは安全
計算上の連鎖:
ASC の計算(tan φ を含む)が不安定になる → ASC の黄経が不正確になる → ASC を入力とするすべての計算(ハウス分割・赤緯変換・地図描画)の出力が信頼できなくなる。

実装上の注意:
多くのソフトウェアは高緯度で「エラーにならず、クランプした値を返す」ため、 出力は得られるが物理的に無意味な値になっている。 ユーザーはその値を「計算された結果」として受け取るが、実際には定義域外での近似値に過ぎない。

この問題に気づくには:
計算式の内部(tan φ がどこに入っているか)まで遡る必要があり、 ツールの出力値だけを見ていても判断できない。 本トレースビューアはこの「見えない限界条件」を可視化することを目的の一つとしている。