Class gtool_history_nmlinfo_generic
In: gtool/gtool_history_nmlinfo/gtool_history_nmlinfo_generic.f90

gtool_history_nmlinfo より提供される手続の引用仕様宣言

Interface of procedures provided from gtool_history_nmlinfo

Note that Japanese and English are described in parallel.

モジュールの概要については, gtool_history_nmlinfo を参照ください.

See "gtool_history_nmlinfo" for brief of this module.

Procedures List

HstNmlInfoCreate :gtool_history_nmlinfo_types#GTHST_NMLINFO 型変数の初期設定
HstNmlInfoClose :gtool_history_nmlinfo_types#GTHST_NMLINFO 型変数の終了処理
HstNmlInfoPutLine :gtool_history_nmlinfo_types#GTHST_NMLINFO 型変数に格納されている情報の印字
HstNmlInfoInitialized :gtool_history_nmlinfo_types#GTHST_NMLINFO 型変数が初期設定されているか否か
HstNmlInfoDefineMode :定義モードの場合に真を返す
HstNmlInfoEndDefine :変数情報定義モードから出力モードへ変更
HstNmlInfoReDefine :出力モードから変数情報定義モードへ変更
HstNmlInfoAdd :変数情報の追加
HstNmlInfoDelete :変数情報の削除
HstNmlInfoResetDefault :デフォルト設定のみに戻す
HstNmlInfoInquire :変数情報の問い合わせ
HstNmlInfoAssocGtHist :変数に応じた gtool_history_types#GT_HISTORY 型変数を返す
HstNmlInfoOutputStepDisable :output_step が常に .false. を返すよう設定する
HstNmlInfoOutputStep :出力の設定が有効である場合に真を返す
HstNmlInfoOutputValid :現在の時刻が出力のタイミングの場合に真を返す
HstNmlInfoNames :登録されている変数名リストを返す (関数)
HstNmlInfoGetNames :登録されている変数名リストを返す (サブルーチン)
HstNmlInfoAllVarIniCheck :初期設定されていない変数名のチェック
HstNmlInfoSetValidName :変数名の有効性を設定
HstNmlInfoAllNameValid :無効な変数名のチェック
———— :————
HstNmlInfoCreate :Constructor of "gtool_history_nmlinfo_types#GTHST_NMLINFO"
HstNmlInfoClose :Deconstructor of "gtool_history_nmlinfo_types#GTHST_NMLINFO"
HstNmlInfoPutLine :Print information of "gtool_history_nmlinfo_types#GTHST_NMLINFO"
HstNmlInfoInitialized :Check initialization of "gtool_history_nmlinfo_types#GTHST_NMLINFO"
HstNmlInfoDefineMode :True is returned if current state is define mode
HstNmlInfoEndDefine :Transit define mode about information of variables to output mode
HstNmlInfoReDefine :Transit output mode to define mode about information of variables
HstNmlInfoAdd :Add information of variables
HstNmlInfoDelete :Delete information of variables
HstNmlInfoResetDefault :Reset to default settings
HstNmlInfoInquire :Inquire information of variables
HstNmlInfoAssocGtHist :"gtool_history_types#GT_HISTORY" correspond to variable is returned
HstNmlInfoOutputStepDisable :Configure that "output_step" returns .false. already
HstNmlInfoOutputStep :True is returned when a configuration of output is valid
HstNmlInfoOutputValid :True is returned when current time is output timing
HstNmlInfoNames :Return list of registerd variable identifiers (function)
HstNmlInfoGetNames :Return list of registerd variable identifiers (subroutine)
HstNmlInfoAllVarIniCheck :Check uninitialized variable names
HstNmlInfoSetValidName :Set validation to variable names
HstNmlInfoAllNameValid :Check invalid variable names

Usage

このモジュールは以下のような手順で用いてください.

