gtool5 Fortran 90/95 ライブラリ 1.0.0-rc5
English
Loading...
Searching...
No Matches
dc_date_types Module Reference

日付・時刻に関する構造データ型と定数 More...

Data Types

type  dc_datetime
type  dc_difftime

Variables

暦タイプパラメータ
integer, parameter, public cal_cyclic = 1
 周期暦 (1ヶ月 30.6 日)
integer, parameter, public cal_noleap = 2
 閏年無しの暦 (1年 365 日)
integer, parameter, public cal_julian = 3
 ユリウス暦
integer, parameter, public cal_gregorian = 4
 グレゴリオ暦
integer, dimension(0:3), parameter, public prepared_caltypes = (/CAL_CYCLIC, CAL_NOLEAP, CAL_JULIAN, CAL_GREGORIAN/)
 利用可能な暦タイプの配列
integer, save, public caltype = CAL_GREGORIAN
 デフォルトの暦タイプ (グレゴリオ暦)
時間単位変換パラメータ
real(dp), parameter, public cyclic_mdays = 30.6_DP
 周期暦での1ヶ月の日数 (DC_DIFFTIME の月換算にも使用)
integer, parameter, public min_seconds = 60
 1分の秒数
integer, parameter, public hour_seconds = 3600
 1時間の秒数
real(dp), parameter, public day_seconds_earth = 86400.0_DP
 地球の1日の秒数
real(dp), save, public day_seconds = DAY_SECONDS_EARTH
 1日の秒数 (可変, デフォルトは地球の1日)
type(dc_scaled_sec), save, public day_seconds_scl
 1日の秒数 (DC_SCALED_SEC 型)
logical, save, public flag_set_day_seconds_scl = .false.
 day_seconds_scl が設定済みかどうかのフラグ
integer, parameter, public year_days = 365
 1年 (非閏年) の日数
integer, parameter, public year_months = 12
 1年の月数
integer, parameter, public four_years = YEAR_DAYS * 4 + 1
 4年の日数 (閏年を含む)
integer, parameter, public four_century = YEAR_DAYS * 400 + 97
 400年の日数
単位文字列パラメータ
character(*), dimension(1), parameter, public unit_nondim = (/ '1' /)
 無次元時間の単位を示す文字列
character(*), dimension(8), parameter, public unit_sec = (/ 'seconds', 'second ', 'secs. ', 'secs ', 'sec. ', 'sec ', 's. ', 's '/)
 秒の単位を示す文字列
character(*), dimension(4), parameter, public unit_min = (/ 'minutes', 'minute ', 'min. ', 'min '/)
 分の単位を示す文字列
character(*), dimension(8), parameter, public unit_hour = (/ 'hours', 'hour ', 'hrs. ', 'hrs ', 'hr. ', 'hr ', 'h. ', 'h '/)
 時間の単位を示す文字列
character(*), dimension(4), parameter, public unit_day = (/ 'days', 'day ', 'd. ', 'd '/)
 日の単位を示す文字列
character(*), dimension(6), parameter, public unit_month = (/ 'months', 'month ', 'mon. ', 'mon ', 'mo. ', 'mo '/)
 月の単位を示す文字列
character(*), dimension(4), parameter, public unit_year = (/ 'years', 'year ', 'yr. ', 'yr '/)
 年の単位を示す文字列
単位シンボルパラメータ
integer, parameter, public unit_symbol_err = -1
 無効な単位を示すシンボル
integer, parameter, public unit_symbol_nondim = 1
 無次元時間の単位を示すシンボル
integer, parameter, public unit_symbol_sec = 2
 秒の単位を示すシンボル
integer, parameter, public unit_symbol_min = 3
 分の単位を示すシンボル
integer, parameter, public unit_symbol_hour = 4
 時間の単位を示すシンボル
integer, parameter, public unit_symbol_day = 5
 日の単位を示すシンボル
integer, parameter, public unit_symbol_month = 6
 月の単位を示すシンボル
