# 球体筐体実験 (Spherical Housing Experiment)

> ⚠️ **BEFORE FIX 注記**: 本ドキュメントの数値はすべて**シェーディング法線アーティファクト
> （[TEST_12](TEST_12_シェーディング法線アーティファクトの発見と修正.md)，2026-08-18 修正）込み**で
> 測定されたものである．本実験の完全軸対称化がこのバグの発見につながった．修正後の再測定では
> **現行筐体 CoV 0.0610 / 球ロフト 0.0628 と両者ほぼ同等**（実機 0.0695）であり，
> 「幾何理想極限でも CoV 床 ≈0.12」「球で現行比 -30% 改善」という本文の結論は**撤回**する．
> 現行筐体はすでに理想積分球に近い混合性能を持つ，が修正後の結論．
> 実験設計・経緯・修正前の相対比較の記録として本文を保持する．

## 背景と目的 (Background & Purpose)

[TEST_10](TEST_10_後側ロフト変形w1p4実験.md) で，ロフト重み（対称なフレア拡大）は体積 +66% まで振っても全灯分布に実質不感と確定した．本実験は幾何レバーを**極端側に振り切る**: 実機筐体の構成（前側/後側/カバー/ホルダ/スマホ）をすべて外し，評価板だけを共通土台として残して**完全に閉じた球殻**で囲み，**単灯・完全間接照明**という理想積分球条件で照明均一性がどこまで到達するかの**上限（upper bound）**を測る．

- 球（積分球）は拡散反射による光の混合が理論上最も効く形状であり，漏れゼロ・対称・完全間接の組は「幾何＋閉じ方の理想極限」に相当する
- この上限が実機（CoV 0.0695・mean/max 0.899）に届くかどうかで，「実機との残差のうち幾何で説明できる範囲」を切り分けられる
- 光源が 1 灯のため，灯間 NCC（非対称相補性）は本実験の検証対象外

## シーン構成の事実記録 (Scene Facts)

| 要素 | 内容 |
| --- | --- |
| 球殻 | `configs/meshes/球殻_r100.stl`．内半径 100mm・厚 3mm・中心 (0, 0, -40)．`scripts/generate_sphere_housing.py` で生成（icosphere subdiv=6 の内外 2 面 163,840 faces，watertight，体積 388,361mm³ で理論値と一致＝内面法線反転の正当性確認済み）．開口なしの完全閉球 |
| 評価板 | `照明ムラ補正ボード.stl` を現行と同位置・同材料のまま内包（最遠角 (49.5, 51, 12.5) は中心から 88.4mm < 100mm） |
| 光源 | **1 灯のみ**．現行と同じ 2.8×3.5mm area LED を軸上 (0, 0, -90)（-Z 極壁から 50mm 手前）に置き，向き (0, 0, -1) ＝壁向き．発光半球が後方壁側を向くため**評価板への直接光は幾何的にゼロ** |
| 材料 | 球殻・評価板とも blend w0.05_a0.1（TEST_10 確定条件） |
| radiance | 2807.247 W/(m²·sr)（現行 per-LED 校正値をそのまま使用．形状指標はスケール不変） |
| センサ | 現行と完全同一（orthographic Z=-50・ortho_scale (50, 52)・512²） |
| レンダ | path・d=16・**spp=8192**（下記「分散対策の経緯」参照）．llvm_ad_rgb で約 36 分 |
| config / 出力 | `configs/scene_sphere_r100.yaml` → `output/sphere_r100/` |

### 分散対策の経緯（LED 位置と spp）

当初案「壁 5mm 手前 (z=-135)」は path tracer の分散が実用不能だった（spp=64 で相対ノイズ σ=89%．直接照射キャップが半径 31mm と小さく NEE がほぼ外れる＋壁 5mm の 1/r² 特異で firefly）．対策として:

- **LED を z=-90（壁から 50mm）へ移動**: NEE 可視領域が球面積の 25% に拡大し σ=9.3%@spp64 まで 10 倍改善．「評価板への直接光ゼロ」は厳密に維持される（板は発光面の裏側）
- **spp=1024 → 8192**: 残留ノイズ実測 σ=0.79%（CoV 0.135 への汚染は二乗和で +0.02% と無視可能）．unbiased なので比較の公平性は不変
- Mitsuba 3.8 の `ptracer`（光源側追跡）は orthographic センサ非対応（`Endpoint::sample_direction(): not implemented`）で本用途には使えない

## 結果 (Results)

実行日: 2026-08-17．数値は `output/sphere_r100/{summary.csv,metrics.csv}`，比較図は `output/_slide_panels/sphere_r100_{shape_roi,relative}.png`．評価は TEST_10 と同一パイプライン（`eval_baseline_dng_target_shape.yaml`・SIM_ROI・mean アンカー 207.82）．

