[12] ノンシーケンシャルの3つの特技_OpticStudioのノンシーケンシャルモードについて (4 fin)

OpticStudio

こんにちは。光学、光でのお困りごとがありましたか?

光ラーニングは、「光学」をテーマに様々な情報を発信する光源を目指しています。情報源はインターネットの公開情報と、筆者の多少の知識と経験です。このページでは、OpticStudioのシーケンシャルモードだと難しい解析を実現してくれる、ノンシーケンシャルの特技について説明します。

結論

シーケンシャルモードでは難しい、ノンシーケンシャルモードならではの解析として以下があります。

  • 複雑な空間・角度プロファイルを持った光源をモデル化する場合
  • 複雑な形状をしたオブジェクトを作成・取り込む場合
  • 光線の散乱・分割による予測不可能な光線経路を解析する場合

このページの使い方

このページで参考にした技術記事(ナレッジベース)は、OpticStudioのノンシーケンシャルモードについて で、4番目の記事になります。1番目の記事は こちら (ノンシーケンシャル光線追跡とは?)、2番目の記事は こちら (純粋なノンシーケンシャルとは?) 、3番目の記事は こちら (混合(ミックス)モードとは?) になります。

OpticStudioのノンシーケンシャルモードをこれから使用する方や、OpticStudioそのものにこれから挑戦する人に参考になる内容が含まれています。このページでは、ナレッジベースで使われている光学用語、技術用語、前提知識について、もう一歩踏み込んだ説明を加えていきます。

ノンシーケンシャルモードならではの解析

このページでは、技術記事に記載されているノンシーケンシャルモードならでは設定や機能を紹介しながら、特徴や使用上の注意点について説明を加えていきます。

「光源のモデル化」についての注釈

光学シミュレーションにおいて、光源モデルはシミュレーション結果の精度を大きく左右します。検討の初期は理想的な光源(点光源、均一照度分布の光源、ランバーシアン光源、ガウス分布 etc.)で設計やシミュレーションを行うことも多いですが、その後入手できた実物の光源データを使用すると、シミュレーション結果が全く異なる結果になってしまうことはよくあります

光源の設定には、非常に多くのパラメータがあります。発光面の空間分布(光源のどの”位置”にエネルギーが存在しているか)、角度分布(光源から見てどの”方向”にどのくらいエネルギーを出しているか)、波長分布(何色の光が多く含まれているか)、偏光(特定の振動に偏った状態になっているか)などです。

図 12-1 光源のモデル化で重要な分布たち。波長によって空間・角度分布が異なり、照明エリアの色むらになる場合がある。

どれも大事で、シミュレーション結果に影響を及ぼしますが、まず確認すべきなのは「空間分布」と「角度分布」です。結像光学系の場合、光源(=物体面)の空間分布が照射面(=像面)に映し出されます。光源から遠い場所を広く照明するような光学系の場合、光源の角度分布が照射面に映し出されます。

OpticStudioのシーケンシャルモードは、基本的に設定できる光源は点光源のみで、そこから出射する光線の角度分布も均一、ガウシアンといった比較的単純なものに限定されます。「拡張光源解析」に含まれる解析機能は特別で、有限の発光面積を持った光源での光線追跡が可能です。それでもやはり、角度分布の選択肢は少ないため、最後のシミュレーションはノンシーケンシャルモードで行う必要があります。

「複雑な形状の作成」についての注釈

この記事では、OpticStudioにあらかじめ含まれているオブジェクトタイプでは作成が困難な、複雑な形状を定義する方法として、① CADデータのインポート、② ブール演算、③ ネスティングルール (ごく簡単な説明) が紹介されています。他にも、④ ポリゴンオブジェクト、⑤ Zemax パートデザイナーなどがあります。それぞれの機能の詳細な説明は、ヘルプファイルや関連する技術記事にお任せするとして、ここではそれぞれの機能に対する筆者の考えを記載します。

CADデータのインポートに対する考え

