いまさらきけない光学計算第3回:面形状と導関数

この記事の内容

0: はじめに

今回取り上げるテーマは、「面形状」と「導関数」ですが、特に「導関数」をターゲットとしています。正確には「偏」導関数です。

「面形状」は、読んで字のごとく「面のかたち」であり、光線追跡という視点から眺めると「屈折する位置」という意味です。CODE V的思考では、「屈折率の境界面」とも表現できます。
では、「導関数」、は一体何者なのでしょうか? 何のために必要なのでしょうか?
実は、「正しい光線追跡を行う」際に必要な「交点上の法線ベクトルを導く」役割を担っています。前回紹介した、光線屈折式で使用する「法線ベクトル」の計算に必要なのです。

これから順を追って、面形状から導関数、導関数から法線ベクトル、を導出する過程を紹介します。

1: 導関数について

1-1: 導関数の役割

導関数は、正しい光線追跡を行う際には欠かせません。光線屈折式に必要な交点における「法線ベクトル」の導出に必要であるためです。
「屈折」という現象を3次元的に計算するためは光線屈折式を使用する、ということは「第2回 光線追跡」で紹介しました。光線屈折式は次のようにベクトルで表されます。この光線屈折式には、「入射光線の方向ベクトル」、「交点における面の法線ベクトル」、「面の前後の屈折率」に関する情報が必要です。

ここで、
S = (Sl, Sm, Sn) 交点における法線ベクトル
D = (L, M, N) ...入射光の方向ベクトル
X = (La, Ma, Na) ...射出光の方向ベクトル
×は外積です。

「入射光の方向ベクトル」は既知とします。
「面の前後の屈折率」は硝材固有ですから、CODE Vの場合、材質を定義しさえすれば屈折率は自動的に定義されます。残るは「法線ベクトル」です。

さて、この「法線ベクトル」、どのように求められるのでしょうか?
実は意外と簡単で、面形状と(交点)座標が既知であれば、手計算で求めることが出来ます。
面形状から法線ベクトルを導出する中間にあるもの、これが導関数です。では実際に、面形状から法線ベクトルを求めてみます。

以下の流れに沿って求めます。

面形状を表す式
    ↓
(球面? 非球面? 独自の面?)
偏導関数
    ↓
(Xのみで微分。Yのみで微分。)
接平面内の2本のベクトル   
    ↓
(? , ? , ?) と (? , ? , ?)
外積を計算する
    ↓
(? , ? , ?) × (? , ? , ?) = (? , ? , ?)
法線ベクトル (? , ? , ?) !!!!

<< 前へ | 次へ >>

目次

 


お問い合わせ