| 指標 | 現行筐体 全灯 18 灯 (full_base) | **球体 r100 単灯** | 実機 全灯 18 灯 |
| --- | --- | --- | --- |
| CoV (ROI) | 0.1717 | **0.1350** | 0.0695 |
| peak/mean (ROI) | 1.491 | **1.323** | 1.155 |
| top/bot (ROI) | 0.878 | **1.021** | 0.919 |
| C/P ratio | 1.328 | 1.353 | 1.091 |
| gradient [%] | 24.72 | 26.10 | 8.35 |
| angular_ratio | 0.352 | **0.126** | — |
| centroid offset (norm) | 0.043 | **0.005** | — |
| NCC 対実機 (ROI) | 0.744 | **0.460** | 1.0 |
| mean/max（相対輝度） | 0.671 | **0.756** | 0.899 |
| min/max（相対輝度） | 0.241 | **0.531** | 0.660 |

分布の形: 中央明・周辺減光の滑らかな軸対称ドーム．断面プロファイルに不連続なし（最大段差 <1% ＝ノイズレベル，楕円窓縁の段差は生じない）．周辺減光は Y 方向（-38%）が X 方向（-15%）より強く，これは楕円窓・ROI 形状を含む評価板系の共通特徴（3 セル同一条件のため比較は成立）．

## 読み取れること (Findings)

1. **幾何の理想極限でも CoV 0.135 まで**（現行比 -21%，mean/max 0.671→0.756）．漏れゼロ・完全対称・完全間接の積分球ですら実機の 0.0695 / 0.899 には遠く及ばない．**筐体幾何の追い込みだけではシミュ上の均一性を実機水準まで持っていけない**ことの上限実証．
2. **形は質的に変わる**: Y 軸単調勾配（angular_ratio 0.352・centroid offset 0.043）→ 中心対称ドーム（0.126・0.005，top/bot 1.02）．幾何＋光源配置の対称化で「分布の非対称性」はほぼ消せる＝幾何レバーは「形の対称性」には強く効く．
3. しかし **NCC 対実機はむしろ低下**（0.744 → 0.460）．実機の形（Y 勾配＋斜め構造）は「理想混合の形」とは構造的に別物であり，実機マップを幾何の理想化で近づけることはできない．実機の平坦さは ISP レンズシェーディング補正（SPEC_03 既知差分 #6）等の非幾何要因が本命，という Step 8-14 の推定と整合する．
4. **残る CoV 0.135 の物理源**: R=0.85 の有限反射率では「未混合の一次照射成分」が消えない．一次照射キャップ（-Z 極周辺）を評価板の各点が異なる見込み角で見るため，cos 依存のドーム状落ち込みが残る．積分球の理想（壁面ポートに試料を置く）と違い，板がキャビティ内に浮いた面である限りこの成分は幾何では消せない．改善余地はむしろ反射率 R↑（未混合成分の相対比↓）や光源多灯化・対称配置側にある．

## 設計への示唆 (Implications)

- 球体筐体は「対称できれいな形」を作るが，均一性の絶対量では現行筐体比 2 割改善にとどまる．**実機再設計の優先レバーとしては弱い**（製作性の悪さに見合わない）．
- TEST_09/10 から続く結論がさらに強化された: 実機との残差（絶対均一性・非対称相補性）は**筐体幾何の外**にある．非対称幾何（漏れ・開口の非対称）の検証は TEST_09 実験4（幾何の漏れ点検）として別途残っている．
- 本実験で単灯・高 spp・幾何スクリプト生成のワークフロー（`generate_sphere_housing.py` → シーン YAML → `build_sphere_panel.py`）が整ったため，仮想幾何の理想化実験は今後低コストで追加できる（例: 半径スイープ，R=0.92 球，多灯球面配置）．

## 改訂 — 評価板嵌め込み・ロフト一体化版 (Revision: Loft-blended Housing)

初版（上記）は評価板が球内に**浮いた**配置で，板の縁と球壁の間の隙間を光が回り込めた．ユーザー指摘「評価板がすっぽり嵌まるように置きたい」を受けて 2 段階で改訂した（2026-08-18）:

1. **fit 版**（`configs/scene_sphere_r100_fit.yaml`・`球殻_r100_fit.stl`）: 球中心を (0,0,-92) へ移動し板裏面で断面円 48.4mm ＝板が断面を塞ぐ配置．ただし矩形と円の不整合で四隅が球壁を貫通・ROI 四隅に壁が写る．3D 確認段階でロフト版に置き換え（**レンダ未実施**）
2. **ロフト一体化版**（`configs/scene_sphere_r100_loft.yaml`・`球ロフト_r100.stl`）: Fusion のロフトに相当する「板輪郭矩形 → 球断面円」の遷移スカートをスクリプト生成（`scripts/generate_sphere_loft_housing.py`．板輪郭 1.5mm 内側のリムを z=0＝板実体に 4.5mm 食い込む高さに置いてシール，z=-40 の断面円 85.4mm へ Hermite ブレンド＝球側接線連続，以深は球 r=100・中心 (0,0,-92) のお椀．watertight 縫合）．LED は新 -Z 極（z=-192）の 50mm 手前 z=-142・壁向き（直接光ゼロ維持）

あわせて 2 つの運用変更（ユーザー指示）:

