ZBFREAD

指定された ZBF ファイルを開き、電界とビームのプロパティ データを 2 つのユーザー定義のアレイの変数に配置します。

構文 :

ZBFREAD filename, beamname, propertyname
 

説明 :

このキーワードには、ZBF ファイルの名前と、以前の DECLARE の呼び出しで定義された 2 つのアレイの名前が必要です。beamname は、非偏光ビームの最小サイズ (nx, ny, 2) および偏光ビームの最小サイズ (nx, ny, 4) という、三次元アレイにする必要があります。propertyname アレイは、最小サイズ 14 の一次元アレイにする必要があります。ZBFREAD 関数の実行後、指定した propertyname アレイにビーム データが配置されます。このビーム データは、nx、ny、dx、dy、waist_x、waist_y、position_x、position_y、rayleigh_x、rayleigh_y、波長 (レンズ ユニット)、全パワー、ピーク放射照度 (面積あたりのパワー)、is_polarized フラグ (偏光がない場合は 0、偏光がある場合は 1)、および媒質の屈折率で、それぞれアレイの位置 1 ~ 15 に配置されます。電界データは beamname アレイに配置されます。beamname アレイの 3 番目の次元は、Ex 実数が 1、Ex 虚数が 2、偏光ビームの場合は Ey 実数が 3、Ey 虚数が 4 になります。

すべての ZBF 関連キーワードに適用されるコメントについては、「目的 :」を参照してください。「ZBFWRITE」も参照してください。

例 :

! First get the beam size 
ZBFPROPERTIES "TEST1.ZBF", 1 
nx = vec1(1)
ny = vec1(2)
ip = vec1(14) ! The "is polarized" flag
 
! Allocate enough memory to hold the beam
IF (ip == 0) THEN DECLARE B, DOUBLE, 3, nx, ny, 2
IF (ip == 1) THEN DECLARE B, DOUBLE, 3, nx, ny, 4
DECLARE P, DOUBLE, 1, 20
ZBFREAD "test1.zbf", B, P
 
FOR j, 1, ny, 1
FOR i, 1, nx, 1
FORMAT 4.0
PRINT i, j,
FORMAT 12.6
IF (ip == 1)
PRINT B(i, j, 1),
PRINT B(i, j, 2),
PRINT B(i, j, 3),
PRINT B(i, j, 4)
ELSE
PRINT B(i, j, 1),
PRINT B(i, j, 2)
ENDIF
NEXT
NEXT
 
! save the beam
ZBFWRITE "TEST2.ZBF", B, P
 
! release the allocated memory
RELEASE B
RELEASE P

次へ :