integer, parameter, public unit_symbol_year = 7
 年の単位を示すシンボル

Detailed Description

日付・時刻に関する構造データ型と定数

Author
Youhei SASAKI, Yasuhiro MORIKAWA, Eizi TOYODA

dc_date で用いられる構造体や変数, 定数を提供します. 暦法に関する情報もこのモジュールで管理しています.

派生型一覧

説明
DC_DATETIME 通日と通秒の対で日付時刻を表現
DC_DIFFTIME X ヶ月後, X 日前, などを表現

単位文字列とシンボル

パラメータ 説明
UNIT_NONDIM 無次元時間の単位を示す文字列
UNIT_SEC 秒の単位を示す文字列
UNIT_MIN 分の単位を示す文字列
UNIT_HOUR 時間の単位を示す文字列
UNIT_DAY 日の単位を示す文字列
UNIT_MONTH 月の単位を示す文字列
UNIT_YEAR 年の単位を示す文字列
UNIT_SYMBOL_* 単位を示す整数シンボル

暦パラメータ

パラメータ 説明
CAL_CYCLIC 周期暦 (1ヶ月 30.6 日)
CAL_NOLEAP 閏年無しの暦 (1年 365 日)
CAL_JULIAN ユリウス暦
CAL_GREGORIAN グレゴリオ暦

変換パラメータ

パラメータ 説明
CYCLIC_MDAYS 周期暦での1ヶ月の日数 (30.6)
DAY_SECONDS_EARTH 地球の1日の秒数 (86400)
MIN_SECONDS 1分の秒数 (60)
HOUR_SECONDS 1時間の秒数 (3600)
YEAR_MONTHS 1年の月数 (12)
YEAR_DAYS 1年 (非閏年) の日数 (365)
FOUR_YEARS 4年の日数
FOUR_CENTURY 400年の日数

Variable Documentation

◆ cal_cyclic

integer, parameter, public dc_date_types::cal_cyclic = 1

周期暦 (1ヶ月 30.6 日)

1 ヵ月を 30.6 日 (CYCLIC_MDAYS) とする暦. (例: 0 ヶ月目は 1 〜 30 (30.6), 1 ヶ月目は 1 〜 31 (61.2), 2 ヶ月目は 1 〜 30 (91.8), 3 ヶ月目は 1 〜 31 (122.4), ...) 仮想的な時間で実験を行う場合に使用することを想定しています.

Definition at line 152 of file dc_date_types.f90.

152 integer, parameter:: CAL_CYCLIC = 1

◆ cal_gregorian

integer, parameter, public dc_date_types::cal_gregorian = 4

グレゴリオ暦

Definition at line 164 of file dc_date_types.f90.

164 integer, parameter:: CAL_GREGORIAN = 4

◆ cal_julian

integer, parameter, public dc_date_types::cal_julian = 3

ユリウス暦

Definition at line 160 of file dc_date_types.f90.

160 integer, parameter:: CAL_JULIAN = 3

◆ cal_noleap

integer, parameter, public dc_date_types::cal_noleap = 2

閏年無しの暦 (1年 365 日)

Definition at line 156 of file dc_date_types.f90.

156 integer, parameter:: CAL_NOLEAP = 2

◆ caltype

integer, save, public dc_date_types::caltype = CAL_GREGORIAN

デフォルトの暦タイプ (グレゴリオ暦)

Definition at line 173 of file dc_date_types.f90.

173 integer, save:: caltype = cal_gregorian

◆ cyclic_mdays

real(dp), parameter, public dc_date_types::cyclic_mdays = 30.6_DP

周期暦での1ヶ月の日数 (DC_DIFFTIME の月換算にも使用)

Definition at line 188 of file dc_date_types.f90.

188 real(DP), parameter:: CYCLIC_MDAYS = 30.6_dp

◆ day_seconds

real(dp), save, public dc_date_types::day_seconds = DAY_SECONDS_EARTH

1日の秒数 (可変, デフォルトは地球の1日)

Definition at line 204 of file dc_date_types.f90.