SolidWorksをはじめとしたメカニカルCADで作成したデータを取り込むので、定義できる形状の制約がほぼ無く、「複雑な形状の作成」における最終・最強手段です。STEPファイルなど静的なインポートと、バックグラウンドで立ち上げたCADと直接連携する動的なインポートがあり、後者の機能は最上位のエディションが必要になります[2]。欠点は、光線追跡が低速になることです。同じ形状を、OpticStudioの既存機能で設定したものと比較すると、5倍とか10倍とか光線追跡に時間がかかるようになります。そういう意味でも、最後の手段と考えています。参考になる技術記事は Zemaxホームページのこちら まとめられています。

ブール演算に対する考え

複数のオブジェクトを組み合わせたり、重なっている部分を除外したりして複雑な形状を設定する機能です(図12-2[3])。「ブールCAD」と「ブールネイティブ」という2種類の似たオブジェクトがあり、後者の方が最近搭載された機能です。機能としては、作成した形状の精度と光線追跡の両面でブールネイティブの方が優れています。一方で、ブールCADと比較してルールが複雑で、使いこなすには機能をよく理解する必要があります。ヘルプファイルを一読するか、疑問点はZemaxへ問い合わせるのがよいです。参考になる技術記事は、ブール CAD オブジェクト、ブール ネイティブ オブジェクト、複合レンズ オブジェクトと、オブジェクトの組み合わせツールの使用方法 です。

図 12-2 複数の演算を組み合わせることも可能。演算の順番によって所望の形状が達成できる場合がある。

ネスティングルールに対する考え

この機能はOpticStudioノンシーケンシャルモードを使う上で極めて重要なルール、「同じ面や空間に複数のオブジェクトが設定された場合、その面や空間の光学特性は “エディタのより下の行で設定されたオブジェクト” の光学特性が使用される。(通称: ネスティングルール)」を活用します。設定が最も簡単で光線追跡も速いので、まずこの方法で対応できないか検討するのがよいと思います。この機能の欠点は、レイアウト図で見たときに、モデル上どんな形状になっているかを判断するのが難しいことです。参考になる技術記事は、Improving non-sequential ray tracing speeds with nested and Boolean objects (英語) です。

ポリゴンオブジェクトに対する考え

オブジェクトの形状をテキストファイルに記述して、OpticStudioに取り込む方法です。面の割り当てや名前が自由に設定できるので、面ごとに異なるコーティングが適用されるプリズムの定義などに有益です。一度作ってしまえば、スケーリングで異なる大きさを設定できる点もうれしい。だた、難しくはないながら、テキストファイルの作成方法を習得するのが少し面倒です。参考になる技術記事は、Creating Polygon Objects in OpticStudio (英語) です。

Zemaxパートデザイナーに対する考え

OpticStudioに組み込まれた独自のCADのような機能です。線や曲線といった基本的な構成要素を組み合わせて複雑なオブジェクト形状を定義していきます。筆者はこの機能、実戦で使ったことはありません。バージョンアップに伴う機能改善もないので、おそらくZemaxにとっての重要性も高くないと思います。任意の形状作成という観点ではCAD連携が強力なので、そちらを検討するのがよいのかもしれません。参考になる技術記事は、What is the Zemax Part Designer? (英語) です。

複雑な形状が必要な場面で(筆者なら)どの機能を使う?

筆者が検討する順番は、ネスティングルール >>> ブーリアン ≧ ポリゴンオブジェクト > CADオブジェクト >>>パートデザイナー、です。これは、解析したい内容、使い慣れている機能、スキルに依存します。実際、「もっとCADのスキルがあればなぁ」と思うことはよくあります。

「光線分割と散乱」についての注釈

ノンシーケンシャルモードの光線追跡で最も特徴的なのが、この光線の分割と散乱です。3次元空間に任意に配置したオブジェクトに、到達できる限り光線が追跡されるため、私たちは光路を事前に検討する必要はなくOpticStudioにお任せできます。

シーケンシャルモードの場合、ひとつのモデルで光線を分割して複数経路を同時に追跡できないので、それぞれの経路を別のシステムとして設定する必要があります(マルチコンフィグレーション機能を使用します)。また、シーケンシャルモードで取り扱う散乱は、散乱角度が小さいことを前提としているため、ランバーシアン散乱のような大きな散乱現象は解析できませんし、使用できる解析機能はかなり限定的です。