このモジュールを使用したサンプル Fortran プログラム 作成スクリプトが www.gfd-dennou.org/library/dcpam/dcpam4/dcpam4_current/script/f90/dcmodel_f90sample_maker.rb から入手できます. Ruby で記述されており, 実行することで サンプルとなる Fortran プログラムが作成されます. 下記の解説のみでは実際の利用法やご利益が分かりにくいため, サンプル Fortran プログラムを実際に見てみることをオススメします.

  1. モジュール内で, gtool_history_nmlinfo_types#GTHST_NMLINFO 型の変数を定義しておきます.
  2. HstNmlInfoCreate を用いて, gtool_history_nmlinfo_types#GTHST_NMLINFO 型の変数の初期設定を行います. この際にデフォルトの出力間隔 interval_value, interval_unit, 精度 precision, 時間の平均化 time_average, 出力ファイル名接頭詞 fileprefix を設定します.
  3. プログラムがデフォルトで出力する変数がある場合, Add を 使用して登録してください. name には変数名を与えます. name は変数を識別するためのキーと して利用するため, 異なる変数に対して同じ name を指定しないで ください. file には出力ファイル名を与えます. 与えない場合, 適当なファイル名が設定されます. その他の情報は上記と同様です.
  4. NAMELIST から得られた出力変数の情報を, HstNmlInfoAdd を使用して登録してください. HstNmlInfoAdd で既に登録済みの name を再度登録することで, 設定が上書きされます.
  5. 登録が完了したら, HstNmlInfoEndDefine を用いて, 定義モードから出力モードへ移行してください.
  6. gtool_history_generic#HistoryCreate, gtool_history_generic#HistoryAddVariable gtool_history_generic#HistoryPut 等で出力設定およびデータ出力を行う際には, HstNmlInfoAssocGtHist に対し, 変数名 namegtool_history_types#GT_HISTORY 型のポインタ history を渡してください. gtool_history_nmlinfo_types#GTHST_NMLINFO 型の変数に登録されている name に関する gtool_history_types#GT_HISTORY 型変数に結合された history が返ります. この history を上記 gtool_history のサブルーチン群の引数 history に渡して 出力設定およびデータ出力を行ってください. gtool_history_generic#HistoryCreate に必要な 出力間隔や精度は HstNmlInfoInquire を用いて得ることができます. 使用後は, NULLIFY によって history を空状態にしてください. (DEALLOCATE を使用すると出力に関する情報が失われるため, 使用しないでください).

    それぞれの変数に関して, 出力設定が有効かどうかについては, HstNmlInfoOutputValid で知ることが可能です.

    また, 時間積分中に gtool_history_generic#HistoryPut を使用する際 に, 現在時刻が出力タイミングかどうかについては, HstNmlInfoOutputStep で知ることが可能です.

  7. ファイルの出力が終了したら, 上記の手順と同様に gtool_history_types#GT_HISTORY 型の history を取得し, gtool_history_generic#HistoryClose によって終了処理を行ってください.
  8. 最後に, HstNmlInfoClose によって, gtool_history_nmlinfo_types#GTHST_NMLINFO 型の変数の 終了処理を行います.

Use this module as follows.