204 real(DP), save :: day_seconds = day_seconds_earth

◆ day_seconds_earth

real(dp), parameter, public dc_date_types::day_seconds_earth = 86400.0_DP

地球の1日の秒数

Definition at line 200 of file dc_date_types.f90.

200 real(DP), parameter:: DAY_SECONDS_EARTH = 86400.0_dp

◆ day_seconds_scl

type(dc_scaled_sec), save, public dc_date_types::day_seconds_scl

1日の秒数 (DC_SCALED_SEC 型)

Definition at line 208 of file dc_date_types.f90.

208 type(DC_SCALED_SEC), save :: day_seconds_scl

◆ flag_set_day_seconds_scl

logical, save, public dc_date_types::flag_set_day_seconds_scl = .false.

day_seconds_scl が設定済みかどうかのフラグ

Definition at line 212 of file dc_date_types.f90.

212 logical, save :: flag_set_day_seconds_scl = .false.

◆ four_century

integer, parameter, public dc_date_types::four_century = YEAR_DAYS * 400 + 97

400年の日数

Definition at line 228 of file dc_date_types.f90.

228 integer, parameter:: FOUR_CENTURY = year_days * 400 + 97

◆ four_years

integer, parameter, public dc_date_types::four_years = YEAR_DAYS * 4 + 1

4年の日数 (閏年を含む)

Definition at line 224 of file dc_date_types.f90.

224 integer, parameter:: FOUR_YEARS = year_days * 4 + 1

◆ hour_seconds

integer, parameter, public dc_date_types::hour_seconds = 3600

1時間の秒数

Definition at line 196 of file dc_date_types.f90.

196 integer, parameter:: HOUR_SECONDS = 3600

◆ min_seconds

integer, parameter, public dc_date_types::min_seconds = 60

1分の秒数

Definition at line 192 of file dc_date_types.f90.

192 integer, parameter:: MIN_SECONDS = 60

◆ prepared_caltypes

integer, dimension(0:3), parameter, public dc_date_types::prepared_caltypes = (/CAL_CYCLIC, CAL_NOLEAP, CAL_JULIAN, CAL_GREGORIAN/)

利用可能な暦タイプの配列

Definition at line 168 of file dc_date_types.f90.

168 integer, parameter:: PREPARED_CALTYPES(0:3) = &
169 & (/CAL_CYCLIC, CAL_NOLEAP, CAL_JULIAN, CAL_GREGORIAN/)

◆ unit_day

character(*), dimension(4), parameter, public dc_date_types::unit_day = (/ 'days', 'day ', 'd. ', 'd '/)

日の単位を示す文字列

Definition at line 265 of file dc_date_types.f90.

265 character(*), parameter, dimension(4) :: UNIT_DAY = (/ &
266 & 'days', 'day ', 'd. ', 'd '/)

◆ unit_hour

character(*), dimension(8), parameter, public dc_date_types::unit_hour = (/ 'hours', 'hour ', 'hrs. ', 'hrs ', 'hr. ', 'hr ', 'h. ', 'h '/)

時間の単位を示す文字列

Definition at line 259 of file dc_date_types.f90.

259 character(*), parameter, dimension(8) :: UNIT_HOUR = (/ &
260 & 'hours', 'hour ', 'hrs. ', 'hrs ', &
261 & 'hr. ', 'hr ', 'h. ', 'h '/)

◆ unit_min

character(*), dimension(4), parameter, public dc_date_types::unit_min = (/ 'minutes', 'minute ', 'min. ', 'min '/)

分の単位を示す文字列

Definition at line 254 of file dc_date_types.f90.

254 character(*), parameter, dimension(4) :: UNIT_MIN = (/ &
255 & 'minutes', 'minute ', 'min. ', 'min '/)

◆ unit_month

character(*), dimension(6), parameter, public dc_date_types::unit_month = (/ 'months', 'month ', 'mon. ', 'mon ', 'mo. ', 'mo '/)

月の単位を示す文字列