ノンシーケンシャルモードはこれらの制約なく、自由な光線追跡が可能です。ただ、いつのすべての可能性を考慮するのがいいのか?というと、計算時間であったり、解析したい内容によって、光線追跡の設定は調整することが望ましいです。

図 12-3 光線追跡コントローラでは、計算時間を短縮したり、光線のデータを保存したり、役に立つ機能がたくさん搭載されている。

ここでは、コントローラの中段にある、光線追跡の4つの設定の意味から使いどころを説明します。

  • Ignore Errors (エラーを無視):
    エラー光線を無視するオプションです。膨大な光線を追跡する場合、オブジェクトのエッジに当たるなどしてエラーになる光線は避けられません。よって、「基本的には」このオプションは有効にしますが、設定ミスでエラーが発生している場合もあるので、特に初期は確認が必要です。
  • Scatter NSC Rays (NSC光線の散乱):
    散乱を発生させるオプションです。オブジェクトに散乱を設定しただけでは、光線追跡には適用されませず、このオプションを有効にすることで光線が散乱します。意外と見落としがちで、散乱特性の設定が間違っていると思って散々確認した結果、このオプションを有効にしていなかっただけとか。
  • Use Polarization (偏光を使用):
    偏光を考慮するオプションです。このオプションは、「コーティングを有効にする」という意味があり、きわめて大きな影響を与えます。逆に、このオプションが無効ならコーティングが無視されます。そのため、ビームスプリッタは機能しませんし、ノンコートなのにレンズ表面の透過率は100%でフレネル反射は発生しません。
  • Split NSC Rays (NSC光線の分割):
    1本の光線から複数の光線を生成するオプションです。この機能は、必ず「Use Polarization」とセットで使用されるため、このオプションを有効にすると「Use Polarization」も自動で有効になります。また、散乱特性で複数の散乱光を生成する設定も、このオプションを有効にすることで機能します。

光線追跡のオプションを(筆者なら)どう使う?

  1. Ignore Errorsを有効にして光線追跡。理想的な光学系での結果を確認します。
  2. Scatter NSC Raysを有効にして光線追跡。散乱特性が正しく設定されているか確認します。
  3. Use Polarizationを有効にして光線追跡。コーティングや回折格子が正しく設定されているか確認します。
  4. Split NSC Raysを有効にして光線追跡。最も強力なノンシーケンシャル光線追跡で結果を取得します。

ざっくりとこのような流れです。とりあえず全オプションを有効にすると、想定外の結果になったときの検証が大変になってしまいます。どんなにソフトが強力でも設定が間違っているとシミュレーションが台無しになってしまうので、少し時間はかかってしまっても段階的に結果を確認しながら進めます。

「高度な機能」についての注釈

この記事では最後に、ノンシーケンシャルモードの高度な機能として、「回折グレーティング」「コヒーレンスのモデル化」「体積によるエネルギー吸収の測定」が取り上げられています。これらの機能は、確かに一筋縄ではいかない高度な機能になりますので、別の機会で個別に説明をしたいと思います。

(2021年12月27日に、OpticStudioでの回折格子について説明した、光の回折と干渉から回折光線_OpticStudioの回折光学面 (1) を追加しました。)

まとめ

ここでは、Zemaxのホームページからアクセスできる公開記事、 OpticStudioのノンシーケンシャルモードについて から、「ノンシーケンシャルモードならではの解析、機能」を紹介しました。同じ解析をするにも複数の手法があり、スキルや経験、解析内容に応じて機能や設定を選べれば、解析時間を大幅に短縮できる可能性があります。これからも勉強を続けていきたいと思います。

今回で、OpticStudioのノンシーケンシャルモードについて、に関する注釈は終わりです。次のナレッジベースの記事は Display pupils on a layout plot (英語) です。これからも、皆様にとって有益な情報を発信していきたいと思います。

<参考>

[1] Wikipedia : Light-emitting_diode

[2] OpticStudioエディション比較表(Zemaxホームページより)

[3] Wikipedia: ブーリアン演算

コメント

タイトルとURLをコピーしました