Sample Fortran programs generator (Ruby script) is available from www.gfd-dennou.org/library/dcpam/dcpam4/dcpam4_current/script/f90/dcmodel_f90sample_maker.rb . Sample Fortran programs are created by executing this script. Because neither actual usage nor the profit are understood easily only from the following explanations, It is recommended to see sample Fortran programs actually.

  1. Declare "gtool_history_nmlinfo_types#GTHST_NMLINFO" variable in the module.
  2. Initialize "gtool_history_nmlinfo_types#GTHST_NMLINFO" variable by "HstNmlInfoCreate". On this occasion, configure default interval_value, interval_unit, precision, time_average, fileprefix (prefix of output file).
  3. Register by using "HstNmlInfoAdd" when there are variables that the program outputs by default. variable identifier is given to name. Do not specify same name for different variables because name is used as a key to identify the variable. The output file name is given to file. A suitable file name is set when not giving it. The extra information is similar to the above-mentioned.
  4. Register information of output variables obtained from NAMELIST by using "HstNmlInfoAdd". When registered name is registered again, the setting concerning the name has been overwritten.
  5. Shift from the define mode to output mode by using "HstNmlInfoEndDefine" when registration is completed.
  6. Pass "HstNmlInfoAssocGtHist" variable identifier name and history of "gtool_history_types#GT_HISTORY" pointer when setting output and data output is performed with "gtool_history_generic#HistoryCreate", "gtool_history_generic#HistoryAddVariable" "gtool_history_generic#HistoryPut" etc. history is associated to "gtool_history_types#GT_HISTORY" correspond to name stored in "gtool_history_nmlinfo_types#GTHST_NMLINFO" variable. Pass the history to subroutines in "gtool_history" above-mentioned, and configure output setting and output data. Necessary output interval and precision for "gtool_history_generic#HistoryCreate" can be obtained by using "HstNmlInfoInquire". Please put history into a null state by NULLIFY after use. (Information of output is lost when DEALLOCATE is used, so do not use it).

    It can know whether the output setting is effective for each variable with "output_valid".

    Moreover, it can know time now to be whether output timing when "gtool_history_generic#HistoryPut" is used while integrating time with "output_step".

  7. Acquire history of "gtool_history_types#GT_HISTORY" type as well as the above-mentioned procedure, and terminate that by "gtool_history_generic#HistoryClose" when the output of the file ends.
  8. Finally, the termination of the variable of "gtool_history_nmlinfo_types#GTHST_NMLINFO" type is done by "Close".

Methods

Included Modules

gtool_history_nmlinfo_types dc_types gtool_history dc_date_types

Public Instance methods

HstNmlInfoAdd( gthstnml, [name], [file], [interval_value], [interval_unit], [precision], [time_average], [average], [fileprefix], [origin_value], [origin_unit], [terminus_value], [terminus_unit], [slice_start], [slice_end], [slice_stride], [space_average], [newfile_intvalue], [newfile_intunit], [err] )
Subroutine :recursive
gthstnml :type(GTHST_NMLINFO), intent(inout)
name :character(*), intent(in), optional
: 変数名.

先頭の空白は無視されます.

"Data1,Data2" のようにカンマで区切って複数 の変数を指定することも可能です.

Variable identifier.

Blanks at the head of the name are ignored.

Multiple variables can be specified as "Data1,Data2" too. Delimiter is comma.

file :character(*), intent(in), optional
: ヒストリデータのファイル名. History data filenames
interval_value :real(DP), intent(in), optional
: ヒストリデータの出力間隔の数値. 負の値を与えると, 出力を抑止します.

Numerical value for interval of history data output. Negative values suppresses output.

interval_unit :character(*), intent(in), optional
: ヒストリデータの出力間隔の単位. Unit for interval of history data output
precision :character(*), intent(in), optional
: ヒストリデータの精度. Precision of history data
time_average :logical, intent(in), optional
: 出力データの時間平均化フラグ. Flag for time average of output data.
average :logical, intent(in), optional
: time_average の旧版. Old version of "time_average"
fileprefix :character(*), intent(in), optional
: ヒストリデータのファイル名の接頭詞. Prefixes of history data filenames
origin_value :real(DP), intent(in), optional
: 出力開始時刻. Start time of output.
origin_unit :character(*), intent(in), optional
: 出力開始時刻の単位. Unit of start time of output.
terminus_value :real(DP), intent(in), optional
: 出力終了時刻. End time of output.
terminus_unit :character(*), intent(in), optional
: 出力終了時刻の単位. Unit of end time of output.
slice_start(:) :integer, intent(in), optional
: 空間方向の開始点. Start points of spaces.
slice_end(:) :integer, intent(in), optional
: 空間方向の終了点. End points of spaces.
slice_stride(:) :integer, intent(in), optional
: 空間方向の刻み幅. Strides of spaces.
space_average(:) :logical, intent(in), optional
: 平均化のフラグ. Flag of average.
newfile_intvalue :integer, intent(in), optional
: ファイル分割時間間隔. Interval of time of separation of a file.
newfile_intunit :character(*), intent(in), optional
: ファイル分割時間間隔の単位. Unit of interval of time of separation of a file.
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

