[Gt4f90io Reference Manual | Gt4f90io Tutorial]

ファイルから初期値を入力

次に gtool4 形式ファイルのデータをプログラムに入力する方法について解説 します. これは出力結果を初期値として計算を継続する場合, 初期値を変えた 計算を行うなどの場合に必要となります.

HistoryGet

データを入力するには HistoryGet サブルーチンを用います.

real(8) :: u(10,20,30)

call HistoryGet(file='xhistget1.nc', varname='u', array=u)

file には入力するデータの格納されたファイル名を, varname には入力するデータの変数名を与えます. array にはデータが入力されて返ります.

入力されたデータは file@varname のデータのうち最も新しい時刻 のデータが入力されます.

array は入力するデータと同じ次元, 配列サイズで なければならないので注意してください. (異なる場合, エラーと なります).

入力範囲指定

以下のように文字型引数 range を末尾に与えることで, 入力範囲を指定することも可能です.

real(8) :: v(20)

call HistoryGet(file='xhistget2.nc', varname='v', array=v, range='x=180.0,y=-10.0:10.0,t=3.5')

range の表記方法は gtool4 netCDF 規約 の「5.4 コンマ記法」です. 詳しくはそちらを参照してください.

HistoryGetPointer

データの入力にポインタ型の引数を与えることで、入力するデータに 合わせて配列サイズを自動的に設定することも出来ます. (次元数は一致している必要があります).

real(8), pointer  :: w(:,:,:) => null()

call HistoryGetPointer('xhistget3.nc', 'w', w)

この場合, データが入力されるポインタ型の引数は必ず空状態 にして与えてください.

HistoryGetPointer でも上記と同様に range 引数を利用できます.


$Id: gthist_restart.rd,v 1.3 2006/06/03 17:50:49 morikawa Exp $
gtool4 Development Group / GFD Dennou Staff dcstaff@gfd-dennou.org