conductor_size

conductor_readを実行する際に確保しておく配列変数のサイズを読み込みます。

 

 

function conductor_size( cndct_file, src_file, stn_file, strct_file,

    numof_absorp_r1x, numof_absorp_r1y,

    numof_absorp_r2x, numof_absorp_r2y,

    numof_dump2d_x, numof_dump2d_y, numof_dump2d_z

) result(status)

 

パラメータ

integer, intent(in) :: arg

波動場の3次元データのマージンの大きさを指定します。

character(len=*), intent(in) :: cndct_file

コンダクターファイルのファイル名を指定します。

character(len=*), intent(out) :: src_file

震源ファイルのファイル名が代入されます。

character(len=*), intent(out) :: stn_file

観測点ファイルのファイル名が代入されます。

character(len=*), intent(out) :: strct_file

構造ファイルのファイル名が代入されます。

integer, intent(out) :: numof_absorp_r1x

第1領域のX方向の吸収境界情報の配列長が代入されます。

integer, intent(out) :: numof_absorp_r1y

第1領域のY方向の吸収境界情報の配列長が代入されます。

integer, intent(out) :: numof_absorp_r2x

第2領域のY方向の吸収境界情報の配列長が代入されます。

integer, intent(out) :: numof_absorp_r2y

第2領域のY方向の吸収境界情報の配列長が代入されます。

integer, intent(out) :: numof_dump2d_x

X軸に垂直な2次元ダンプ情報の配列長が代入されます。

integer, intent(out) :: numof_dump2d_y

Y軸に垂直な2次元ダンプ情報の配列長が代入されます。

integer, intent(out) :: numof_dump2d_z

Z軸に垂直な2次元ダンプ情報の配列長が代入されます。

 

戻り値

関数が成功すると0が返ります。関数が失敗すると、エラーが返ります。返されるエラー値は次の通りです。

 

説明

-1

ファイルオープンに失敗しました。

-2

震源ファイル名の読み込みに失敗しました。

-3

観測点ファイル名の読み込みに失敗しました。

-4

構造ファイル名の読み込みに失敗しました。

-5

読み込みスキップ中にエラーが発生しました。

-6

X,Y方向の吸収境界情報の読み込み中にエラーが発生しました。

-7

Z方向の吸収境界情報の読み込み中にエラーが発生しました。

-8

吸収境界情報の数に不整合があります。

-9

読み込みスキップ中にエラーが発生しました。

-10

読み込みスキップ中にエラーが発生しました。

-11

2次元ダンプ情報の読み込み中にエラーが発生しました。

 

 

解説

*_readを実行する前に確保しておかなければならない、吸収境界情報の配列長と2次元ダンプ情報の配列長を、conductor.txtから読み込みます。また、source_size, station_size, struct_sizeを実行する際にそれぞれのファイル名が必要なため、これらも先にconductor.txtから読み込みます。

 

参照

conductor_read, source_size, station_size, struct_size