Definition at line 270 of file dc_date_types.f90.

270 character(*), parameter, dimension(6) :: UNIT_MONTH = (/ &
271 & 'months', 'month ', 'mon. ', &
272 & 'mon ', 'mo. ', 'mo '/)

◆ unit_nondim

character(*), dimension(1), parameter, public dc_date_types::unit_nondim = (/ '1' /)

無次元時間の単位を示す文字列

Definition at line 243 of file dc_date_types.f90.

243 character(*), parameter, dimension(1) :: UNIT_NONDIM = (/ &
244 & '1' /)

◆ unit_sec

character(*), dimension(8), parameter, public dc_date_types::unit_sec = (/ 'seconds', 'second ', 'secs. ', 'secs ', 'sec. ', 'sec ', 's. ', 's '/)

秒の単位を示す文字列

Definition at line 248 of file dc_date_types.f90.

248 character(*), parameter, dimension(8) :: UNIT_SEC = (/ &
249 & 'seconds', 'second ', 'secs. ', 'secs ', &
250 & 'sec. ', 'sec ', 's. ', 's '/)

◆ unit_symbol_day

integer, parameter, public dc_date_types::unit_symbol_day = 5

日の単位を示すシンボル

Definition at line 312 of file dc_date_types.f90.

312 integer, parameter:: UNIT_SYMBOL_DAY = 5

◆ unit_symbol_err

integer, parameter, public dc_date_types::unit_symbol_err = -1

無効な単位を示すシンボル

Definition at line 292 of file dc_date_types.f90.

292 integer, parameter:: UNIT_SYMBOL_ERR = -1

◆ unit_symbol_hour

integer, parameter, public dc_date_types::unit_symbol_hour = 4

時間の単位を示すシンボル

Definition at line 308 of file dc_date_types.f90.

308 integer, parameter:: UNIT_SYMBOL_HOUR = 4

◆ unit_symbol_min

integer, parameter, public dc_date_types::unit_symbol_min = 3

分の単位を示すシンボル

Definition at line 304 of file dc_date_types.f90.

304 integer, parameter:: UNIT_SYMBOL_MIN = 3

◆ unit_symbol_month

integer, parameter, public dc_date_types::unit_symbol_month = 6

月の単位を示すシンボル

Definition at line 316 of file dc_date_types.f90.

316 integer, parameter:: UNIT_SYMBOL_MONTH = 6

◆ unit_symbol_nondim

integer, parameter, public dc_date_types::unit_symbol_nondim = 1

無次元時間の単位を示すシンボル

Definition at line 296 of file dc_date_types.f90.

296 integer, parameter:: UNIT_SYMBOL_NONDIM = 1

◆ unit_symbol_sec

integer, parameter, public dc_date_types::unit_symbol_sec = 2

秒の単位を示すシンボル

Definition at line 300 of file dc_date_types.f90.

300 integer, parameter:: UNIT_SYMBOL_SEC = 2

◆ unit_symbol_year

integer, parameter, public dc_date_types::unit_symbol_year = 7

年の単位を示すシンボル

Definition at line 320 of file dc_date_types.f90.

320 integer, parameter:: UNIT_SYMBOL_YEAR = 7

◆ unit_year

character(*), dimension(4), parameter, public dc_date_types::unit_year = (/ 'years', 'year ', 'yr. ', 'yr '/)

年の単位を示す文字列

Definition at line 276 of file dc_date_types.f90.

276 character(*), parameter, dimension(4) :: UNIT_YEAR = (/ &
277 & 'years', 'year ', 'yr. ', 'yr '/)

◆ year_days

integer, parameter, public dc_date_types::year_days = 365

1年 (非閏年) の日数

Definition at line 216 of file dc_date_types.f90.

216 integer, parameter:: YEAR_DAYS = 365

◆ year_months

integer, parameter, public dc_date_types::year_months = 12

1年の月数

Definition at line 220 of file dc_date_types.f90.

220 integer, parameter:: YEAR_MONTHS = 12