迷光の解析方法


迷光の解析方法

Author
Message
Zemax_Japan
Zemax_Japan
Forum Member
Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)Forum Member (1K reputation)

Group: Administrators / Zemax Staff
Posts: 257, Visits: 2.8K
概要 : この記事では以下の内容を取り上げています。
  • ノンシーケンシャル モードの Zemax でフィルタ文字列を使用して迷光を解析する方法
  • フィルタ文字列の概要とその記述方法
  • フィルタ文字列を使用して特定のプロパティを持つ光線を検索する方法
  • レイアウト プロット、ディテクタ ビューア、および光線データベース ビューアでフィルタ文字列を使用する方法
この記事には、フィルタ文字列の高機能な利用方法を紹介するサンプル ファイルが添付されています。
サンプル ファイルは、この記事の最後のページでダウンロードできます。

著者 : Dan Hill

公開日 : 2005 年 9 月 12 日

サンプル ファイル : 記事添付ファイル

対象 : 迷光



はじめに

Zemax のノンシーケンシャル光線追跡機能を拡張して、特定の特性やプロパティを持つ光線を検索できます。たとえば、望遠鏡で発生する迷光を調査しているとします。
  • さまざまな面で「ゴースト」反射する光線が、機械面と光学面の双方で持つ重要性を検討してみます。
  • 複数の反射を発生する光線が重要と考えられますが、たとえば 5 本以上の反射光線を発生する光線がどの程度重要であるかは、このままではわかりません。
  • ディテクタに達する迷光の量を制限する目的で計画的に設置したバッフルの効果もわかりません。
これらをはじめとする多くの同様な疑問には、Zemax のフィルタ文字列機能で適切な回答が得られます。フィルタ文字列は、光線をレイアウトまたはディテクタ ビューアで表示するための条件や光線を光線データベースに登録するための条件を、各光線が備えているかどうかを評価する「テスト」を定義する手段です。

フィルタ文字列の重要な点は、迷光の完全な光学機械的評価を実行できることにあります。したがって、Zemax では、光学系による部分的な反射、機械部品による反射、および光学系と機械系の両方による散乱が考慮されるようになっています。光線を構成するセグメントが、NSC グループにあるオブジェクトに到達したかどうか、到達した場合は反射、屈折、散乱、回折、ゴースト反射のどの現象が発生したかを示すフラグを設定し、これらのフラグどうしで実行する論理演算でフィルタ文字列の構文を構成します。使用可能なフィルタ文字列のフラグをすべて記述した一覧とその説明については、Zemax のユーザーズ ガイドの「フィルタ文字列」を参照してください。

この記事では、フィルタ文字列の入力方法、適用方法、および特定の光学特性を持つ光線の解析での使用方法について説明します。
この説明では、遠方の星を観測する際にカセグレン式望遠鏡の像領域に混入する月光の量を評価します。基本となる概念を考えます。ここでは、大量の光線を追跡してデータベースに保存します。その光線データベースを検索して、明示的なプロパティを持つ光線を探し出します。




光学系の概要と最初の光線追跡

満月の夜に望遠鏡で星を観測する状況を考えます。月光の一部は、軸 (星から望遠鏡鏡筒の頂点までの距離) を外れた光路を伝搬していても、望遠鏡のディテクタ平面 (カメラ) に達します。月からディテクタに達する迷光の正確な量を判断する必要があります。

次の純粋なノンシーケンシャル (NS) Zemax レンズ ファイルを使用して、このシナリオをシミュレーションします。
この記事に添付されているファイルをダウンロードして、Zemax で開きます。

注 : ここでは、Zemax でフィルタ文字列を使用する方法を紹介するに当たり、ノンシーケンシャル (NS) 光線追跡を実行してディテクタ ビューアでその結果を確認する標準的な手順に精通していることを前提としています。
これらの概念に詳しくない場合は、基本のノンシーケンシャル光学系の作成に関する記事を参照してください。



この望遠鏡モデルでの月は、軸外しの光源 (楕円) で表されます。コリメートした光源として月を近似しているので、月光 (上図のレイアウトでは緑色の光線) の各光線は互いに平行になっています。同様に、目的の物体は、コリメートした軸上の光源 (楕円) で表されます。標準的なカセグレン式望遠鏡の設計では、軸上の視野からのコリメートした光線 (上図のレイアウトでは青色の光線) が、像面上の良好に収差補正された点に焦点を結びます。一方で、光線によっては (月と星の両方からの光線の一部)、光学面に意図された順序に従っていなくてもディテクタに到達します。

