gt4f90ioリファレンスマニュアル - 手続名のリスト

subroutine Put, Put_Line

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 型変換 を参照してください。

1〜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 の内容を標準出力(正確には * で識別される装置)に印字します。