- **レンダ前の 3D 配置確認を必須化**（`sm-visualize --no-bake` / `show_led_geometry.py` で確認画像を提示 → OK 後にレンダ．CLAUDE.md 必須ルールに追記）
- **spp を 8192 → 1024 に統一**（TEST_09/10 系との条件統一を優先．残留ノイズ実測 2.3%，CoV への汚染 +0.002 で解釈に影響なし）

### 結果（ロフト一体化版）

実行日: 2026-08-18．数値は `output/sphere_r100_loft/{summary.csv,metrics.csv}`，比較図は `output/_slide_panels/sphere_loft_{shape_roi,relative}.png`（1×4 パネルに拡張）．

| 指標 | 現行筐体 全灯 | 球体 浮き配置 単灯 | **球ロフト一体 単灯** | 実機 全灯 |
| --- | --- | --- | --- | --- |
| CoV (ROI) | 0.1717 | 0.1350 | **0.1204** | 0.0695 |
| peak/mean (ROI) | 1.491 | 1.323 | **1.392** | 1.155 |
| top/bot (ROI) | 0.878 | 1.021 | **1.020** | 0.919 |
| C/P ratio | 1.328 | 1.353 | **1.310** | 1.091 |
| gradient [%] | 24.72 | 26.10 | **23.66** | 8.35 |
| angular_ratio | 0.352 | 0.126 | **0.110** | — |
| NCC 対実機 (ROI) | 0.744 | 0.460 | **0.445** | 1.0 |
| mean/max（相対輝度） | 0.671 | 0.756 | **0.718** | 0.899 |
| min/max（相対輝度） | 0.241 | 0.531 | **0.502** | 0.660 |

### 読み取れること（改訂版）

1. **縁のシール＋一体化で CoV 0.135 → 0.120**（現行筐体比 -30%）．板縁の隙間への回り込み・ROI 内の壁写り込みが消えた効果で，均一性の幾何上限がさらに更新された．
2. ただし **peak/mean は 1.323 → 1.392 と微増**（中央の明帯がやや細く尖る．mean/max も 0.756 → 0.718）．くびれ（ロフトスカート）が板の周縁を覆う立体角を狭め，周辺照度が相対的に下がったためと解釈できる＝**キャビティを閉じるほど CoV は下がるが中央集中はわずかに強まる**トレードオフ．
3. 対称性はさらに向上（angular_ratio 0.110・centroid offset 0.005・top/bot 1.02）．
4. **結論は初版と不変**: 幾何＋閉じ方の理想極限を突き詰めても CoV ≈ 0.12 が床で，実機 0.0695（ISP LSC 込み）には届かない．NCC 対実機 0.445 ＝実機の形とは別物のまま．残差の本命は非幾何要因（LSC 等）という結論がむしろ強化された．

## 追補 — 円形光源版（完全軸対称化）(Addendum: Disk Emitter)

ロフト一体化版の光源は矩形 LED（2.8×3.5mm）のままで，系の軸対称性を破る最後の要素だった．ユーザー指示により発光面を**同面積（9.8mm²）の円板（半径 1.7662mm）**に置換し，幾何・光源とも完全軸対称の構成にした（2026-08-18）．

- スキーマ拡張: area 光源に `shape: disk`（`radius` 必須）を追加（`rectangle`＋`size` は後方互換）．SPEC_02 更新，スケール実寸検証を含むテスト追加
- config: `configs/scene_sphere_r100_loft_disk.yaml` → `output/sphere_r100_loft_disk/`．発光面形状以外はロフト版と完全同一（位置 (0,0,-142)・壁向き・radiance・spp=1024・d=16）

### 結果（円形光源版）

| 指標 | 球ロフト 矩形 LED | 球ロフト 円形光源 |
| --- | --- | --- |
| CoV (ROI) | 0.12044 | 0.12047 |
| peak/mean (ROI) | 1.3923 | 1.3931 |
| angular_ratio | 0.1098 | 0.1098 |
| centroid offset (norm) | 0.00472 | 0.00472 |
| NCC 対実機 (ROI) | 0.4452 | 0.4453 |

**全指標が MC ノイズ（σ≈2.3%）内で完全一致**．完全間接キャビティでは発光面の形（矩形 vs 円板）は結果に影響しない＝「Lambertian 拡散壁の多重反射が光源形状を洗い流す」（TEST_09 §追加観察）の再確認であり，矩形 LED の非軸対称性は残差要因ではないことが確定した．以後，**円形光源版（完全軸対称）を球体筐体実験の正準構成**とする．

## 参照 (References)

- [TEST_10_後側ロフト変形w1p4実験](TEST_10_後側ロフト変形w1p4実験.md): 幾何レバー（対称変形）の不感性
- [TEST_02_シミュレーション実行記録](TEST_02_シミュレーション実行記録.md): 出力索引・再現コマンド
- [SPEC_03_基準設計の物理構成](../04_SPEC/SPEC_03_基準設計の物理構成.md): 既知差分 #6（ISP レンズシェーディング）