[偏光を使用] (Use Polarization)、[エラーを無視] (Ignore Errors)、[光線の分割] (Split Rays)、[光線の散乱] (Scatter Rays)、および [光線を保存] (Save Rays) をすべてチェックして、最初の NS 光線追跡を実行します。
任意のファイル名で光線を保存します。フィルタ文字列を光線データベースとディテクタ ビューアに適用するには、適用対象とする光線を保存しておく必要があります。当面、[フィルタ] (Filter) のエントリは空白のままにしておきます。この後、解析機能を個別に設定する段階でフィルタを適用することもできるからです。

http://forum.zemax.com/Uploads/Images/043229a2-f4a3-40c7-8ae2-e4b6.jpg


閾値とエラーによって発生するエネルギー損失の値はきわめて重要なので、現在の光線サンプルを正確に評価できるように慎重に確認する必要があります。追跡を継続するうえで最低限必要なエネルギーの閾値を光線のエネルギーが下回ると、その光線の追跡は終了します。この最小エネルギーの相対値と絶対値は、[システム] (System) の [全般] (General) ダイアログで、[ノンシーケンシャル] (Non-Sequential) タブの [最小相対光線強度] (Minimum Relative Ray Intensity) および [最小絶対光線強度] (Minimum Absolute Ray Intensity) の各エントリで定義します。現在の例での計算時間を短縮するには、[最小相対光線強度] (Minimum Relative Ray Intensity) を「1.00E-007」に設定します。用途によっては、閾値に起因するエネルギー損失を少なくするために、この値を小さくすることが必要な場合があります。


エラーが発生した光線にフィルタを適用する方法

エラーに起因するエネルギー損失はきわめて重要なので、これらのエラーの程度をできるだけ小さく抑えることが必要不可欠です。これらのエラーが発生する原因はいくつかありますが、これについては記事「形状エラーの特定方法」に詳しい説明があります。

エラーに起因するエネルギー損失として報告された値が大きい場合は、光線の伝搬を詳しく確認して、エラーの原因として考えられるものを特定することが有用な場合があります。この作業は、光線データベース ビューアでフィルタ文字列を使用して実行できます。光線データベース ビューアを開くには、[解析] (Analysis) → [データベース] (Database) → [光線データベース ビューア] (Ray Database Viewer) を選択するか、ボタン バーの [Rdb] (Rdb) ボタンをクリックします。光線データベース ビューアの設定で、[ファイル] (File) プルダウン メニューから、保存しておいたデータベース ファイルを選択します。光線データベース ビューアの設定で、フィルタを適用するオプションを選択できるようになります。フィルタ文字列「Z」を指定すると、致命的エラーが発生した光線のみが表示されます。

このフィルタ文字列を適用するには、[フィルタを適用] (Apply Filter) ボックスをチェックしてから、適切なエントリに文字列を入力します。
[光線の最初の番号] (First Ray) フィールドと [光線の最後の番号] (Last Ray) フィールドを適宜調整することによって、保存したデータベースにある光線の一部にフィルタを適用できます。また、[光線の最後の番号] (Last Ray) を最初の光線追跡で送出された光線の合計数に設定すると、データベース全体を処理できます。




ここの例では、エラーに起因するエネルギー損失はゼロなので、エラー フィルタを適用すると、光線データベース ビューアには光線がまったく表示されなくなります。なお、光線データベース ビューアでのフィルタ機能は、エラーが発生した光線の表示に限られません。保存した光線データベースに対し、単一フィルタの適用も、複数のフィルタを組み合わせての適用も可能です。フィルタ文字列による評価に適合した光線のみが表示されるので詳しい解析が実現します。


月による迷光

(課題 1) 月からカメラに入射する迷光の量はどの程度か。

エネルギーの大部分がディテクタ中央のピクセルにあることがディテクタ ビューアから明らかです。一方で、この中央の領域に到達していない光線に伴う全パワーの量を明確に判断することは、対数目盛による表示でもきわめて困難です。



