Class dc_calendar_generic
In: dc_utils/dc_calendar_generic.f90

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

Interface of procedures provided from dc_calendar

モジュールの概要や使用法については, dc_calendar を参照ください.

See "dc_calendar" for brief of this module and usage.

Procedures List

暦に関する手続

Procedures for calendar

DCCalCreate :暦の設定
DCCalInquire :暦情報の問い合わせ
DCCalConvertByUnit :単位の変換
DCCalConvertToSec :時間の秒への変換
DCCalConvertToMin :時間の分への変換
DCCalConvertToHour :時間の時への変換
DCCalConvertToDay :時間の日への変換
DCCalDefault :デフォルトの暦情報の取得
DCCalToChar :暦情報の文字列への変換
DCCalParseUnit :単位の解釈

———— ::

DCCalCreate :Set calendar
DCCalInquire :Inquire information of calendar
DCCalConvertByUnit :Convert of unit
DCCalConvertToSec :Convert time into second
DCCalConvertToMin :Convert time into minute
DCCalConvertToHour :Convert time into hour
DCCalConvertToDay :Convert time into day
DCCalDefault :Get information of default calendar
DCCalToChar :Convert calender information into strings
DCCalParseUnit :Parse units

日時に関する手続

Procedures for date

DCCalDateCreate :日時の設定
DCCalDateInquire :日時の問い合わせ
DCCalDateEval :日時の算出
DCCalDateDifference :日時差の算出
DCCalDateEvalSecOfYear :年始めからの通秒の算出
DCCalDateEvalDayOfYear :年始めからの通日の算出
DCCalDateEvalSecOfDay :日始めからの通秒の算出
DCCalDateChkLeapYear :閏年かどうかの判定
DCCalDateCurrent :実時間の取得
DCCalDateParseStr :日時を示す文字列 (YYYY-MM-DDThh:mm:ss.sTZD) の解釈
DCCalDateToChar :日時の文字列 (YYYY-MM-DDThh:mm:ss.sTZD) への変換

———— ::

DCCalDateCreate :Set date
DCCalDateInquire :Inquire date
DCCalDateEval :Evaluate date
DCCalDateDifference :Evaluate difference of date
DCCalDateEvalSecOfYear :Evaluate second of year
DCCalDateEvalDayOfYear :Evaluate day of year
DCCalDateEvalSecOfDay :Evaluate second of day
DCCalDateChkLeapYear :Judge whether it is a leap year
DCCalDateCurrent :Get actual time
DCCalDateParseStr :Parse a string of date (YYYY-MM-DDThh:mm:ss.sTZD)
DCCalDateToChar :Convert date into a string (YYYY-MM-DDThh:mm:ss.sTZD)

Methods

Included Modules

dc_calendar_types dc_types

Public Instance methods

