光学検出器
1. はじめに
OghmaNano では、光学検出器 は光が光学系を 伝搬する際にそれを測定するために使用されます。検出器は Optical Detectors Editor を用いて定義され、 このエディタはメインウィンドウの Optical リボンから開くことができます (Figure ?? を参照)。
Optical Detectors Editor を ?? に示します。 OghmaNano における光学検出器は、シミュレーション領域内の任意の場所に配置される 二次元表面 です。概念的には、理想化された CCD カメラのように振る舞います。通過する光子を数え、そのスペクトル分布と空間分布を記録します。
検出器は光を 吸収、反射、または散乱しません。 それらは数学的に透明であり、光学場を摂動しません。 光線、波、または光子は検出器を変更されることなく通過し、検出器は単に その表面を横切るものを記録するだけです。
2. 検出器のジオメトリと分解能
検出器は、その位置、向き、および横方向サイズ (\(dx\) および \(dy\))によって定義されます。厚さ \(dz\) は無関係です。なぜなら検出器は 純粋な二次元表面として扱われるからです。検出器は \(x\)、\(y\)、および \(z\) 軸のまわりに回転できるため、 任意の方向を向けることができます。これにより、透過光、 反射光、または放射光を任意のジオメトリで取得することが可能になります。検出器はまた、 3D シーン内でドラッグすることでインタラクティブに再配置できます。
設定パネルの Detector セクションでは、 Mesh points x と Mesh points y のパラメータが、検出器表面全体に使用される 空間ビン数を定義します。これらは CCD センサー内の ピクセル数に直接対応し、記録されるデータの空間分解能を制御します。1 つのシミュレーション内に 複数の検出器を配置できます。各検出器は独立して動作し、独自の出力ファイル群を生成します。
3. 検出器の例
4. 出力
検出器の出力フォルダを開くと、通常は 4 つのファイルが表示されます
(Figure ?? を参照):
detector_abs0.csv、detector_efficiency0.csv、
detector_input0.csv、および RAY_image.csv です。
これらは together (i) 検出された光の 空間 分布と
(ii) 光源から検出器までの スペクトル スループットを記述します。
RAY_image.csv は、検出器が受け取るものの
空間的に分解された画像です(概念的には CCD フレーム)。レイトレーシングモードでは、通常、
3 つの代表的な波長(名目上の “R”、“G”、“B”)をトレースし、それらを直接
RGB 画像にマッピングすることで生成されます。非レイトレーシングワークフロー、
またはより広い波長セットをトレースする場合には、
OghmaNano は標準的な人間の視覚色応答関数を用いて検出スペクトルを表示可能な RGB に変換します
(したがって色は、文字通りの三波長レンダリングではなく、人の目にどう見えるかの
見え方 の推定値です)。
実際には、EL/PL スペクトルについては多くの波長を
トレースすべきです。3 色 RGB は簡単な光学可視化には十分ですが、発光スペクトルには
粗すぎます。
残りの 3 つのファイルは、単純な “入力 → 検出 → 効率” の連鎖を構成します:
-
detector_abs0.csv(??): 原理的には検出器に到達し得た 利用可能な 光源スペクトルです。 これは、幾何学と 吸収によって実際に到達するものが決まる前の、放出された光線/光子の波長ごとの分布です。 -
detector_input0.csv(??): 実際に検出器表面へ到達してそれを通過した光線/光子のスペクトル (カウントとして報告されます)。材料吸収およびクリッピングがこれを変化させます。 示された例では、 ガラスがスペクトルの UV 部分を除去しており、短波長側で急激な減少が生じています。 -
detector_efficiency0.csv(??): 波長ごとの検出確率(パーセント)であり、次式で計算されます \[ \eta(\lambda)=100\times\frac{I_{\text{det}}(\lambda)}{I_{\text{avail}}(\lambda)} =100\times\frac{\texttt{detector_input0.csv}}{\texttt{detector_abs0.csv}}. \] 物理的な解釈としては、波長 \(\lambda\) で光線/光子が放出された場合、 それらの放出のうちどの割合が最終的に検出器を横切るのか、ということです。
RAY_image.csv より)。
detector_abs0.csv より)。
detector_input0.csv より)。
detector_efficiency0.csv より)。