月光に伴う光線のパワーが全パワーに対して占める比率を判断するために、まず月からの光線を分離します。
この分離を実現するには、光源オブジェクト 1 の [解析光線数] (# Analysis Rays) をゼロに設定して光線追跡を再度実行するか、特定の光源を発した光線のみを表示するフィルタ文字列を使用します。フィルタ文字列の効果を示すために、ここではフィルタ文字列による方法を使用します。

フィルタ文字列は、3D レイアウトとディテクタ ビューアに適用できるほか、既に紹介したように光線データベース ビューアの中で適用することもできます。
これらの解析ツールそれぞれの設定で、[フィルタ] (Filter) エントリに目的のフィルタ文字列を入力できます。
現在のファイルの例を使用して、これらの機能のいくつかを紹介します。

ディテクタ ビューアの設定で、[光線データベース] (Ray Database) プルダウン メニューから、保存しておいた .ZRD ファイルを選択します。

目的の光線データベースを選択すると、[フィルタ] (Filter) エントリが有効になります。

「On」フィルタ文字列フラグによるフィルタがデータベースに適用され、光源番号 n から発した光線のみが抽出されます。ここでは、月 (光源オブジェクト 2) から発した光線のみを表示する必要があるので、フィルタ文字列「O2」を適用します。
「O」は、アルファベットの O (大文字のオー) であり、数字の 0 (ゼロ) ではありません。



保存されている光線データベースのサイズと文字列の複雑さによっては、Zemax によるデータの処理に時間を要することがあります。フィルタの実行が完了すると、フィルタ処理された光線データがディテクタ ビューアに表示されます。

ディテクタ ビューアの最下部には、選択した光線データベース ファイルの名前と適用したフィルタ文字列の両方が表示されます。
したがって、表示しているデータに適用したフィルタを確認するために、設定をもう一度開く必要がありません。




ここでフィルタ処理したディテクタ ビューアには、星の像 (光源 1 から発生した光線) であることが明らかな「ホット スポット」が見られないことがわかります。

現在の光線追跡の場合、当初の月の全パワーのうち、約 8.531E-006 ワットがカメラに到達しています。なお、月は星よりはるかに明るいので、月光の迷光を 10-5 に遮蔽しても不十分であることが考えられます。このことから、星像に対する分解能を引き上げるには、月光の迷光の量を低減することが望ましいといえます。月による迷光を低減するために使用できる方法は数多くあります。その課題はこの記事の範囲を超えるので、ここでは取り上げません。ここでは、迷光の光源を特定する作業を中心に取り上げます。


月光による迷光が月の特定の領域から

発生しているかどうかの判断

フィルタを使用すると、月からディテクタに到達している光の量を容易に判断できるだけでなく、光線が月の特定の「領域」から発しているかどうかを視覚的に認識することもできます。

(課題 2) 迷光は月の特定の領域から発生しているのか。

想像できることですが、この課題に取り組むうえで、このディテクタ オブジェクト 11 はそれほど適していません。一方、前述のとおり、フィルタ文字列はレイアウトにも適用できます。ここの例では、NSC 3D レイアウトの設定を開き、[光線データベース] (Ray Database) プルダウン メニューから、保存しておいた .ZRD ファイルをもう一度選択します。レイアウトに光線データベース全体を表示すると、解析を実行するには混雑した画面になるので、直ちに適切なフィルタを適用します。

フィルタ文字列のフラグを単独で適用できるほか、論理演算子で複数のフィルタ文字列のフラグを組み合わせて適用することもできます。
頻繁に使用する論理演算子として、「&」(論理 AND)、「|」(論理 OR)、「^」(排他 OR)、「!」(論理 NOT) などがあります。特定のプロパティを複数持つ光線にフィルタを適用する場合に、演算子の使用がきわめて効果的です。

ここでは、月から発してカメラに到達した光線をフィルタ処理で抽出します。
ディテクタ ビューアで結果を確認するのであれば、この文字列の 2 番目の部分は不要ですが、レイアウトで確認する場合は、文字列にこのフラグを明示的に追加する必要があります。このように指定しないと、ディテクタに到達したかどうかに関係なく、月からの光線がすべて表示されます。2 番目の引数を表すために「Hn」フラグを使用できます。「Hn」フラグは、オブジェクト n に到達する光線を表します。



この例の場合、フィルタを適用した NSC 3D レイアウトには、光線が月の特定の領域を発したことが実際に示されているわけではありません。
予想できることですが、光源 (楕円) の中心領域からの光線はディテクタに到達していません。これらの光線は副鏡とそれを囲むバッフルで遮蔽されるからです。フィルタを通過した光線の数はきわめて多いうえ、Zemax ではプロットが回転するたびにフィルタを再評価する必要があるので、現在のサンプル ファイルでは、レイアウトから生産的な追加情報を収集することは困難です。それでも、他の状況ではこの方法が確かに効果的であることはわかります。




月光による迷光が月の特定の領域から

発生しているかどうかの判断II

このレイアウトでは、光線が月の特定の領域から発しているかどうかを判断するうえで十分な成果がありませんでしたが、計画的な配置とした別のディテクタ (矩形) によって成果が期待できる可能性があることがわかりました。オブジェクト 12 としてディテクタ (矩形) を NSC エディタに挿入します。挿入したディテクタ (矩形) に次の各パラメータを定義します。

[Y 位置] (Y Position) : 1.0

[Z 位置] (Z Position) : -9.0

[X 軸のティルト] (Tilt About X) : 5.0

[X 半幅] (X Half Width) : 6.1

[Y 半幅] (Y Half Width) : 6.1

[X ピクセル数] (# X Pixels) : 50

[Y ピクセル数] (# Y Pixels) : 50

その他のパラメータはすべてデフォルトのままにします。このディテクタ (矩形) を月の前に直接配置します。この配置でフィルタ文字列機能を再度使用することにより、月を発してカメラに到達した光線の分布をより適切に視覚化できます。この新しいディテクタ (矩形) を定義した後、別のディテクタ ビューアを開いて、ディテクタ オブジェクト 12 を表示します (このディテクタ オブジェクトが表示されるように適切に設定する必要があります)。

新しい光線追跡を実行して、光線を新しいデータベース名 (「Stray Light_Telescope_1A.ZRD」など) で保存すると、新しく定義したディテクタ上で最初の光線分布を確認できます。



現時点で何のフィルタも適用していないので、このディテクタ上の放射照度分布には、両方の光源からの光線が反映されています。ここでも、対象とする光線は、月を発してディテクタに到達した光線です。したがって、次のフィルタをディテクタ オブジェクト 12 に適用します。




フィルタを適用したデータが処理されて表示されると、月を発して実際にディテクタの平面に到達した光線の分布を以前よりもはるかに容易に確認できます。
ディテクタの平面上に見られる不要な迷光が、月の特定の領域から発していることが明らかです。下図のように、これらの領域はディテクタ ビューア上で強調表示されています。この情報は、月からの不要な光を低減するために、どの迷光低減手法を使用できるかを判断するうえで効果的です。





筒先の補正板による反射の評価

最初の光線追跡を再度確認すると、ホットスポットを囲む明確な回転対称のリングがわかります。



この光線のリングは、現在コーティングされていない筒先の補正板 (オブジェクト 3) で発生した複数回の反射に起因している可能性があります。この点を確認するために、ここでもフィルタ文字列機能を使用できます。

(課題 3) 筒先の補正板による複数回の反射によって発生する迷光は、カメラ上の全パワーにどのような影響を与えるか。

フラグ「Gn」は、親セグメントのオブジェクト n でゴースト反射した光線を表します。このフラグは、光線分割がアクティブになっている場合に、屈折性オブジェクトで反射した光線セグメントにのみ設定されます。筒先の補正板でゴースト反射した光線 (星と月の両方からの光線) によってカメラ上に発生する光線分布を確認します。





光線の「リング」は、明らかに補正板でのゴースト反射によるものであり、ディテクタの平面上の全パワーに占める比率は (5.780E-006) です。これは値としては低いですが、測定可能です。
カメラ上でこれらの不要な光線が示す有意性を低減するには、補正板に反射防止コーティングを施します。


筒先の補正板による反射の評価 II

オブジェクト 3 の [オブジェクト プロパティ] (Object Properties) ダイアログを開き、補正板の前面と後面に AR コーティングを適用します。これは、現在の主波長向けに最適化した単層の MgF2 コーティングです。



コーティングを適用した後、NS 光線追跡を再度実行して、光線を別のファイル名で保存します。

http://forum.zemax.com/Uploads/Images/7e93a287-09d7-484d-9f54-43a5.jpg

光線追跡が完了したところで、該当の .ZRD ファイルがディテクタ ビューアで選択されていることを確認して、同じゴースト フィルタ G3 を適用します。補正板をコーティングすることによって、光線の偽の「リング」を効果的に除去して、ゴースト反射のエネルギー合計を 1 桁ほど低減できました。




まとめと参考文献

設計を評価して、性能の向上に必要な調整を適用する目的で、特定の品質の光線を解析すると都合が良いことが少なくありません。フィルタ文字列は Zemax の便利なツールの 1 つです。描画または表示するための条件を光線が備えているかどうかを評価する「テスト」をフィルタ文字列で定義できます。

フィルタ文字列を使用すると、迷光の総合的な光学機械的評価が可能で、機械部品と光学部品の両方で反射、散乱、コーティングなどを考慮できます。

フィルタ文字列は、最初の [光線追跡コントロール] (Ray Trace Control) ダイアログまたは [ディテクタ コントロール] (Detector Control) ダイアログ、レイアウト、ディテクタ ビューア、および光線データベース ビューアで適用できます。これらの解析ツールそれぞれをフィルタ文字列と組み合わせると、特定のプロパティを持つ光線をさまざまな方法で分離できます。Zemax には多くのフィルタ文字列フラグが組み込まれており、論理フラグと組み合わせることにより、無限ともいえる多彩な処理が実現します。


参考文献

Zemax 光学設計プログラムのユーザーズ ガイド (Zemax Development Corporation 編)

GO


Similar Topics


Login
Existing Account
Email Address:


Password:


Select a Forum....



































Zemax Users Forum


Search