こんにちは。光学、光でのお困りごとがありましたか?
光ラーニングは、「光学」をテーマに様々な情報を発信する光源を目指しています。情報源はインターネットの公開情報と、筆者の多少の知識と経験です。このページでは、OpticStudioノンシーケンシャルモードのメリットファンクションエディタで多用する、NSDDオペランドについて説明します。
結論
- NSDDオペランドには機能が2つあります。ひとつは、ディテクタのデータをクリアする機能です。もうひとつが、ディテクタの情報を出力する機能です。
- NSDDは設定値の組み合わせで合計46通りの結果を出力できます。ピクセルを指定して出力する結果と、ディテクタ全体のデータから算出する結果があります。詳細はヘルプファイルを参照します。
- NSDDオペランドの知識だけでは最適化できません。このページでは、NSDD自体の説明にフォーカスしており、最適化の設定方法については別のページにて説明します。
このページの使い方
このページで参考にした技術記事(ナレッジベース)は、ノンシーケンシャル光学系を最適化する方法 です。この記事は、OpticStudioのノンシーケンシャルモードの最適化に関連する機能を紹介する入門記事になります。
このページでは、ナレッジベースで使われている光学用語、技術用語、前提知識について、もう一歩踏み込んだ説明を加えていきます。ナレッジベースの長さは記事によってまちまちなので、いくつかのブロックに分けて注釈を加えています。この記事は2番目です。(1)は、ディテクタのノイズ対策_ノンシーケンシャル光学系の最適化 (1) です。
NSDDオペランド (NSDD operand)
NSDDは、ディテクタオブジェクトで取得した「インコヒーレント」強度を返すオペランドです。「インコヒーレント」は、ディテクタに到達した光線のエネルギーを単純に足し合わせた結果です。対になる強度で、「コヒーレント」強度もあります。これについては、またの機会に触れたいと思います。
NSDDオペランドの構造
技術記事にある通り、NSDDオペランドには5つのパラメータがあります。①から⑤のパラメータに適切な数字を入力することで、所望のディテクタの結果を返します。
NSDD ①Surf ②Det# ③Pix# ④Data ⑤#ignored
①面番号: ミックスモードの場合に設定が必要。ミックスモードについては、混合(ミックス)モード_OpticStudioのノンシーケンシャルモードについて (3) を参照してください。
②ディテクタ番号: データを抽出したいディテクタが定義された行番号。
③ピクセル番号: 正の値の場合、データを抽出したい単一ピクセルの番号。負の値の場合、ディテクタ全体の結果から求まる様々な統計量の指定(後述)。
ディテクタ(矩形)のピクセル番号付けの規則は、ヘルプファイルのディテクタ(矩形)の項に記載されています。1番は、「+Z軸方向からディテクタを見たときの(-x端, -y端)、つまりディテクタビューアでみたときの左下隅」になります。2番以降は、+x軸方向に進みます。端まで行ったら、-x端まで戻ってy軸に1つ上がり、また+x方向に進みます。
④データ番号: 光量(0を入力)、単位面積当たりの光量(1を入力)、単位立体角当たりの光量(2を入力)のいずれかです。
OpticStudioのヘルプファイルには「Flux」という単語が単独で使われます。Fluxには、W(ワット)とlumen(ルーメン)があり、それぞれ放射束(radiant flux, W)と光束(luminous flux, lumen)といいます。光の単位系については、光合成の森 (Laboratory of Plant Physiology, Waseda University 様のページ) [1]や、光と光の記録 – 光編 (安藤幸司様の素晴らしいサイト)[2]を参照してください。
英語で「Flux」と言えば、放射束と光束の両方を含めて表現できるかもしれませんが、日本語だと適切な言葉が見当たらないような。。。というわけで、光のエネルギー量という意味合いを込めて、光ラーニングではFluxの日本語訳を「光量」としています。
OpticStudioの日本語ヘルプファイルでは「光束」が当てられている場合もありますが、光束の英訳はluminous fluxなので、放射束が含まれなくなって混乱しがちです。その言葉がどのような意味で使用されているか、迷ったら確認が必要です。
⑤除外ピクセル: ディテクタ(矩形)のみで使用できるオペランドです。ディテクタの外周から指定した数のピクセル数だけ結果を無視できます。X100ピクセル / Y200ピクセルのディテクタで、#ignoredを2にすると、外から2周分のピクセルのデーが無視されて、X96ピクセル / Y196ピクセルで計算したデータが出力されます。
例えば、ディテクタ中央部のデータにだけを最適化のターゲットにしたい場合などに使えます。ディテクタ全体の受光パワーから、ディテクタ中央部の受光パワーを引き算すれば、全体に含まれる不要な光のパワーを一つのディテクタで出力できます。
NSDDの役割① ディテクタのクリア
NSDDオペランドの大事な役割の1つ目が、ディテクタのクリアです。ノンシーケンシャルモードの解析結果は、必ずマニュアルでの光線追跡の実行が必要です。新しい光線追跡を実行する前に、既存のディテクタのデータを消す必要があります。この作業を行うのも、NSDDオペランドの役割です。
具体的なパラメータを確認します。純粋なノンシーケンシャルモードの場合、①は常に1になります。これはOpticStudioが自動で設定の上グレーアウトしてくれます。②のDet#(ディテクタ番号)を 0 にすると、光学モデルに含まれるすべてのディテクタに記録されていた光線追跡の結果が消去されます。負の値を入れると、その絶対値の行番のディテクタのデータのみが消去されます。
このディテクタデータのクリアの重要性は、ノンシーケンシャルモードの最適化のプロセスで重要な意味を持ちますので、改めて説明したいと思います。このページが参照している技術記事や、Using the OpticStudio Non-Sequential Optimization Wizards (Zemax技術記事、英語) でも確認できるので、これらも参照してください。
NSDDの役割② ディテクタに保存されたデータ出力
NSDDオペランドの中心的な機能がこちら、光線追跡後にディテクタに保存されたデータに基づい受光結果を出力します。③Pix#と④Dataの組み合わせによって、46通りの結果を出力できます。とてもじゃないですが覚えられないので、覚える必要はありません。
Dataは光量 or 単位面積当たりの光量 or 単位立体角当たりの光量の3パターンで、セントロイド基準でx, y, z方向それぞれの値を出力するので、種類としては13通りです。Pix#でピクセルを指定したときのみ、正規化した光量という4パターン目があります。ヘルプファイルに一覧が記載されているので、その時その時で欲しいデータを出力する③④の組み合わせを探します。
参考までに、筆者個人がよく使うのは、以下です。また、これらの設定は最適化ウィザードで設定することも可能です。ノンシーケンシャルモードの最適化ウィザードについても、光ラーニングで取り上げたいと思います。
Pix# | Data | 出力 | 使いどころ |
0 | 0 | ディテクタが受け取った全光量 | ディテクタまで光が届いているかを確認する。 |
-2 | 1 | 最小照度 | (最大照度と併せて)照度ムラを確認する。#Ignoredを活用する場合も。 |
-4 | 1 | ゼロでない全ピクセルデータの照度の標準偏差 | 0 を目標にする=均一照度分布を目指す。 |
-6 | 1 | 照度の重心のX座標 | 照度分布の偏りを確認する。 |
-9 | 0 | セントロイドを基準とした光量のRMS半径 | 0 を目標にする = スポットサイズの最小化を目指す。 |
-9 | 2 | セントロイドを基準とした光度のRMS角度半径 | 0 を目標にする = 平行光を目指す。 |
まとめ
ここでは、Zemaxのホームページからアクセスできる公開記事、 ノンシーケンシャル光学系を最適化する方法 から、「NSDDオペランド」を取り上げ、オペランドの構造と役割を説明しました。メリットファンクションエディタにおいて、ディテクタの情報をクリアする準備の機能と、ディテクタの情報を出力する機能を持っており、ノンシーケンシャルモードの最適化には不可欠なオペランドになります。NSDDについては、Zemax技術記事やコミュニティに様々な情報があるので、気になった内容は紹介していきたいと思います。次回は、 「メリットファンクションエディタの設定」について説明します。
<参考>
[1] 光合成の森, 光の単位, http://www.photosynthesis.jp/light.html
[2] AnfoWorld, 光と光の記録 – 光編, http://www.anfoworld.com/Lights.html#unitsoflight
コメント