TECHNICAL KNOWLEDGEBASE

2023-02-02

Programable Detector の検出結果がプログラムした通りに示されていないのはなぜ?

Programable Detector の検出結果がパラメトリック最適化でプログラムした通りに示されていないのはなぜですか?

「Average Efficiency(平均効率)」を計算するProgramable Detector を定義したと仮定します。次にパラメトリック最適化を開始しようとしたところ、Constraint Specification ページで、Programable Detector には「Average Efficiency」ではなく「Value #1」しかないことに疑問を感じるかと思います。
このような動作になる理由は、検出結果の名前はスニペットが実行された後でないとわからないからです。またスニペットでプロラムされた計算がどれほど複雑であるかはわかりませんので、スニペットの実行に数分かかる場合があるかもしれません。したがって、予期せぬ不要な(そして長い)タイムラグを防ぐために、パラメトリック最適化ドキュメントをを最初に作成するときには、スニペットを実行しないように選択してきました。
しかし、Constraint Specification ページで更新ボタンを押すことで、スニペットの実行をすることができます。すると「Value #1」が「Value #1: Average Efficiency」に変わります。
同じ理由で、Programable Detector の編集ダイアログで Number of Resulting Physical Values を指定する必要があります。スニペットで生成される物理値の実数よりも少ない数を入力した場合、全ての結果を最適化することはできません。大きすぎる数値を入力した場合、「余分な」結果は常に「NaN」と評価され、最適化は失敗します。
Programmable Grating Analyzer のようなプログラマブル アナライザーにも同じ仕組みが使用されています。