2004年08月06日 森川靖大
Put または Put_Line は出力を行うためのサブルーチンです。Fortran の WRITE 文または PRINT 文に倣ったものです。Put という名前は ISO_VARYING_STRING の同名のサブルーチンに由来しています。
Put は gtool 変数(gt_variable 型)に書き出しを行います。
Put_Line は印字処理です。変数の内容を文字列化して出力します。
subroutine Put(var, value, nvalue, err) integer, intent(in):: nvalue 内部型, intent(in):: value(nvalue) logical, intent(out):: err end subroutine
長さ nvalue の配列 value (内部型としては現在 REAL または DOUBLE PRECISION がサポートされます)を var が指示する変数に出力します。var の現在の入出力範囲(スライス)の大きさは nvalue でなければなりません。err は失敗した場合真に確定されます。
なお、データ value の型が var の型と異なる場合、 データは var の型に変換されます。 この変換は netCDF の機能を用いています。 詳しくは netCDF 日本語版マニュアルの 3.3 型変換 を参照してください。
! 2次元の例 subroutine Put(var, value, err) type(gt_variable), intent(in):: var 内部型, intent(in):: value(:, :) logical, intent(out), optional:: err end subroutine
出力される配列が1〜3次元の場合は配列の大きさを省略することができます。 また、ここで err を省略するとエラーが起こった場合にはプログラムが異常終了します。
なお、データ value の型が var の型と異なる場合、 データは var の型に変換されます。 この変換は netCDF の機能を用いています。 詳しくは netCDF 日本語版マニュアルの 3.3 型変換 を参照してください。
subroutine Put_Line(var, err) type(gt_variable), intent(in):: var logical, intent(out), optional:: err end subroutine
Get と書式つき WRITE 文をあわせたような機能です。変数 var の内容を標準出力(正確には * で識別される装置)に印字します。