変数の出力情報を加えます.

デフォルト値を設定するには, name を与えないか, または name に空白を与えてください. デフォルト値を与える場合, file に与えられる情報は無視されます. fileprefix はデフォルト値に与える場合のみ有効です.

name に変数名が指定され, その際に file が与えられない, または空白が与えられる場合, file には "<name に与えられた文字>.nc" が指定されます.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Add output information of a variable.

In order to set default values, specify blank to name or do not specify name. When default values are specified, file is ignored. fileprefix is valid only when default values are specified.

When a variable identifier is specified to name and file is not specified or blanks are specified to file, "<string given to name>.nc" is specified to file.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoadd.f90#HstNmlInfoAdd

HstNmlInfoAllNameValid( gthstnml, invalid, names, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
invalid :logical, intent(out)
: 無効な変数名が存在する 場合には .true. を返す.

If invalid variable names are exist, .true. is returned.

names :character(*), intent(out)
: 無効な変数名のリスト.

List of invalid variable names.

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

無効な変数名のチェック

HstNmlInfoSetValidName によって, 有効性を設定されていない変数が ある場合, invalid に .true. を返し, names には無効な 変数名をカンマで区切った文字列を返します.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Check invalid variable names

If variable names that are not set validation by "HstNmlInfoSetValidName" are exist, .true. is set to invalid, and invalid variable names are joined with comma, and set to names.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoallnamevalid.f90#HstNmlInfoAllNameValid

HstNmlInfoAllVarIniCheck( gthstnml, invalid, names, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
invalid :logical, intent(out)
: 初期設定されていない変数名が存在する 場合には .true. を返す.

If uninitialized variable names are exist, .true. is returned.

names :character(*), intent(out)
: 初期設定されていない変数名のリスト.

List of uninitialized variable names.

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

初期設定されていない変数名のチェック

初期設定されていない変数名がある場合, invalid に .true. を返し, names には初期設定されていない 変数名をカンマで区切った文字列を返します.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Check uninitialized variable names

If uninitialized variable names are exist, .true. is set to invalid, and uninitialized variable names are joined with comma, and set to names.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoallvarinicheck.f90#HstNmlInfoAllVarIniCheck

HstNmlInfoAssocGtHist( gthstnml, name, history, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
name :character(*), intent(in)
: 変数名. 先頭の空白は無視されます.

Variable identifier. Blanks at the head of the name are ignored.

history :type(GT_HISTORY), pointer
: (out)

gtool_history モジュール用構造体. Derived type for "gtool_history" module

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

与えられた gtool_history_types#GT_HISTORY 型のポインタ history に対し, gthstnml 内の name に関する gtool_history_types#GT_HISTORY 型変数を 結合します. 空状態の history を与えてください.

HstNmlInfoEndDefine で定義モードから出力モードに 移行した後に呼び出してください. HstNmlInfoEndDefine を呼ぶ前にこのサブルーチンを使用すると, プログラムはエラーを発生させます.

name に関する情報が見当たらない場合, プログラムはエラーを発生させます. name が空文字の場合にも, プログラムはエラーを発生させます.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合にも, プログラムはエラーを発生させます.

This subroutine associates given "gtool_history_types#GT_HISTORY" pointer history to "gtool_history_types#GT_HISTORY" correspond to name in gthstnml. Give null history.

Use after state is changed from define mode to output mode by "HstNmlInfoEndDefine". If this subroutine is used before "HstNmlInfoEndDefine" is used, error is occurred.

When data correspond to name is not found, error is occurred. When name is blank, error is occurred too.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoassocgthist.f90#HstNmlInfoAssocGtHist

HstNmlInfoClose( gthstnml, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(inout)
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

GTHST_NMLINFO 型の変数の終了処理を行います.

このサブルーチンを使用する前に, gthstnml に格納されている gtool_history_types#GT_HISTORY 型の全ての変数に対して, gtool_history_generic#HistoryClose を用いて終了処理を行ってください. 終了処理されていないものがある場合, プログラムはエラーを発生させます.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Deconstructor of "GTHST_NMLINFO".

Terminate all "gtool_history_types#GT_HISTORY" variables in gthstnml by "gtool_history_generic#HistoryClose" before this subroutine is used. If unterminated variables remain, error is occurred.

Note that if gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoclose.f90#HstNmlInfoClose

HstNmlInfoCreate( gthstnml, [interval_value], [interval_unit], [precision], [time_average], [average], [fileprefix], [origin_value], [origin_unit], [terminus_value], [terminus_unit], [slice_start], [slice_end], [slice_stride], [space_average], [newfile_intvalue], [newfile_intunit], [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(inout)
interval_value :real(DP), intent(in), optional
: ヒストリデータの出力間隔の数値. 負の値を与えると, 出力を抑止します.

Numerical value for interval of history data output. Negative values suppresses output.

interval_unit :character(*), intent(in), optional
: ヒストリデータの出力間隔の単位. Unit for interval of history data output
precision :character(*), intent(in), optional
: ヒストリデータの精度. Precision of history data
time_average :logical, intent(in), optional
: 出力データの時間平均化フラグ. Flag for time average of output data.
average :logical, intent(in), optional
: time_average の旧版. Old version of "time_average"
fileprefix :character(*), intent(in), optional
: ヒストリデータのファイル名の接頭詞. Prefixes of history data filenames
origin_value :real(DP), intent(in), optional
: 出力開始時刻. Start time of output.
origin_unit :character(*), intent(in), optional
: 出力開始時刻の単位. Unit of start time of output.
terminus_value :real(DP), intent(in), optional
: 出力終了時刻. End time of output.
terminus_unit :character(*), intent(in), optional
: 出力終了時刻の単位. Unit of end time of output.
slice_start(:) :integer, intent(in), optional
: 空間方向の開始点. Start points of spaces.
slice_end(:) :integer, intent(in), optional
: 空間方向の終了点. End points of spaces.
slice_stride(:) :integer, intent(in), optional
: 空間方向の刻み幅. Strides of spaces.
space_average(:) :logical, intent(in), optional
: 平均化のフラグ. Flag of average.
newfile_intvalue :integer, intent(in), optional
: ファイル分割時間間隔. Interval of time of separation of a file.
newfile_intunit :character(*), intent(in), optional
: ファイル分割時間間隔の単位. Unit of interval of time of separation of a file.
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

GTHST_NMLINFO 型の変数の初期設定を行います. 他のサブルーチンを使用する前に必ずこのサブルーチンによって GTHST_NMLINFO 型の変数を初期設定してください.

interval_value, interval_unit, precision, time_average (旧 average) などの変数 はデフォルト値として設定されます. fileprefix は各変数の出力ファイル名の接頭詞として 使用されます.

なお, 与えられた gthstnml が既に初期設定されている場合, プログラムはエラーを発生させます.

Constructor of "GTHST_NMLINFO". Initialize gthstnml by this subroutine, before other procedures are used,

interval_value, interval_unit, precision, time_average (now-defunct average), etc. are set as default values. fileprefix is used as prefixes of output filenames of each variable.

Note that if gthstnml is already initialized by this procedure, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfocreate.f90#HstNmlInfoCreate

HstNmlInfoDefineMode( gthstnml ) result(result)
Function :
result :logical
gthstnml :type(GTHST_NMLINFO), intent(in)

gthstnml が定義モードであれば .true. が, 定義モードでなければ .false. が返ります.

If gthstnml is define mode, .true. is returned. If gthstnml is not define mode, .false. is returned.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfodefinemode.f90#HstNmlInfoDefineMode

HstNmlInfoDelete( gthstnml, name, [err] )
Subroutine :recursive
gthstnml :type(GTHST_NMLINFO), intent(inout)
name :character(*), intent(in)
: 変数名.

先頭の空白は無視されます.

"Data1,Data2" のようにカンマで区切って複数 の変数を指定することが可能です.

Variable identifier.

Blanks at the head of the name are ignored.

Multiple variables can be specified as "Data1,Data2". Delimiter is comma.

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

変数の出力情報を削除します.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Delete output information of a variable.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfodelete.f90#HstNmlInfoDelete

HstNmlInfoEndDefine( gthstnml, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(inout)
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

定義モードから出力モードに移行し, gthstnml に設定した情報を確定します. HstNmlInfoAssocGTHist サブルーチンを呼び出す前に, 必ずこのサブルーチンを呼び出してください. このサブルーチンを呼んだ後に HstNmlInfoAdd, HstNmlInfoDelete, HstNmlInfoResetDefault を呼ぶとプログラムはエラーを発生させます.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合にも, プログラムはエラーを発生させます.

Transit from define mode to output mode, and determine information configured in gthstnml. Use this subroutine before "HstNmlInfoAssocGTHist" is used. If "HstNmlInfoAdd", "HstNmlInfoDelete", "HstNmlInfoResetDefault" are used after this subroutine is used, error is occurred.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoenddefine.f90#HstNmlInfoEndDefine

HstNmlInfoGetNames( gthstnml, varnames_ary, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
varnames_ary(:) :character(TOKEN), pointer
: (out)
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

gthstnml が設定されている変数リストを文字型配列ポインタに 返します. varnames_ary は空状態にして与えてください.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

List of variables registered in gthstnml is returned to character array pointer. Nullify "varnames_ary" before it is given to this subroutine.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfogetnames.f90#HstNmlInfoGetNames

HstNmlInfoInitialized( gthstnml ) result(result)
Function :
result :logical
gthstnml :type(GTHST_NMLINFO), intent(in)

gthstnml が初期設定されている場合には .true. が, 初期設定されていない場合には .false. が返ります.

If gthstnml is initialized, .true. is returned. If gthstnml is not initialized, .false. is returned.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoinitialized.f90#HstNmlInfoInitialized

HstNmlInfoInquire( gthstnml, [name], [file], [interval_value], [interval_unit], [precision], [time_average], [average], [fileprefix], [origin_value], [origin_unit], [terminus_value], [terminus_unit], [slice_start], [slice_end], [slice_stride], [space_average], [newfile_intvalue], [newfile_intunit], [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
name :character(*), intent(in), optional
: 変数名. 先頭の空白は無視されます.

Variable identifier. Blanks at the head of the name are ignored.

file :character(*), intent(out), optional
: ヒストリデータのファイル名. History data filenames
interval_value :real(DP), intent(out), optional
: ヒストリデータの出力間隔の数値. 負の値を与えると, 出力を抑止します.

Numerical value for interval of history data output. Negative values suppresses output.

interval_unit :character(*), intent(out), optional
: ヒストリデータの出力間隔の単位. Unit for interval of history data output
precision :character(*), intent(out), optional
: ヒストリデータの精度. Precision of history data
time_average :logical, intent(out), optional
: 出力データの時間平均化フラグ. Flag for time average of output data.
average :logical, intent(out), optional
: time_average の旧版. Old version of "time_average"
fileprefix :character(*), intent(out), optional
: ヒストリデータのファイル名の接頭詞. Prefixes of history data filenames
origin_value :real(DP), intent(out), optional
: 出力開始時刻. Start time of output.
origin_unit :character(*), intent(out), optional
: 出力開始時刻の単位. Unit of start time of output.
terminus_value :real(DP), intent(out), optional
: 出力終了時刻. End time of output.
terminus_unit :character(*), intent(out), optional
: 出力終了時刻の単位. Unit of end time of output.
slice_start(:) :integer, intent(out), optional
: 空間方向の開始点. Start points of spaces.
slice_end(:) :integer, intent(out), optional
: 空間方向の終了点. End points of spaces.
slice_stride(:) :integer, intent(out), optional
: 空間方向の刻み幅. Strides of spaces.
space_average(:) :logical, intent(out), optional
: 平均化のフラグ. Flag of average.
newfile_intvalue :integer, intent(out), optional
: ファイル分割時間間隔. Interval of time of separation of a file.
newfile_intunit :character(*), intent(out), optional
: ファイル分割時間間隔の単位. Unit of interval of time of separation of a file.
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

変数の出力情報を問い合わせます.

デフォルト値を取得するには, name を与えないか, または name に空白を与えてください.

name に関するデータが存在しない場合, エラーを発生させます.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Inquire output information of a variable.

If data correspond to name is not found, error is occurred.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoinquire.f90#HstNmlInfoInquire

HstNmlInfoNames( gthstnml ) result(result)
Function :
result :character(STRING)
gthstnml :type(GTHST_NMLINFO), intent(in)

gthstnml が設定されている変数リストをカンマでつなげて 返します.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, 空文字が返ります.

List of variables registered in gthstnml is join with camma, and returned.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, blank is returned.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfonames.f90#HstNmlInfoNames

HstNmlInfoOutputStep( gthstnml, name, time ) result(result)
Function :
result :logical
gthstnml :type(GTHST_NMLINFO), intent(in)
name :character(*), intent(in)
: 変数名. 先頭の空白は無視されます.

Variable identifier. Blanks at the head of the name are ignored.

time :type(DC_DIFFTIME), intent(in)
: 現在時刻. Current time

time が変数 name の出力されるタイミングであれば .true. を, そうでなければ .false. を返します. gthstnml が初期設定されていない場合にも .false. が返ります. name に関するデータが存在しない場合にも .false. が返ります.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

If time is the time that a variable name is output, .true. is returned, otherwise .false. is returned When gthstnml is not initialized, .false. is returned too. When data correspond to name is not found, .false. is returned too.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfooutputstep.f90#HstNmlInfoOutputStep

HstNmlInfoOutputStepDisable( gthstnml, name, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
name :character(*), intent(in)
: 変数名. 先頭の空白は無視されます.

Variable identifier. Blanks at the head of the name are ignored.

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

このサブルーチンを使用すると, name に関して, 以降は HstNmlInfoOutputStep が常に .false. を返すようになります.

データ出力間隔を出力の初期設定から変更し, データを出力するたびに時刻を明示的に指定する場合に利用することを 想定しています.

HstNmlInfoEndDefine で定義モードから出力モードに 移行した後に呼び出してください. HstNmlInfoEndDefine を呼ぶ前にこのサブルーチンを使用すると, プログラムはエラーを発生させます.

name に関する情報が見当たらない場合, プログラムはエラーを発生させます. name が空文字の場合にも, プログラムはエラーを発生させます.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合にも, プログラムはエラーを発生させます.

After this subroutine is used, "HstNmlInfoOutputStep" returns .false. already corresponding to the name.

This subroutine expected to use when interval of data output is changed from initialization of output, and time is specified explicitly whenever data is output.

Use after state is changed from define mode to output mode by "HstNmlInfoEndDefine". If this subroutine is used before "HstNmlInfoEndDefine" is used, error is occurred.

When data correspond to name is not found, error is occurred. When name is blank, error is occurred too.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfooutputstepdisable.f90#HstNmlInfoOutputStepDisable

HstNmlInfoOutputValid( gthstnml, name ) result(result)
Function :
result :logical
gthstnml :type(GTHST_NMLINFO), intent(in)
name :character(*), intent(in)
: 変数名. 先頭の空白は無視されます.

Variable identifier. Blanks at the head of the name are ignored.

変数 name の出力が有効であれば, .true. を, そうでなければ .false. を返します. 出力が有効であるかどうかは, 出力間隔 interval_value の 正負によって判定されます. 正の場合が有効, 負の場合が無効です. gthstnml が初期設定されていない場合にも .false. が返ります. name に関するデータが存在しない場合にも .false. が返ります.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

If output of a variable name is valid, .true. is returned, otherwise .false. is returned. Whether output is valid or not is judged with positive or negative of interval_value. Positive is valid, and negative is invalid. When gthstnml is not initialized, .false. is returned too. When data correspond to name is not found, .false. is returned too.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfooutputvalid.f90#HstNmlInfoOutputValid

HstNmlInfoPutLine( gthstnml, [unit], [indent], [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
unit :integer, intent(in), optional
: 出力先の装置番号. デフォルトの出力先は標準出力.

Unit number for output. Default value is standard output.

indent :character(*), intent(in), optional
: 表示されるメッセージの字下げ.

Indent of displayed messages.

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

引数 gthstnml に設定されている情報を印字します. デフォルトではメッセージは標準出力に出力されます. unit に装置番号を指定することで, 出力先を変更することが可能です.

Print information of gthstnml. By default messages are output to standard output. Unit number for output can be changed by unit argument.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfoputline.f90#HstNmlInfoPutLine

HstNmlInfoReDefine( gthstnml, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(inout)
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

出力モードから定義モードに戻り, 再び情報を設定可能にします. HstNmlInfoAssocGTHist サブルーチンを呼び出す前には, 再度 HstNmlInfoEndDefine を呼び出して定義モードへと移行してください. このサブルーチンを呼んだ後でなら, 再度 HstNmlInfoAdd, HstNmlInfoDelete, HstNmlInfoResetDefault を呼ぶことが可能です.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合にも, プログラムはエラーを発生させます.

Return from output mode to define mode, information can be configured again. Use "HstNmlInfoEndDefine" again and transit from define mode to output mode, before "HstNmlInfoAssocGTHist" is used. "HstNmlInfoAdd", "HstNmlInfoDelete", "HstNmlInfoResetDefault" can be are used again after this subroutine is used.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinforedefine.f90#HstNmlInfoReDefine

HstNmlInfoResetDefault( gthstnml, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(inout)
err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

デフォルト値を残し, 登録したデータを削除します.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Stored data is deleted without default settings.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinforesetdefault.f90#HstNmlInfoResetDefault

HstNmlInfoSetValidName( gthstnml, name, [err] )
Subroutine :
gthstnml :type(GTHST_NMLINFO), intent(in)
name :character(*), intent(in)
: 有効であることを設定する変数名.

"Data1,Data2" のようにカンマで区切って複数 の変数を指定することも可能です.

A variable name that is set validation.

Multiple variables can be specified as "Data1,Data2" too. Delimiter is comma.

err :logical, intent(out), optional
: 例外処理用フラグ. デフォルトでは, この手続き内でエラーが 生じた場合, プログラムは強制終了します. 引数 err が与えられる場合, プログラムは強制終了せず, 代わりに err に .true. が代入されます.

Exception handling flag. By default, when error occur in this procedure, the program aborts. If this err argument is given, .true. is substituted to err and the program does not abort.

変数名の有効性を設定.

無効な変数名を検知するため, このサブルーチンで 有効な変数に対しては明示的に設定を行います.

なお, 与えられた gthstnmlHstNmlInfoCreate によって初期設定 されていない場合, プログラムはエラーを発生させます.

Set validation to variable names.

For detection of invalid variable names, Set validation to variable names explicitly by this subroutine.

If gthstnml is not initialized by "HstNmlInfoCreate" yet, error is occurred.

Original external subprogram is gtool/gtool_history_nmlinfo/hstnmlinfosetvalidname.f90#HstNmlInfoSetValidName