diff --git a/CLAUDE.md b/CLAUDE.md index 64b8350..06bf7a6 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -16,6 +16,7 @@ 補足: **Step 8-9 完了**.LED 18 個の位置を Fusion 360 設計 STL (`configs/meshes/SmTIASv3.stl`) から抽出して `scene_baseline.yaml` を更新.`scripts/extract_led_positions_from_stl.py` で連結成分分割→ LED/カバー識別→ bottom/right/left 自動命名.主な変更: 下基板 LED 配置を「等間隔 8.7mm」→「3+ギャップ+3 (4.2mm+10.8mm+4.2mm)」へ訂正(実機写真の中央電流制限抵抗 2 個と整合).左右基板も実位置に修正.**形状指標は ~1% 以内のほぼ不変**(多重反射が支配的,LED 数 mm 誤差は ROI 上で平滑化).絶対 mean は +10% 増加(α 値 0.962→0.873).既知差分 #2 をクローズ.TEST_03 比較パネルに Step 8-9 を追加(5 枚並列). 補足: **LED 基板カバーを 3 枚構成に展開**.従来は下基板用 `LED基板カバー.stl` 1 枚のみだったが,`scripts/extract_led_positions_from_stl.py --export-covers configs/meshes/` で SmTIASv3.stl から `LED基板カバー下/右/左.stl` の 3 ファイルを書き出し,`scene_baseline.yaml` の geometry を `led_cover_bottom/right/left` の 3 メッシュエントリに展開.右・左基板の LED が「カバーなしで浮く」状態を解消.多重反射計算への影響は軽微だが物理的に正確. 補足: **Step 8-10 完了**.LED 配光を `spot` emitter (cutoff=90°/beam=30°,FWHM 120° 一致,flux 保存 I_0=0.026784 W/sr) で表現する試行.`SpotLight` クラスを `schema.py` に追加,`lights.py` に spot 分岐実装,`configs/scene_baseline_spot.yaml` を並列保持.**目視で X 方向の対称性が部分改善**(下端の明るい領域が中央寄りに集中)だが,数値指標は微悪化(CoV +4%, 勾配 +15%).LED 指向性は形の一部(X 方向)を変えるが,Y 方向の中央ピークは LSC モデル化(Step 8-N)が必要.本格採用は LSC との組み合わせ評価後に判断.付随発見: spot で mean が 14.6× 暗くなる(理由は spot falloff 関数の cos vs 角度ドメイン smoothstep の解釈差等を仮説). +補足: **Step 8-11 完了**.データシート LP-2835D90VW 準拠の照明モデルを統合.`configs/scene_baseline_datasheet.yaml` に並列保持.spot を cos^1.2 相当の前方凸 (cutoff=85°/beam=26.72°,FWHM 111.72°) に詳細化 + 反射率を Step 8-6 で導出した物理整合点 0.89 に変更 + I_0 を規格値 Φv=17.5 lm から導出 (I_0=0.021951 W/sr).**形は依然 Y 軸単調勾配**で Step 8-10 と Step 8-9 の中間値.**データシート従順度を上げても形は実機に近づかない**ことを確定.副次的に「規格値だけで mean を実機に合わせることはできず,校正値には他のレバーの累積吸収が含まれる」が再確認された.本筋 LSC モデル化が依然必要. 次のアクション(キャリブ再開時): 残差に **LSC(ISP レンズシェーディング)順方向モデル**を当てる(物理動機づけ低自由度形、overfitting 回避・取得パラメータ数明記). 実装済みモジュール: diff --git a/configs/scene_baseline_datasheet.yaml b/configs/scene_baseline_datasheet.yaml new file mode 100644 index 0000000..bdd437a --- /dev/null +++ b/configs/scene_baseline_datasheet.yaml @@ -0,0 +1,372 @@ +name: baseline_minitias +description: 'MiniTIAS scene aligned with LP-2835D90VW data sheet (Step 8-11). LED: + spot emitter with cos^1.2 equivalent profile (cutoff=85deg, beam=26.72deg, I_0=0.021951 + W/sr, flux Phi_e=0.0625 W). Reflectance 0.89 (Step 8-6 physical consistency).' +geometry: + meshes: + - id: housing_front + path: meshes/前側.stl + unit: mm + material: printer_white + - id: housing_back + path: meshes/後側.stl + unit: mm + material: printer_white + - id: phone_holder + path: meshes/スマホホルダ.stl + unit: mm + material: holder_dark + - id: led_cover_bottom + path: meshes/LED基板カバー下.stl + unit: mm + material: printer_white + - id: led_cover_right + path: meshes/LED基板カバー右.stl + unit: mm + material: printer_white + - id: led_cover_left + path: meshes/LED基板カバー左.stl + unit: mm + material: printer_white + - id: phone_body + path: meshes/SH-02M.stl + unit: mm + material: phone_body_dark + - id: evaluation_board + path: meshes/照明ムラ補正ボード.stl + unit: mm + material: printer_white +materials: + printer_white: + type: diffuse + reflectance: + - 0.89 + - 0.89 + - 0.89 + holder_dark: + type: diffuse + reflectance: + - 0.5 + - 0.5 + - 0.5 + phone_body_dark: + type: diffuse + reflectance: + - 0.05 + - 0.05 + - 0.05 +lights: +- id: led_bottom_0 + type: spot + position: + - -10.0 + - -71.0 + - -66.1 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_bottom_1 + type: spot + position: + - -5.8 + - -71.0 + - -66.1 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_bottom_2 + type: spot + position: + - -1.6 + - -71.0 + - -66.1 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_bottom_3 + type: spot + position: + - 9.2 + - -71.0 + - -66.1 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_bottom_4 + type: spot + position: + - 13.4 + - -71.0 + - -66.1 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_bottom_5 + type: spot + position: + - 17.6 + - -71.0 + - -66.1 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_right_0 + type: spot + position: + - 65.9987 + - -24.9738 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_right_1 + type: spot + position: + - 65.9987 + - -20.7738 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_right_2 + type: spot + position: + - 65.9987 + - -16.5738 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_right_3 + type: spot + position: + - 65.9987 + - -5.7738 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_right_4 + type: spot + position: + - 65.9987 + - -1.5738 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_right_5 + type: spot + position: + - 65.9987 + - 2.6262 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_left_0 + type: spot + position: + - -66.0067 + - -32.5952 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_left_1 + type: spot + position: + - -66.0067 + - -28.3952 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_left_2 + type: spot + position: + - -66.0067 + - -24.1952 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_left_3 + type: spot + position: + - -66.0067 + - -13.3952 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_left_4 + type: spot + position: + - -66.0067 + - -9.1952 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +- id: led_left_5 + type: spot + position: + - -66.0067 + - -4.9952 + - -66.0243 + direction: + - 0.0 + - 0.0 + - -1.0 + cutoff_angle: 85.0 + beam_width: 26.72 + intensity: + - 0.021951 + - 0.021951 + - 0.021951 +sensor: + type: orthographic + position: + - 0.0 + - 0.0 + - -50.0 + target: + - 0.0 + - 0.0 + - 0.0 + up: + - 0.0 + - 1.0 + - 0.0 + ortho_scale: + - 50.0 + - 52.0 + film: + width: 512 + height: 512 + rfilter: gaussian +render: + variant: llvm_ad_rgb + integrator: path + max_depth: 8 + spp: 1024 diff --git "a/docs/04_SPEC/SPEC_03_\345\237\272\346\272\226\350\250\255\350\250\210\343\201\256\347\211\251\347\220\206\346\247\213\346\210\220.md" "b/docs/04_SPEC/SPEC_03_\345\237\272\346\272\226\350\250\255\350\250\210\343\201\256\347\211\251\347\220\206\346\247\213\346\210\220.md" index 8b939ff..69d5287 100644 --- "a/docs/04_SPEC/SPEC_03_\345\237\272\346\272\226\350\250\255\350\250\210\343\201\256\347\211\251\347\220\206\346\247\213\346\210\220.md" +++ "b/docs/04_SPEC/SPEC_03_\345\237\272\346\272\226\350\250\255\350\250\210\343\201\256\347\211\251\347\220\206\346\247\213\346\210\220.md" @@ -112,6 +112,20 @@ **結果**: X 方向の対称性が部分改善(目視).数値指標は微悪化.Y 方向の中央ピークは LSC が必要.詳細は [TEST_01 Step 8-10](../06_TEST/TEST_01_キャリブレーション検証履歴.md#step-8-10-led-配光を-spot-emitter-で表現x-方向の部分改善).LSC モデル化との組み合わせで本格採用可否を判断する. +### データシート従順版(Step 8-11 試行) + +Step 8-10 の spot を **データシート規格値 + 同等品配光プロファイル** で更に詰めた版を `configs/scene_baseline_datasheet.yaml` に並列保持. + +| 項目 | 設定 | 出典 | +| --- | --- | --- | +| LED type | spot | Step 8-10 から踏襲 | +| `cutoff_angle` | 85° | 同等品 SMD 2835 の典型配光 cos^1.2 を表現 | +| `beam_width` | 26.72° | 同上.半値 55.86° (FWHM 111.72°) | +| I_0 | 0.021951 W/sr | 規格 Φv=17.5 lm / LER 280 lm/W = 0.0625 W,配光積分 K=2.847 sr | +| `printer_white.reflectance` | 0.89 | Step 8-6 で導出した規格 radiance との物理整合点 | + +**結果**: Step 8-10 と 8-9 の中間値(CoV 0.183, 勾配 26.79%, C/P 1.366).形は依然 Y 軸単調勾配.**データシート従順度を上げても形は実機に近づかない**ことを確定.副次的に「規格値だけで mean を実機に合わせることはできず,校正値 (radiance=2807) には他のレバーの累積吸収が含まれる」が再確認された.詳細は [TEST_01 Step 8-11](../06_TEST/TEST_01_キャリブレーション検証履歴.md#step-8-11-データシート準拠の照明モデル統合spot-cos12--r089). + ### 配置 実機の LED 基板は **前側のでっぱりの直角部分** に取り付けられている.3 基板を Z 軸まわりに ±90° 回転で配置: diff --git "a/docs/06_TEST/TEST_01_\343\202\255\343\203\243\343\203\252\343\203\226\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\346\244\234\350\250\274\345\261\245\346\255\264.md" "b/docs/06_TEST/TEST_01_\343\202\255\343\203\243\343\203\252\343\203\226\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\346\244\234\350\250\274\345\261\245\346\255\264.md" index 966a11f..ca214f5 100644 --- "a/docs/06_TEST/TEST_01_\343\202\255\343\203\243\343\203\252\343\203\226\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\346\244\234\350\250\274\345\261\245\346\255\264.md" +++ "b/docs/06_TEST/TEST_01_\343\202\255\343\203\243\343\203\252\343\203\226\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\346\244\234\350\250\274\345\261\245\346\255\264.md" @@ -382,6 +382,45 @@ - 本筋 LSC モデル化([Step 8-N](#step-8-n-候補-lsc-順方向モデル未着手))に進む - LSC + spot の組み合わせ評価は LSC 実装後 +### Step 8-11: データシート準拠の照明モデル統合(spot cos^1.2 + R=0.89) + +- **日付**: 2026-05-28 +- **背景・問題意識**: Step 8-10 で `spot` emitter (cutoff=90, beam=30 = FWHM 120° の標準解釈) の試行で X 方向の対称性が部分改善した.これを **データシート LP-2835D90VW + 物理的整合性** の両面で詰めるとどうなるか検証. +- **仮説(物理動機)**: + - **A. パッケージ整合**: data sheet 規格値 (Φv=17.5 lm @60mA) と LER 280 lm/W から radiance を独立推定 (Φe=0.0625 W/LED).反射率を Step 8-6 で導出された 0.89(規格 LED + 校正値 mean の物理整合点)に変更 + - **B. spot 配光詳細化**: 同等品 (Cree/Samsung/Lumileds 系 SMD 2835) の典型配光 cos^1.2 (前方凸) を spot で表現.半値 55.86° (FWHM 111.72°,データシート 120° よりやや前方寄り) +- **試した変更** (`configs/scene_baseline_datasheet.yaml` 新規): + - LED 18 個を spot に変換:cutoff_angle=85°,beam_width=26.72°,I_0=0.021951 W/sr (Φe=0.0625 W を smoothstep 配光積分 K=2.847 sr で割って算出) + - 反射率 0.85 → **0.89**(5 メッシュ共有の `printer_white`) +- **期待した効果**: 物理的に正確 + Step 8-10 の X 方向改善が継続 + 反射率上昇で多重反射が増えて Y 方向もわずかに均一化される可能性. +- **実際の結果**(`output/baseline_datasheet/`,linear + normalization 評価): + + | 指標 | Step 8-9 (area, R=0.85) | Step 8-10 (spot 90/30, R=0.85) | **Step 8-11 (spot 85/26.72, R=0.89)** | + | --- | --- | --- | --- | + | mean (pre-normalize) | 167.95 | 11.49 | **10.26** | + | α (mean 揃え係数) | 0.873 | 12.77 | **14.30** | + | CoV | 0.181 | 0.189 | **0.183** | + | 勾配 % | 24.13 | 27.69 | **26.79** | + | C/P | 1.318 | 1.383 | **1.366** | + | max/min | 4.27 | 4.15 | **4.11** | + +- **目視観察**: 形は依然 Y 軸単調勾配.Step 8-10 と 8-11 の差は微小で,X 方向の集中度が**わずかに緩和**された程度(反射率 0.89 の多重反射均一化と cos^1.2 集中度の打ち消し合い).**実機の中央ピーク楕円には近づかず**. +- **解釈**: + - データシート従順度を上げ反射率を物理整合点に動かしても,**形は構造的に変わらない**(依然 Y 軸単調勾配).多重反射と LED 配置の Y 軸偏りが支配的. + - 数値指標は Step 8-9 area より悪化のまま (CoV +1%, 勾配 +11%, C/P +4%).数値の意味では「悪化」だが,物理的には「データシート通り」. + - **「物理的正確性」と「実機形への近づき」は別軸**.データシート準拠は物理正確性を担保するが,形改善には LSC 必要. +- **副次的な発見**: + - α=14.30 で mean が大きく上がる(pre-norm 10.26).spot+反射率 0.89 でも area+0.85 ほど評価板に光が届かない.これは LED 単体 flux 0.0625 W (規格) vs 校正値由来 0.0864 W (1.38× 多い) の物理差が表面化したもの. + - 「データシート規格値」で動かすと **mean は実機 mean に直接合わない**(反射率 0.89 でも届かない).真の物理を保つには **mean を実機にアンカーする校正値 (radiance=2807)** を依然必要とする.これは [Step 8-6](#step-8-6-led-物性確定-lp-2835d90vw) で議論した「校正値は局所幾何・反射率不確かさの累積吸収」が真であることを再確認. +- **学び**: + - データシート準拠の物理モデルは正しいが,**実機の校正値 (mean=146.71) を物理パラメータで一意に再現するには反射率以外のレバー (LED 配光・幾何・材料異方性) も同時に動かす必要**がある. + - 既知差分 #1 (反射率) のクローズは依然 **実フィラメント分光データの実測が必要**.同等品 0.89 の推定値では校正一致しない. + - **形の改善は依然として LSC モデル化 ([Step 8-N](#step-8-n-候補-lsc-順方向モデル未着手)) が唯一の道**. +- **採用判断**: scene_baseline.yaml は area + R=0.85 のまま(Step 8-9 状態).`configs/scene_baseline_datasheet.yaml` は **「データシート従順版」として並列保持**.LSC モデル化との組み合わせ評価後に本格採用可否を判断. +- **次のアクション**: + - 本筋 LSC モデル化([Step 8-N](#step-8-n-候補-lsc-順方向モデル未着手))に進む + - LSC + データシート従順版の組み合わせは LSC 実装後 + ## Step 8-N 候補: LSC 順方向モデル(未着手) - **位置付け**: 8-3 OETF 適用後の残差 **1.6〜1.9×**(CoV 0.089 vs 実測 0.043,勾配 12.57 vs 6.10)の **主因候補**. diff --git "a/docs/06_TEST/TEST_02_\343\202\267\343\203\237\343\203\245\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\345\256\237\350\241\214\350\250\230\351\214\262.md" "b/docs/06_TEST/TEST_02_\343\202\267\343\203\237\343\203\245\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\345\256\237\350\241\214\350\250\230\351\214\262.md" index 242681a..ed0484f 100644 --- "a/docs/06_TEST/TEST_02_\343\202\267\343\203\237\343\203\245\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\345\256\237\350\241\214\350\250\230\351\214\262.md" +++ "b/docs/06_TEST/TEST_02_\343\202\267\343\203\237\343\203\245\343\203\254\343\203\274\343\202\267\343\203\247\343\203\263\345\256\237\350\241\214\350\250\230\351\214\262.md" @@ -29,6 +29,7 @@ | `output/sweep_reflectance/sweep_summary.csv` | 8-2 | — | — | 5 反射率の評価結果まとめ | 反射率スイープのサマリ表 | | `output/baseline_v3_leds/` | 8-9 LED 位置正確化 | `configs/scene_baseline.yaml`(Fusion STL から抽出した新 LED 位置で更新済み, R=0.85, d=8, spp=1024) | `configs/eval_baseline_linear.yaml` (linear + normalization) | 146.71 / 0.1815 / 24.13 / 1.318 | TEST_01 Step 8-9 検証.輝度マップ追跡 (TEST_03) パネル右下(α=0.873434) | | `output/baseline_spot/` | 8-10 LED spot 配光 | `configs/scene_baseline_spot.yaml`(18 LED を spot に変換, cutoff=90/beam=30, I_0=0.02678 W/sr, flux 保存) | `configs/eval_baseline_linear.yaml` (linear + normalization) | 146.71 / 0.1887 / 27.69 / 1.383 | TEST_01 Step 8-10 検証.X 方向の対称性が部分改善(目視).α=12.77 で mean が約 14.6× 暗くなる | +| `output/baseline_datasheet/` | 8-11 データシート従順版 | `configs/scene_baseline_datasheet.yaml`(spot cutoff=85/beam=26.72, I_0=0.0220 W/sr,反射率 0.89, データシート規格値準拠) | `configs/eval_baseline_linear.yaml` (linear + normalization) | 146.71 / 0.1829 / 26.79 / 1.366 | TEST_01 Step 8-11 検証.データシート準拠は物理正確性のみ達成,形は LSC が依然必要.α=14.30 | ### sweep_summary.csv の値(参考、TEST_01 line と一致確認用) @@ -56,6 +57,8 @@ | baseline_v3_leds 評価 | `uv run sm-evaluate --image output/baseline_v3_leds/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_v3_leds/` | | baseline_spot レンダ生成 (Step 8-10) | `$env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_spot.yaml --output output/baseline_spot/` | | baseline_spot 評価 | `uv run sm-evaluate --image output/baseline_spot/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_spot/` | +| baseline_datasheet レンダ生成 (Step 8-11) | `$env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_datasheet.yaml --output output/baseline_datasheet/` | +| baseline_datasheet 評価 | `uv run sm-evaluate --image output/baseline_datasheet/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_datasheet/` | ## 過去の整理実績 (Cleanup History) diff --git "a/docs/06_TEST/TEST_03_\350\274\235\345\272\246\343\203\236\343\203\203\343\203\227\345\275\242\347\212\266\350\277\275\350\267\241.md" "b/docs/06_TEST/TEST_03_\350\274\235\345\272\246\343\203\236\343\203\203\343\203\227\345\275\242\347\212\266\350\277\275\350\267\241.md" index 1b03ac5..4ca083d 100644 --- "a/docs/06_TEST/TEST_03_\350\274\235\345\272\246\343\203\236\343\203\203\343\203\227\345\275\242\347\212\266\350\277\275\350\267\241.md" +++ "b/docs/06_TEST/TEST_03_\350\274\235\345\272\246\343\203\236\343\203\203\343\203\227\345\275\242\347\212\266\350\277\275\350\267\241.md" @@ -45,6 +45,7 @@ | Step 8-7 (発光面 size 1.5×1.5,linear + mean 正規化) | 絶対値スケールは 2.83× 上昇したが,**形は出発点と同じ Y 軸単調勾配**.形状指標がほぼ不変だったことと整合 | Step 8-1 と区別不能の形.mean 正規化で表示スケールが完全に揃う | | Step 8-9 (LED 位置を Fusion STL から正確化,linear + mean 正規化) | LED 位置を「3+ギャップ+3」の実機配置に直したが,**形は依然として Y 軸単調勾配**.数値指標 CoV/勾配/C/P も 1% 以内の微変化 | Step 8-1 と区別不能の形.LED 位置の数 mm 誤差は多重反射で平滑化される | | Step 8-10 (LED 配光を spot emitter で表現,cutoff=90/beam=30) | 数値指標は悪化(CoV +4%, 勾配 +15%, C/P +5%)が,**目視で下端の明るい領域が中央寄りに集中**.**X 方向の対称性が部分的に改善**.Y 方向の偏りは不変 | 他の 4 シミュは下端が X 全幅で明るいが,spot は下中央のみが集中して明るい.左右端はやや暗く,**実機の中央ピーク楕円の X 方向成分に部分的に符号一致** | +| Step 8-11 (データシート従順版,cos^1.2 相当 spot + R=0.89) | spot 集中度を上げる (FWHM 112°) + 反射率を 0.89 に.Step 8-10 と 8-9 の中間の数値.**形は依然 Y 軸単調勾配**で 8-10 の X 方向効果は cos^1.2 と反射率上昇が打ち消し合いやや緩和 | Step 8-10 と類似の形だが集中度がわずかに緩和.**データシート従順度を上げても形は変わらない**ことを確定 | ## 学び (Findings) @@ -66,8 +67,9 @@ | 8-8 linear mean 正規化 | 表示用の線形ゲイン(指標は不変) | 形不変 | | 8-9 LED 位置の Fusion STL 反映 | LED 数 mm 移動,多重反射で平滑化 | 形不変 | | 8-10 LED 配光を spot emitter | LED 中央集中型配光で X 方向の対称性に変化 | **X 方向の対称性が部分改善**(Y 方向は不変) | +| 8-11 データシート従順版 (cos^1.2 spot + R=0.89) | spot 集中度上昇 + 反射率上昇の打ち消し合い | 形は不変(8-10 と類似),数値指標は 8-10 と 8-9 の中間 | -8-10 まで **「形を変える可能性のある変更」は LED 指向性のみ**であり,これは数値指標を悪化させたが目視で X 方向の対称性向上を確認.これが Step 8-1〜8-9 の「形を変えない変更」とは性質が違う(線形ゲインや単調変換ではない).ただし依然として **Y 方向の中央ピーク**は LSC モデル化が必要. +8-10 / 8-11 で **「形を変える可能性のある変更」は LED 指向性 (spot config) のみ** であり,これは数値指標を悪化させたが目視で X 方向の対称性向上を確認.Step 8-11 でデータシート従順度を上げても形は構造的に変わらない.依然として **Y 方向の中央ピーク**は LSC モデル化が必要. ### 3. 実機の形 = シミュの形 + 動径補正 diff --git a/scripts/build_luminance_evolution_panel.py b/scripts/build_luminance_evolution_panel.py index e31a750..b5ad0d4 100644 --- a/scripts/build_luminance_evolution_panel.py +++ b/scripts/build_luminance_evolution_panel.py @@ -127,8 +127,14 @@ { "loader": _load_sim_linear, "args": (ROOT / "output" / "baseline_spot" / "luminance.npy",), - "title": "Test: Spot Emitter (data-sheet config)", - "subtitle": "cutoff=90, beam_width=30 (FWHM 120deg), flux-preserved", + "title": "Step 8-10: Spot Emitter (Lambertian-equivalent)", + "subtitle": "cutoff=90, beam=30 (FWHM 120deg), flux-preserved", + }, + { + "loader": _load_sim_linear, + "args": (ROOT / "output" / "baseline_datasheet" / "luminance.npy",), + "title": "Step 8-11: Data-sheet Faithful (cos^1.2 spot + R=0.89)", + "subtitle": "cutoff=85, beam=26.72 (FWHM 112deg), I_0 from 17.5 lm/280 lm/W", }, ]