DCCalConvertByUnit( in_time, in_unit, out_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :character(*), intent(in)
: 変換前の時間の単位.

Units of time before conversion.

out_unit :character(*), intent(in)
: 変換後の時間の単位.

Units of time after conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

単位の変換を行います.

時間の単位として有効な文字列については以下を参照下さい.

dc_calendar_types#UNIT_SEC :秒の単位
dc_calendar_types#UNIT_MIN :分の単位
dc_calendar_types#UNIT_HOUR :時間の単位
dc_calendar_types#UNIT_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit.

Valid strings as units of time are follows.

dc_calendar_types#UNIT_SEC :Units of second
dc_calendar_types#UNIT_MIN :Units of minute
dc_calendar_types#UNIT_HOUR :Units of hour
dc_calendar_types#UNIT_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconvertbyunit.f90#DCCalConvertByUnit1

DCCalConvertByUnit( in_time, in_unit, out_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :integer, intent(in)
: 変換前の時間の単位.

Units of time before conversion.

out_unit :integer, intent(in)
: 変換後の時間の単位.

Units of time after conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

単位の変換を行います.

時間の単位として有効な整数型変数については以下を参照下さい. 単位として整数値を直接与えることはせず, 以下の変数を 与えてください.

dc_calendar_types#UNIT_SYMBOL_SEC :秒の単位
dc_calendar_types#UNIT_SYMBOL_MIN :分の単位
dc_calendar_types#UNIT_SYMBOL_HOUR :時間の単位
dc_calendar_types#UNIT_SYMBOL_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit.

Valid integer variables as units of time are follows. Do not specify integer directly, but specify following variables.

dc_calendar_types#UNIT_SYMBOL_SEC :Units of second
dc_calendar_types#UNIT_SYMBOL_MIN :Units of minute
dc_calendar_types#UNIT_SYMBOL_HOUR :Units of hour
dc_calendar_types#UNIT_SYMBOL_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconvertbyunit.f90#DCCalConvertByUnit2

DCCalConvertToDay( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :character(*), intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な文字列については以下を参照下さい.

dc_calendar_types#UNIT_SEC :秒の単位
dc_calendar_types#UNIT_MIN :分の単位
dc_calendar_types#UNIT_HOUR :時間の単位
dc_calendar_types#UNIT_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid strings as units of time are follows.

dc_calendar_types#UNIT_SEC :Units of second
dc_calendar_types#UNIT_MIN :Units of minute
dc_calendar_types#UNIT_HOUR :Units of hour
dc_calendar_types#UNIT_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttoday.f90#DCCalConvertToDay1

DCCalConvertToDay( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :integer, intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な整数型変数については以下を参照下さい. 単位として整数値を直接与えることはせず, 以下の変数を 与えてください.

dc_calendar_types#UNIT_SYMBOL_SEC :秒の単位
dc_calendar_types#UNIT_SYMBOL_MIN :分の単位
dc_calendar_types#UNIT_SYMBOL_HOUR :時間の単位
dc_calendar_types#UNIT_SYMBOL_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid integer variables as units of time are follows. Do not specify integer directly, but specify following variables.

dc_calendar_types#UNIT_SYMBOL_SEC :Units of second
dc_calendar_types#UNIT_SYMBOL_MIN :Units of minute
dc_calendar_types#UNIT_SYMBOL_HOUR :Units of hour
dc_calendar_types#UNIT_SYMBOL_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttoday.f90#DCCalConvertToDay2

DCCalConvertToHour( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :character(*), intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な文字列については以下を参照下さい.

dc_calendar_types#UNIT_SEC :秒の単位
dc_calendar_types#UNIT_MIN :分の単位
dc_calendar_types#UNIT_HOUR :時間の単位
dc_calendar_types#UNIT_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid strings as units of time are follows.

dc_calendar_types#UNIT_SEC :Units of second
dc_calendar_types#UNIT_MIN :Units of minute
dc_calendar_types#UNIT_HOUR :Units of hour
dc_calendar_types#UNIT_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttohour.f90#DCCalConvertToHour1

DCCalConvertToHour( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :integer, intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な整数型変数については以下を参照下さい. 単位として整数値を直接与えることはせず, 以下の変数を 与えてください.

dc_calendar_types#UNIT_SYMBOL_SEC :秒の単位
dc_calendar_types#UNIT_SYMBOL_MIN :分の単位
dc_calendar_types#UNIT_SYMBOL_HOUR :時間の単位
dc_calendar_types#UNIT_SYMBOL_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid integer variables as units of time are follows. Do not specify integer directly, but specify following variables.

dc_calendar_types#UNIT_SYMBOL_SEC :Units of second
dc_calendar_types#UNIT_SYMBOL_MIN :Units of minute
dc_calendar_types#UNIT_SYMBOL_HOUR :Units of hour
dc_calendar_types#UNIT_SYMBOL_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttohour.f90#DCCalConvertToHour2

DCCalConvertToMin( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :character(*), intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な文字列については以下を参照下さい.

dc_calendar_types#UNIT_SEC :秒の単位
dc_calendar_types#UNIT_MIN :分の単位
dc_calendar_types#UNIT_HOUR :時間の単位
dc_calendar_types#UNIT_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid strings as units of time are follows.

dc_calendar_types#UNIT_SEC :Units of second
dc_calendar_types#UNIT_MIN :Units of minute
dc_calendar_types#UNIT_HOUR :Units of hour
dc_calendar_types#UNIT_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttomin.f90#DCCalConvertToMin1

DCCalConvertToMin( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :integer, intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な整数型変数については以下を参照下さい. 単位として整数値を直接与えることはせず, 以下の変数を 与えてください.

dc_calendar_types#UNIT_SYMBOL_SEC :秒の単位
dc_calendar_types#UNIT_SYMBOL_MIN :分の単位
dc_calendar_types#UNIT_SYMBOL_HOUR :時間の単位
dc_calendar_types#UNIT_SYMBOL_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid integer variables as units of time are follows. Do not specify integer directly, but specify following variables.

dc_calendar_types#UNIT_SYMBOL_SEC :Units of second
dc_calendar_types#UNIT_SYMBOL_MIN :Units of minute
dc_calendar_types#UNIT_SYMBOL_HOUR :Units of hour
dc_calendar_types#UNIT_SYMBOL_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttomin.f90#DCCalConvertToMin2

DCCalConvertToSec( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :character(*), intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な文字列については以下を参照下さい.

dc_calendar_types#UNIT_SEC :秒の単位
dc_calendar_types#UNIT_MIN :分の単位
dc_calendar_types#UNIT_HOUR :時間の単位
dc_calendar_types#UNIT_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid strings as units of time are follows.

dc_calendar_types#UNIT_SEC :Units of second
dc_calendar_types#UNIT_MIN :Units of minute
dc_calendar_types#UNIT_HOUR :Units of hour
dc_calendar_types#UNIT_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttosec.f90#DCCalConvertToSec1

DCCalConvertToSec( in_time, in_unit, [cal] ) result(out_time)
Function :
out_time :real(DP)
: 変換後の時間の数値.

Numerical value of time after conversion.

in_time :real(DP), intent(in)
: 変換前の時間の数値.

Numerical value of time before conversion.

in_unit :integer, intent(in)
: 変換前の時間の単位.

Units of time before conversion.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

任意の時間単位 (日時分秒) から秒への単位の変換を行います.

時間の単位として有効な整数型変数については以下を参照下さい. 単位として整数値を直接与えることはせず, 以下の変数を 与えてください.

dc_calendar_types#UNIT_SYMBOL_SEC :秒の単位
dc_calendar_types#UNIT_SYMBOL_MIN :分の単位
dc_calendar_types#UNIT_SYMBOL_HOUR :時間の単位
dc_calendar_types#UNIT_SYMBOL_DAY :日の単位

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報を用いた単位の変換が行われます. cal が省略されない場合にはその変数に設定された暦の情報を 用いて単位の変換が行われます.

Convert of unit from arbitrary time units (day, hour, minute, second) into sec.

Valid integer variables as units of time are follows. Do not specify integer directly, but specify following variables.

dc_calendar_types#UNIT_SYMBOL_SEC :Units of second
dc_calendar_types#UNIT_SYMBOL_MIN :Units of minute
dc_calendar_types#UNIT_SYMBOL_HOUR :Units of hour
dc_calendar_types#UNIT_SYMBOL_DAY :Units of day

If an optional argument cal is omitted, unit is converted with information of a calendar that is stored in the "dc_calendar". If cal is not omitted, unit is converted with information of the variable.

Original external subprogram is dc_utils/dccalconverttosec.f90#DCCalConvertToSec2

DCCalCreate( cal_type, [cal], [err] )
Subroutine :
cal_type :character(*), intent(in)
: 既定の暦を指定する文字列.

Strings that specify a previously-defined calendar.

cal :type(DC_CAL), intent(out), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

暦の設定を行います.

このサブルーチンは "dc_calendar" モジュールで用意した 既定の暦を設定するものです. 1 ヶ月の日数, 1 日の秒数などを 任意に指定する場合には, 下記の同名のサブルーチンを使用して下さい.

cal_type として以下のものが有効です. これ以外の文字列 を与えた場合にはエラーが発生します. 大文字と小文字は区別しません.

gregorian :グレゴリオ暦
julian :ユリウス暦
noleap :閏年無しの暦
360day :1ヶ月が 30 日の暦
cyclic :ある月の日数を 「30.6 × 月数 − 前月までの総日数」 の小数点以下切捨とする暦

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL" 型の変数に暦が 設定されます. その後の手続きで cal を省略した場合には この暦が使用されます. cal が省略されない場合にはその変数に暦が設定されます. その暦を使用する場合, 手続きにその "dc_calendar_types#DC_CAL" 型の変数 を与えてください.

Set calendar.

This subroutine set previously-defined calendars by "dc_calendar" module. If number of days of a month, number of seconds of a day, etc. want to be specified arbitrarily, use a following homonymous subroutine.

Following strings are valid as cal_type. If any other strings is specified, an error is caused. They are not case-sensitive.

gregorian :Gregorian calendar.
julian :Julian calendar.
noleap :A calendar without leap year.
360day :A calendar in which number of days of a month is 30.
cyclic :A calendar in which number of days of a year is "30.6 x (number of months) - (total days until last month)" (truncate fractional part).

If an optional argument cal is omitted, the calendar setting is stored to a "dc_calendar_types#DC_CAL" variable that is saved in the "dc_calendar". When cal is omitted in subsequent procedures, the internal calendar is used. If cal is not omitted, the settings is stored to the cal. In order to use the calendar setting, use the "dc_calendar_types#DC_CAL" varieble to subsequent procedures.

Original external subprogram is dc_utils/dccalcreate.f90#DCCalCreate1

DCCalCreate( month_in_year, day_in_month, hour_in_day, min_in_hour, sec_in_min, [cal], [err] )
Subroutine :
month_in_year :integer, intent(in)
: 1 年の月数. Months in a year.
day_in_month(:) :integer, intent(in)
: 1 ヶ月の日数. Days in months.
hour_in_day :integer, intent(in)
: 1 日の時間数. Hours in a day.
min_in_hour :integer, intent(in)
: 1 時間の分数. Minutes in a hour.
sec_in_min :real(DP), intent(in)
: 1 分の秒数. Seconds in a minute.
cal :type(DC_CAL), intent(out), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

暦の設定を行います.

1 ヶ月の日数, 1 日の秒数などを引数に指定して下さい. グレゴリオ暦やユリウス暦などを利用する場合には 上記の同名のサブルーチンを使用して下さい.

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL" 型の変数に暦が 設定されます. その後の手続きで cal を省略した場合には この暦が使用されます. cal が省略されない場合にはその変数に暦が設定されます. その暦を使用する場合, 手続きにその "dc_calendar_types#DC_CAL" 型の変数 を与えてください.

Set calendar.

Specify number of days of a month, number of seconds of a day, etc. to arguments. If Gregorian calendar, Julian calendar are needed, see a foregoing homonymous subroutine.

If an optional argument cal is omitted. The calendar setting is stored to a "dc_calendar_types#DC_CAL" variable that is saved in the "dc_calendar". When cal is omitted in subsequent procedures, the internal calendar is used. If cal is not omitted, the settings is stored to the cal. In order to use the calendar setting, use the "dc_calendar_types#DC_CAL" varieble to subsequent procedures.

Original external subprogram is dc_utils/dccalcreate.f90#DCCalCreate2

DCCalDateChkLeapYear( elapse_sec, [date], [cal] ) result(result)
Function :
result :logical
: 閏年であれば .true., そうでなければ .false.

Leap year: .true., No leap year: .false.

elapse_sec :real(DP), intent(in)
: date からの経過秒数. Elapsed seconds from date.
date :type(DC_CAL_DATE), intent(in), optional, target
: 起点となる日時情報を収めたオブジェクト.

An object that stores information of date of origin.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar. 作業変数 Work variables

閏年かどうかの判定.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される日時が起点の日時として用いられます. date が省略されない場合にはその変数に設定された日時が 起点の日時として用いられます.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Judge whether it is a leap year.

If an optional argument date is omitted, information of date that is stored in the "dc_calendar" is used as date of origin, If date is not omitted, information of the variable is used as date of origin.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldatechkleapyear.f90#DCCalDateChkLeapYear1

DCCalDateCreate( date_str, [date], [err] )
Subroutine :
date_str :character(*), intent(in)
: 日時情報を表す文字列. 表示形式については gtool4 netCDF 規約 5.5 日時形式を参照のこと.

Strings that express date and time. See gtool4 netCDF Convention 5.5 Expression of date and time for details.

date :type(DC_CAL_DATE), intent(out), optional, target
: 日時情報を収めたオブジェクト. 省略した場合には, デフォルトの日時として 指定される.

An object that stores information of date and time. If this is omitted, these information is set as default date and time.

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.

日時の設定を行います.

date_str に YYYY-MM-DDThh:mm:ss.sTZD の形式の文字列 (YYYY は年, MM は月, DD は日, hh は時, mm は分, ss.s は秒, TZD はタイムゾーン) を指定してください. 年月日時分秒を各個変数で指定する場合には 上記の同名のサブルーチンを使用して下さい. 日時の文字列形式は gtool4 netCDF 規約「5.5 日時形式」に準拠しています.

"s since 2009-06-17T11:23:45+09:00" のような文字列を与えた場合には, "s since " の部分をサブルーチン内で自動的に切り取って, "2009-06-17T11:23:45+09:00" の部分を設定します.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL_DATE" 型の変数に日時が 設定されます. その後の手続きで date を省略した場合には この日時が使用されます. date が省略されない場合にはその変数に日時が設定されます. その日時を使用する場合, 手続きにその "dc_calendar_types#DC_CAL_DATE" 型の変数 を与えてください.

Set date.

Specify a string like as "YYYY-MM-DDThh:mm:ss.sTZD" (YYYY is year, MM is month, DD is day, hh is hour, mm is minute, ss.s is second, TZD is time zone). If individual variables (year, month, day, hour, minute, second, zone) are used, use a foregoing homonymous subroutine. Format of date is conformed to gtool4 netCDF Convention "5.5 Expression of date and time"

If a string like as "s since 2009-06-17T11:23:45+09:00" is specified, A part "s since " is truncated automatically, and a part "2009-06-17T11:23:45+09:00" is set.

If an optional argument date is omitted, the date setting is stored to a "dc_calendar_types#DC_CAL_DATE" variable that is saved in the "dc_calendar". When date is omitted in subsequent procedures, the internal date is used. If date is not omitted, the settings is stored to the date. In order to use the date setting, use the "dc_calendar_types#DC_CAL_DATE" varieble to subsequent procedures.

Original external subprogram is dc_utils/dccaldatecreate.f90#DCCalDateCreate2

DCCalDateCreate( year, month, day, hour, min, sec, [date], [zone], [err] )
Subroutine :
year :integer, intent(in)
: 年. Year.
month :integer, intent(in)
: 月. Month.
day :integer, intent(in)
: 日. Day.
hour :integer, intent(in)
: 時. Hour.
min :integer, intent(in)
: 分. Minute.
sec :real(DP), intent(in)
: 秒. Second.
date :type(DC_CAL_DATE), intent(out), optional, target
: 日時情報を収めたオブジェクト. 省略した場合には, デフォルトの日時として 指定される.

An object that stores information of date and time. If this is omitted, these information is set as default date and time.

zone :character(*), intent(in), optional
: UTC からの時差. Time-zone.
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.

日時の設定を行います.

YYYY-MM-DDThh:mm:ss.sTZD のような文字列 (YYYY は年, MM は月, DD は日, hh は時, mm は分, ss.s は秒, TZD はタイムゾーン) で指定する場合には 下記の同名のサブルーチンを使用して下さい.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL_DATE" 型の変数に日時が 設定されます. その後の手続きで date を省略した場合には この日時が使用されます. date が省略されない場合にはその変数に日時が設定されます. その日時を使用する場合, 手続きにその "dc_calendar_types#DC_CAL_DATE" 型の変数 を与えてください.

Set date.

If a string like as "YYYY-MM-DDThh:mm:ss.sTZD" (YYYY is year, MM is month, DD is day, hh is hour, mm is minute, ss.s is second, TZD is time zone) is used, use a following homonymous subroutine.

If an optional argument date is omitted, the date setting is stored to a "dc_calendar_types#DC_CAL_DATE" variable that is saved in the "dc_calendar". When date is omitted in subsequent procedures, the internal date is used. If date is not omitted, the settings is stored to the date. In order to use the date setting, use the "dc_calendar_types#DC_CAL_DATE" varieble to subsequent procedures.

Original external subprogram is dc_utils/dccaldatecreate.f90#DCCalDateCreate1

DCCalDateCurrent( date, [err] )
Subroutine :
date :type(DC_CAL_DATE), intent(out)
: 実時間の日時情報を収めたオブジェクト.

An object that stores information of date and time of actual time.

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.

実時間を dc_calendar_types#DC_CAL_DATE 型の date に返します. 実時間は Fortran 90 以降の組み込みサブルーチンである date_and_time から得られます.

Return actual time date (type "dc_calendar_types#DC_CAL_DATE"). The actual time is acquired by "date_and_time" that is a built-in subroutine of Fortran 90 or more.

Original external subprogram is dc_utils/dccaldatecurrent.f90#DCCalDateCurrent1

DCCalDateDifference( start_date, end_date, [cal] ) result(sec)
Function :
sec :real(DP)
: start_dateend_date との差 (秒数). Difference (seconds) between start_date and end_date.
start_date :type(DC_CAL_DATE), intent(in)
: 起点となる日時. Date of origin.
end_date :type(DC_CAL_DATE), intent(in)
: 終点となる日時. Date of terminus.
cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

日時差を算出します.

省略可能引数 cal が省略された場合には, 日時差の算出に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate difference of date.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for evaluation of difference of date. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldatedifference.f90#DCCalDateDifference1

DCCalDateEval( init_date, elapse_sec, [cal], [date], [err] )
Subroutine :
init_date :type(DC_CAL_DATE), intent(in)
: 起点となる日時情報を収めたオブジェクト.

An object that stores information of date of origin.

elapse_sec :real(DP), intent(in)
: init_date からの経過秒数. Elapsed seconds from init_date.
cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

date :type(DC_CAL_DATE), intent(out), optional, target
: 経過時間後の日時情報を収めたオブジェクト.

An object that stores information of date and time after elapsed time.

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.

日時の算出と設定を行います.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL_DATE" 型の変数に日時が 設定されます. その後の手続きで date を省略した場合には この日時が使用されます. date が省略されない場合にはその変数に日時が設定されます. その日時を使用する場合, 手続きにその "dc_calendar_types#DC_CAL_DATE" 型の変数 を与えてください.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate and set date.

If an optional argument date is omitted, the date setting is stored to a "dc_calendar_types#DC_CAL_DATE" variable that is saved in the "dc_calendar". When date is omitted in subsequent procedures, the internal date is used. If date is not omitted, the settings is stored to the date. In order to use the date setting, use the "dc_calendar_types#DC_CAL_DATE" varieble to subsequent procedures.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalID1

DCCalDateEval( init_date, elapse_time, units, [cal], [date], [err] )
Subroutine :
init_date :type(DC_CAL_DATE), intent(in)
: 起点となる日時情報を収めたオブジェクト.

An object that stores information of date of origin.

elapse_time :real(DP), intent(in)
: init_date からの経過時間. 単位は unit で指定する.

Elapsed time from init_date. Unit is specified as unit.

units :character(*), intent(in)
: elapse_time の単位.

Unit of elapse_time.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

date :type(DC_CAL_DATE), intent(out), optional, target
: 経過時間後の日時情報を収めたオブジェクト.

An object that stores information of date and time after elapsed time.

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.

日時の算出と設定を行います.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL_DATE" 型の変数に日時が 設定されます. その後の手続きで date を省略した場合には この日時が使用されます. date が省略されない場合にはその変数に日時が設定されます. その日時を使用する場合, 手続きにその "dc_calendar_types#DC_CAL_DATE" 型の変数 を与えてください.

省略可能引数 cal が省略された場合には, 経過時間 elapse_time の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate and set date.

If an optional argument date is omitted, the date setting is stored to a "dc_calendar_types#DC_CAL_DATE" variable that is saved in the "dc_calendar". When date is omitted in subsequent procedures, the internal date is used. If date is not omitted, the settings is stored to the date. In order to use the date setting, use the "dc_calendar_types#DC_CAL_DATE" varieble to subsequent procedures.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed time elapse_time into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalID2

DCCalDateEval( year, month, day, hour, min, sec, elapse_sec, [cal], [date], [err] )
Subroutine :
year :integer, intent(in)
: 起点の年. Year of origin.
month :integer, intent(in)
: 起点の月. Month of origin.
day :integer, intent(in)
: 起点の日. Day of origin.
hour :integer, intent(in)
: 起点の時. Hour of origin.
min :integer, intent(in)
: 起点の分. Minute of origin.
sec :real(DP), intent(in)
: 起点の秒. Second of origin.
elapse_sec :real(DP), intent(in)
: yearsec からの経過秒数. Elapsed seconds from yearsec
cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

date :type(DC_CAL_DATE), intent(out), optional, target
: 経過時間後の日時情報を収めたオブジェクト.

An object that stores information of date and time after elapsed time.

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.

日時の算出と設定を行います.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL_DATE" 型の変数に日時が 設定されます. その後の手続きで date を省略した場合には この日時が使用されます. date が省略されない場合にはその変数に日時が設定されます. その日時を使用する場合, 手続きにその "dc_calendar_types#DC_CAL_DATE" 型の変数 を与えてください.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate and set date.

If an optional argument date is omitted, the date setting is stored to a "dc_calendar_types#DC_CAL_DATE" variable that is saved in the "dc_calendar". When date is omitted in subsequent procedures, the internal date is used. If date is not omitted, the settings is stored to the date. In order to use the date setting, use the "dc_calendar_types#DC_CAL_DATE" varieble to subsequent procedures.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalYMDHMS1

DCCalDateEval( year, month, day, hour, min, sec, elapse_time, units, [cal], [date], [err] )
Subroutine :
year :integer, intent(in)
: 起点の年. Year of origin.
month :integer, intent(in)
: 起点の月. Month of origin.
day :integer, intent(in)
: 起点の日. Day of origin.
hour :integer, intent(in)
: 起点の時. Hour of origin.
min :integer, intent(in)
: 起点の分. Minute of origin.
sec :real(DP), intent(in)
: 起点の秒. Second of origin.
elapse_time :real(DP), intent(in)
: yearsec からの経過時間. 単位は unit で指定する.

Elapsed time from yearsec Unit is specified as unit.

units :character(*), intent(in)
: elapse_time の単位.

Unit of elapse_time.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

date :type(DC_CAL_DATE), intent(out), optional, target
: 経過時間後の日時情報を収めたオブジェクト.

An object that stores information of date and time after elapsed time.

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.

日時の算出と設定を行います.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される "dc_calendar_types#DC_CAL_DATE" 型の変数に日時が 設定されます. その後の手続きで date を省略した場合には この日時が使用されます. date が省略されない場合にはその変数に日時が設定されます. その日時を使用する場合, 手続きにその "dc_calendar_types#DC_CAL_DATE" 型の変数 を与えてください.

省略可能引数 cal が省略された場合には, 経過時間 elapse_time の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate and set date.

If an optional argument date is omitted, the date setting is stored to a "dc_calendar_types#DC_CAL_DATE" variable that is saved in the "dc_calendar". When date is omitted in subsequent procedures, the internal date is used. If date is not omitted, the settings is stored to the date. In order to use the date setting, use the "dc_calendar_types#DC_CAL_DATE" varieble to subsequent procedures.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed time elapse_time into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalYMDHMS2

DCCalDateEval( year1, month1, day1, hour1, min1, sec1, elapse_sec, year2, month2, day2, hour2, min2, sec2, [cal], [err] )
Subroutine :
year1 :integer, intent(in)
: 起点の年. Year of origin.
month1 :integer, intent(in)
: 起点の月. Month of origin.
day1 :integer, intent(in)
: 起点の日. Day of origin.
hour1 :integer, intent(in)
: 起点の時. Hour of origin.
min1 :integer, intent(in)
: 起点の分. Minute of origin.
sec1 :real(DP), intent(in)
: 起点の秒. Second of origin.
elapse_sec :real(DP), intent(in)
: year1sec1 からの経過秒数. Elapsed seconds from year1sec1
year2 :integer, intent(out)
: 経過時間後の年. Year after elapsed time.
month2 :integer, intent(out)
: 経過時間後の月. Month after elapsed time.
day2 :integer, intent(out)
: 経過時間後の日. Day after elapsed time.
hour2 :integer, intent(out)
: 経過時間後の時. Hour after elapsed time.
min2 :integer, intent(out)
: 経過時間後の分. Minute after elapsed time.
sec2 :real(DP), intent(out)
: 経過時間後の秒. Second after elapsed time.
cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

日時の算出と設定を行います.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate and set date.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalYM2YM1

DCCalDateEval( year1, month1, day1, hour1, min1, sec1, elapse_time, units, year2, month2, day2, hour2, min2, sec2, [cal], [err] )
Subroutine :
year1 :integer, intent(in)
: 起点の年. Year of origin.
month1 :integer, intent(in)
: 起点の月. Month of origin.
day1 :integer, intent(in)
: 起点の日. Day of origin.
hour1 :integer, intent(in)
: 起点の時. Hour of origin.
min1 :integer, intent(in)
: 起点の分. Minute of origin.
sec1 :real(DP), intent(in)
: 起点の秒. Second of origin.
elapse_time :real(DP), intent(in)
: year1sec1 からの経過時間. 単位は unit で指定する.

Elapsed time from year1sec1 Unit is specified as unit.

units :character(*), intent(in)
: elapse_time の単位.

Unit of elapse_time.

year2 :integer, intent(out)
: 経過時間後の年. Year after elapsed time.
month2 :integer, intent(out)
: 経過時間後の月. Month after elapsed time.
day2 :integer, intent(out)
: 経過時間後の日. Day after elapsed time.
hour2 :integer, intent(out)
: 経過時間後の時. Hour after elapsed time.
min2 :integer, intent(out)
: 経過時間後の分. Minute after elapsed time.
sec2 :real(DP), intent(out)
: 経過時間後の秒. Second after elapsed time.
cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

日時の算出と設定を行います.

省略可能引数 cal が省略された場合には, 経過時間 elapse_time の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate and set date.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed time elapse_time into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalYM2YM2

DCCalDateEvalDayOfYear( elapse_sec, [date], [cal] ) result(result)
Function :
result :real(DP)
: 年始めからの通日. Day of year.
elapse_sec :real(DP), intent(in)
: date からの経過秒数. Elapsed seconds from date.
date :type(DC_CAL_DATE), intent(in), optional, target
: 起点となる日時情報を収めたオブジェクト.

An object that stores information of date of origin.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

年始めからの通日を算出します.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される日時が起点の日時として用いられます. date が省略されない場合にはその変数に設定された日時が 起点の日時として用いられます.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate day of year.

If an optional argument date is omitted, information of date that is stored in the "dc_calendar" is used as date of origin, If date is not omitted, information of the variable is used as date of origin.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalDayOfYear1

DCCalDateEvalSecOfDay( elapse_sec, [date], [cal] ) result(result)
Function :
result :real(DP)
: 日始めからの通秒. Second of day.
elapse_sec :real(DP), intent(in)
: date からの経過秒数. Elapsed seconds from date.
date :type(DC_CAL_DATE), intent(in), optional, target
: 起点となる日時情報を収めたオブジェクト.

An object that stores information of date of origin.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

日始めからの通秒を算出します.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される日時が起点の日時として用いられます. date が省略されない場合にはその変数に設定された日時が 起点の日時として用いられます.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate second of day.

If an optional argument date is omitted, information of date that is stored in the "dc_calendar" is used as date of origin, If date is not omitted, information of the variable is used as date of origin.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalSecOfDay1

DCCalDateEvalSecOfYear( elapse_sec, [date], [cal] ) result(result)
Function :
result :real(DP)
: 年始めからの通秒. Second of year.
elapse_sec :real(DP), intent(in)
: date からの経過秒数. Elapsed seconds from date.
date :type(DC_CAL_DATE), intent(in), optional, target
: 起点となる日時情報を収めたオブジェクト.

An object that stores information of date of origin.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

年始めからの通秒を算出します.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される日時が起点の日時として用いられます. date が省略されない場合にはその変数に設定された日時が 起点の日時として用いられます.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Evaluate second of year.

If an optional argument date is omitted, information of date that is stored in the "dc_calendar" is used as date of origin, If date is not omitted, information of the variable is used as date of origin.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateeval.f90#DCCalDateEvalSecOfYear1

DCCalDateInquire( [year], [month], [day], [hour], [min], [sec], [zone], [elapse_sec], [date], [cal], [err] )
Subroutine :
year :integer, intent(out), optional
: 年. Year.
month :integer, intent(out), optional
: 月. Month.
day :integer, intent(out), optional
: 日. Day.
hour :integer, intent(out), optional
: 時. Hour.
min :integer, intent(out), optional
: 分. Minute.
sec :real(DP), intent(out), optional
: 秒. Sec.
zone :character(*), intent(out), optional
: UTC からの時差. Time-zone.
elapse_sec :real(DP), intent(in), optional
: date からの経過秒数. Elapsed seconds from date.
date :type(DC_CAL_DATE), intent(in), optional, target
: 日時情報を収めたオブジェクト.

An object that stores information of date and time.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

日時情報の問い合わせを行います.

問い合わせの結果を YYYY-MM-DDThh:mm:ss.sTZD のような文字列 (YYYY は年, MM は月, DD は日, hh は時, mm は分, ss.s は秒, TZD はタイムゾーン) で受け取りたい場合には, 下記の同名のサブルーチンを使用して下さい.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される日時に関する情報が得られます. date が省略されない場合にはその変数に設定された日時の情報が得られます.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Inquire information of date.

If a string like as "YYYY-MM-DDThh:mm:ss.sTZD" (YYYY is year, MM is month, DD is day, hh is hour, mm is minute, ss.s is second, TZD is time zone) is needed, use a following homonymous subroutine.

If an optional argument date is omitted, information of date that is stored in the "dc_calendar" is returned, If date is not omitted, information of the variable is returned.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateinquire.f90#DCCalDateInquire1

DCCalDateInquire( date_str, [elapse_sec], [date], [cal], [err] )
Subroutine :
date_str :character(*), intent(out)
: 日時情報を表す文字列. 表示形式については gtool4 netCDF 規約 5.5 日時形式を参照のこと.

Strings that express date and time. See gtool4 netCDF Convention 5.5 Expression of date and time for details.

elapse_sec :real(DP), intent(in), optional
: date からの経過秒数. Elapsed seconds from date.
date :type(DC_CAL_DATE), intent(in), optional, target
: 日時情報を収めたオブジェクト.

An object that stores information of date and time.

cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

日時情報の問い合わせを行います. 問い合わせ結果は YYYY-MM-DDThh:mm:ss.sTZD のような文字列 (YYYY は年, MM は月, DD は日, hh は時, mm は分, ss.s は秒, TZD はタイムゾーン) で返ります. 日時の文字列形式は gtool4 netCDF 規約「5.5 日時形式」に準拠しています.

問い合わせの結果を年月日時分秒で各個変数で受け取りたい場合は 上記の同名のサブルーチンを使用して下さい.

省略可能引数 date が省略された場合には, dc_calendar 内部で 保持される日時に関する情報が得られます. date が省略されない場合にはその変数に設定された日時の情報が得られます.

省略可能引数 cal が省略された場合には, 経過秒数 elapse_sec の年月日時分への変換に dc_calendar 内部で保持される暦が用いられます. cal が省略されない場合にはその変数に設定された暦が用いられます.

Inquire information of date. A result is returned as a string like as YYYY-MM-DDThh:mm:ss.sTZD (YYYY is year, MM is month, DD is day, hh is hour, mm is minute, ss.s is second, TZD is time zone). Format of date is conformed to gtool4 netCDF Convention "5.5 Expression of date and time"

If individual variables (year, month, day, hour, minute, second, zone) are needed, use a foregoing homonymous subroutine.

If an optional argument date is omitted, information of date that is stored in the "dc_calendar" is returned, If date is not omitted, information of the variable is returned.

If an optional argument cal is omitted, information of calendar that is stored in the "dc_calendar" is used for conversion of elapsed seconds elapse_sec into year-month-day etc. If cal is not omitted, information of the variable is used.

Original external subprogram is dc_utils/dccaldateinquire.f90#DCCalDateInquire2

DCCalDateParseStr( date_str, year, month, day, hour, min, sec, zone, [err] )
Subroutine :
date_str :character(*), intent(in)
: 日時情報を表す文字列. 表示形式については gtool4 netCDF 規約 5.5 日時形式を参照のこと.

Strings that express date and time. See gtool4 netCDF Convention 5.5 Expression of date and time for details.

year :integer, intent(out)
: 年. Year.
month :integer, intent(out)
: 月. Month.
day :integer, intent(out)
: 日. Day.
hour :integer, intent(out)
: 時. Hour.
min :integer, intent(out)
: 分. Minute.
sec :real(DP), intent(out)
: 秒. Second.
zone :character(*), intent(out)
: UTC からの時差. Time-zone.
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.

date_str で与えられる日時形式 (gtool4 netCDF 規約「5.5 日時形式」に準拠) を解釈し, yearzone に返します.

Parse strings of date (conformed to gtool4 netCDF Convention "5.5 Expression of date and time") specified as date_str, and return yearzone.

Original external subprogram is dc_utils/dccaldateparsestr.f90#DCCalDateParseStr1

DCCalDateToChar( year, month, day, hour, min, sec, [zone] ) result(result)
Function :
result :character(STRING)
: 日時情報を表す文字列. 表示形式については gtool4 netCDF 規約 5.5 日時形式を参照のこと.

Strings that express date and time. See gtool4 netCDF Convention 5.5 Expression of date and time for details.

year :integer, intent(in)
: 年. Year.
month :integer, intent(in)
: 月. Month.
day :integer, intent(in)
: 日. Day.
hour :integer, intent(in)
: 時. Hour.
min :integer, intent(in)
: 分. Minute.
sec :real(DP), intent(in)
: 秒. Sec.
zone :character(*), intent(in), optional
: UTC からの時差. Time-zone.

年月日時分秒を文字型変数 (gtool4 netCDF 規約「5.5 日時形式」に準拠) へ変換して返します.

Convert year, month, day, hour, minute, second into a string (conformed to gtool4 netCDF Convention "5.5 Expression of date and time").

Original external subprogram is dc_utils/dccaldatetochar.f90#DCCalDateToChar1

DCCalDefault( cal )
Subroutine :
cal :type(DC_CAL), intent(out)
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

dc_calendar においてデフォルト設定となっている暦を返します. このデフォルトの暦は, dc_calendar_generic#DCCalCreate において省略可能引数 cal を省略して指定された暦が該当します. ただし DCCalCreate が呼び出されていない場合にはグレゴリオ暦となります.

Default calender in "dc_calendar" is returned. The default calender is set by dc_calendar_generic#DCCalCreate without optional argument cal. If the DCCalCreate is called, the calendar becomes Gregorian calendar.

Original external subprogram is dc_utils/dccaldefault.f90#DCCalDefault1

DCCalInquire( [cal_type], [month_in_year], [day_in_month], [day_in_month_ptr], [hour_in_day], [min_in_hour], [sec_in_min], [cal], [err] )
Subroutine :
cal_type :character(*), intent(out), optional
: 暦の種類を示す文字列.

Strings that specify a kind of calendar.

month_in_year :integer, intent(out), optional
: 1 年の月数. Months in a year.
day_in_month(:) :integer, intent(out), optional
: 1 ヶ月の日数. グレゴリオ暦の場合, 配列の 2 番目の要素 (2月) には必ず 28 が返ります.

Days in months. In Gregorian calendar, 28 is returned to 2nd position of the array (February) at all times.

day_in_month_ptr(:) :integer, pointer, optional
: 1 ヶ月の日数 (ポインタ). グレゴリオ暦の場合, 配列の 2 番目の要素 (2月) には必ず 28 が返ります.

Days in months (pointer). In Gregorian calendar, 28 is returned to 2nd position of the array (February) at all times.

hour_in_day :integer, intent(out), optional
: 1 日の時間数. Hours in a day.
min_in_hour :integer, intent(out), optional
: 1 時間の分数. Minutes in a hour.
sec_in_min :real(DP), intent(out), optional
: 1 分の秒数. Seconds in a minute.
cal :type(DC_CAL), intent(in), optional, target
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

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.

暦情報の問い合わせを行います.

cal_type には以下の文字列が返ります.

gregorian :グレゴリオ暦
julian :ユリウス暦
noleap :閏年無しの暦
360day :1ヶ月が 30 日の暦
cyclic :ある月の日数を 「30.6 × 月数 − 前月までの総日数」 の小数点以下切捨とする暦
user_defined :ユーザ定義の暦

省略可能引数 cal が省略された場合には, dc_calendar 内部で 保持される暦に関する情報が得られます. cal が省略されない場合にはその変数に設定された暦の情報が得られます.

Inquire information of calendar.

Following strings are returned to cal_type.

gregorian :Gregorian calendar.
julian :Julian calendar.
noleap :A calendar without leap year.
360day :A calendar in which number of days of a month is 30.
cyclic :A calendar in which number of days of a year is "30.6 x (number of months) - (total days until last month)" (truncate fractional part).
user_defined :User defined calendar

If an optional argument cal is omitted, information of a calendar that is stored in the "dc_calendar" is returned, If cal is not omitted, information of the variable is returned.

Original external subprogram is dc_utils/dccalinquire.f90#DCCalInquire1

DCCalParseUnit( unit_str, unit_sym, [err] )
Subroutine :
unit_str :character(*), intent(in)
unit_sym :integer, intent(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.

文字列変数の日時単位 unit_str を整数型変数の日時単位 unit_sym に変換します. unit_str として有効な文字列は以下の通りです.

dc_calendar_types#UNIT_SEC :秒の単位
dc_calendar_types#UNIT_MIN :分の単位
dc_calendar_types#UNIT_HOUR :時間の単位
dc_calendar_types#UNIT_DAY :日の単位
dc_calendar_types#UNIT_MONTH :月の単位
dc_calendar_types#UNIT_YEAR :年の単位

有効な文字列が与えられた場合, uni_sym に以下の変数に相当する 整数が返ります.

dc_calendar_types#UNIT_SYMBOL_SEC :秒の単位
dc_calendar_types#UNIT_SYMBOL_MIN :分の単位
dc_calendar_types#UNIT_SYMBOL_HOUR :時間の単位
dc_calendar_types#UNIT_SYMBOL_DAY :日の単位
dc_calendar_types#UNIT_SYMBOL_MONTH :月の単位
dc_calendar_types#UNIT_SYMBOL_YEAR :年の単位

無効な値が与えられた場合, エラーを生じます.

Parse a character variable of units of date unit_str, and return an integer variable of units of date unit_sym. Valid strings as unit_str are as follows.

dc_calendar_types#UNIT_SEC :Units of second
dc_calendar_types#UNIT_MIN :Units of minute
dc_calendar_types#UNIT_HOUR :Units of hour
dc_calendar_types#UNIT_DAY :Units of day
dc_calendar_types#UNIT_MONTH :Units of month
dc_calendar_types#UNIT_YEAR :Units of year

When a valid string is specified, an integer corresponding one of following variables is returned to unit_sym.

dc_calendar_types#UNIT_SYMBOL_SEC :Units of second
dc_calendar_types#UNIT_SYMBOL_MIN :Units of minute
dc_calendar_types#UNIT_SYMBOL_HOUR :Units of hour
dc_calendar_types#UNIT_SYMBOL_DAY :Units of day
dc_calendar_types#UNIT_SYMBOL_MONTH :Units of month
dc_calendar_types#UNIT_SYMBOL_YEAR :Units of year

If an invalid string is specified an error is caused.

Original external subprogram is dc_utils/dccalparseunit.f90#DCCalParseUnit1

DCCalToChar( cal ) result(result)
Function :
result :character(STRING)
cal :type(DC_CAL), intent(in)
: 暦情報を収めたオブジェクト.

An object that stores information of calendar.

dc_calendar_types#DC_CAL 型変数 cal を文字型変数 result へ変換して返します. 書式は下記のようになります.

  CCCC:month_in_year=MM,day_in_month=(/DD1,.../),hour_in_day=hh,min_in_hour=mm,sec_in_min=ss

CCCC が暦のタイプ (文字数は任意), 以降は一年の月数等の情報となります.

Convert a "dc_calendar_types#DC_CAL" variable cal into a character variable result The format is as follows.

  CCCC:month_in_year=MM,day_in_month=(/DD1,.../),hour_in_day=hh,min_in_hour=mm,sec_in_min=ss

CCCC is a type of calencar (number of strings is arbitrary). The rest is information about number of months of a year, etc.

Original external subprogram is dc_utils/dccaltochar.f90#DCCalToChar1