GETLSF

「幾何光学的線像/エッジ像分布」と類似した、幾何光学的エッジ像および線像の応答関数を計算します。

構文 :

GETLSF wave, field, sampling, vector, maxradius, use_polarization

説明 :

wave は計算に使用する波長番号に対応する整数です。ゼロの値は、多色計算を示します。field は、1 から視野の最大番号までの範囲の整数とする必要があります。value は、使用する視野の位置を示します。sampling は、1 (32 x 32)、2 (64 x 64)、3 (128 x 128) ... で、最大 2048 x 2048 までとなります。vector 引数は、1 ~ 4 の整数値とし、データの配置先とするベクトル配列を指定します。maxradius 引数は、エッジ分布関数と線分布関数の最大動径座標です。これはデータ範囲の半分の幅です。デフォルトの幅を使用する場合は 0 を指定します。値が有効範囲外の引数には、有効範囲にある最も近い値が代わりに使用されます。

データは、指定ベクトルの値の配列として返されます。ベクトル位置 0 ~ 3 は、それぞれ、開始 X 座標 (データ領域の半分の幅の負の数)、デルタ座標、およびオフセット (以下で定義) の点の数 N を保持します。オフセットは、エッジまたは線の広がりデータを保持するベクトル内の最初の位置です。オフセットから始まり、最初の N 値はタンジェンシャル LSF 応答です。次の N 値はサジタル LSF 応答です。タンジェンシャルおよびサジタル ERF 値は、N データ値の次の 2 つのグループに配置されます。

現在のベクトル サイズが十分大きくない場合、OpticStudio は、SETVECSIZE で指定した方法で LSF データを保持できるよう、自動的にベクトルのサイズを大きくします。

例 :

 
! Macro computes and prints the LSF and ERF for polychromatic light at field 1.
! 
! Syntax is GETLSF wave, field, samp, vector, maxradius, usepol
! 
GETLSF 0, 1, 3, 1, 0, 0
 
N_BINS = vec1(0)
STARTX = vec1(1)
DELTAX = vec1(2)
OFFSET = vec1(3)
 
FORMAT 15.0
PRINT "Number of Bins     = ", N_BINS
FORMAT 15.3 EXP
PRINT "Starting Coordinate = ", STARTX
PRINT "Delta Coordinate   = ", DELTAX
FORMAT 15.0
PRINT "Offset             = ", OFFSET
 
OFF1 = OFFSET
OFF2 = OFF1 + N_BINS
OFF3 = OFF2 + N_BINS
OFF4 = OFF3 + N_BINS
MAXI = N_BINS-1
FORMAT 16.3 EXP
PRINT
PRINT "             X          TLSF          SLSF          TERF          SERF"
PRINT
 
FOR i, 0, MAXI, 1
PRINT STARTX + DELTAX*i,
PRINT vec1(OFF1 + i),
PRINT vec1(OFF2 + i),
PRINT vec1(OFF3 + i),
PRINT vec1(OFF4 + i)
 
NEXT i

次へ :