Go to the source code of this file.
Functions/Subroutines | |
| subroutine | dcdatetimecreate1 (time, year, mon, day, hour, min, sec, zone, zone_hour, zone_min, caltype, caltype_str, day_seconds, sclyear, sclmon, sclday, sclsec, err) |
| Create DC_DATETIME and DC_DIFFTIME type variables. | |
| subroutine | get_current_time (jyear, jmon, jday, jsec, jzone) |
| subroutine | dcdifftimecreate1 (diff, year, mon, day, hour, min, sec, day_seconds, nondim, sclyear, sclmon, sclday, sclsec) |
| subroutine | dcdifftimecreate2d (diff, value, unit, unit_symbol, err) |
| subroutine | dcdifftimecreate2r (diff, value, unit, unit_symbol, err) |
| subroutine | dcdifftimecreate2i (diff, value, unit, unit_symbol, err) |
| subroutine | dcdatetimecreatei (time, sec) |
| subroutine | dcdatetimecreater (time, sec) |
| subroutine | dcdatetimecreated (time, sec) |
| subroutine | dcdifftimecreatei (diff, sec) |
| subroutine | dcdifftimecreater (diff, sec) |
| subroutine | dcdifftimecreated (diff, sec) |
| subroutine | dcdatetimecreate1_bc (time, year, mon, day, hour, min, sec, zone, caltype, day_seconds, err) |
| subroutine | dcdifftimecreate1_bc (diff, year, mon, day, hour, min, sec, day_seconds) |
| subroutine | dcdifftimecreate2_bc (diff, value, unit, err) |
| subroutine dcdatetimecreate1 | ( | type(dc_datetime), intent(out) | time, |
| integer, intent(in), optional | year, | ||
| integer, intent(in), optional | mon, | ||
| integer, intent(in), optional | day, | ||
| integer, intent(in), optional | hour, | ||
| integer, intent(in), optional | min, | ||
| real(dp), intent(in), optional | sec, | ||
| character(*), intent(in), optional | zone, | ||
| integer, intent(in), optional | zone_hour, | ||
| integer, intent(in), optional | zone_min, | ||
| integer, intent(in), optional | caltype, | ||
| character(*), intent(in), optional | caltype_str, | ||
| real(dp), intent(in), optional | day_seconds, | ||
| type(dc_scaled_sec), intent(in), optional | sclyear, | ||
| type(dc_scaled_sec), intent(in), optional | sclmon, | ||
| type(dc_scaled_sec), intent(in), optional | sclday, | ||
| type(dc_scaled_sec), intent(in), optional | sclsec, | ||
| logical, intent(out), optional | err ) |
Create DC_DATETIME and DC_DIFFTIME type variables.
Procedures described in this file are provided from "dc_date" module.
Create DC_DATETIME type variable
Create dc_date_types#DC_DATETIME type variable. If all arguments year, mon, day, hour, min, sec are not given, the current time is used.
Set calendar type with caltype argument. Use one of dc_date_types#CAL_CYCLIC, dc_date_types#CAL_NOLEAP, dc_date_types#CAL_JULIAN, dc_date_types#CAL_GREGORIAN. If caltype is not specified, calendar is set to dc_date_types#CAL_GREGORIAN. Calendar can also be specified by string with caltype_str. Corresponding strings (case insensitive) are:
| caltype | caltype_str |
|---|---|
| dc_date_types#CAL_CYCLIC | cyclic |
| dc_date_types#CAL_NOLEAP | noleap |
| dc_date_types#CAL_JULIAN | julian |
| dc_date_types#CAL_GREGORIAN | gregorian |
Set timezone from UTC with zone argument. Specify timezone as 6 characters like '+09:00' or '-13:00'. If zone is not specified, timezone obtained from date_and_time intrinsic subroutine is used. Timezone can also be specified with zone_hour or zone_min as integer.
Set seconds per day with day_seconds argument. If not specified, dc_date_types::day_seconds value is used. dc_date_types::day_seconds can be changed with SetSecOfDay.
If invalid value is given to caltype or zone, an error occurs. If err argument is given, .true. is returned to err and the program continues.
| [out] | time | Created DC_DATETIME variable |
| [in] | year | Year |
| [in] | mon | Month |
| [in] | day | Day |
| [in] | hour | Hour |
| [in] | min | Minute |
| [in] | sec | Second |
| [in] | zone | Timezone from UTC |
| [in] | zone_hour | Timezone (hour) |
| [in] | zone_min | Timezone (minute) |
| [in] | caltype | Calendar type |
| [in] | caltype_str | Calendar type (string) |
| [in] | day_seconds | Seconds per day |
| [in] | sclyear | Year (DC_SCALED_SEC type) |
| [in] | sclmon | Month (DC_SCALED_SEC type) |
| [in] | sclday | Day (DC_SCALED_SEC type) |
| [in] | sclsec | Second (DC_SCALED_SEC type) |
| [out] | err | Exception handling flag |
Definition at line 134 of file dcdatetimecreate.f90.
References dc_trace::beginsub(), dc_date_types::cal_cyclic, dc_date_types::cal_gregorian, dc_date_types::cal_julian, dc_date_types::cal_noleap, dc_date_types::caltype, dc_date_types::cyclic_mdays, dc_date_types::day_seconds_scl, dc_error::dc_ebadcaltype, dc_error::dc_ebadtimezone, dc_error::dc_noerr, dc_date_internal::dcdate_set_day_seconds_scl(), dc_scaledsec::dcscaledsecputline(), dc_types::dp, dc_trace::endsub(), dc_date_types::flag_set_day_seconds_scl, dc_date_types::four_years, get_current_time(), dc_date_types::hour_seconds, dc_date_types::min_seconds, dc_error::storeerror(), dc_types::string, and dc_date_types::year_months.
| subroutine dcdatetimecreate1_bc | ( | type(dc_datetime), intent(out) | time, |
| integer, intent(in), optional | year, | ||
| integer, intent(in), optional | mon, | ||
| integer, intent(in), optional | day, | ||
| integer, intent(in), optional | hour, | ||
| integer, intent(in), optional | min, | ||
| real(dp), intent(in), optional | sec, | ||
| character(*), intent(in), optional | zone, | ||
| integer, intent(in), optional | caltype, | ||
| real(dp), intent(in), optional | day_seconds, | ||
| logical, intent(out), optional | err ) |
Create DC_DATETIME (backward compatibility)
Definition at line 1006 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdatetimecreated | ( | type(dc_datetime), intent(out) | time, |
| real(dp), intent(in) | sec ) |
Create DC_DATETIME type variable with double precision seconds
| [out] | time | Created DC_DATETIME variable |
| [in] | sec | Seconds (double precision) |
Definition at line 896 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdatetimecreatei | ( | type(dc_datetime), intent(out) | time, |
| integer, intent(in) | sec ) |
Create DC_DATETIME type variable with integer seconds
Create dc_date_types#DC_DATETIME type variable. Specify seconds with sec argument. Use Create for year/month/day/hour/minute specification.
| [out] | time | Created DC_DATETIME variable |
| [in] | sec | Seconds (integer) |
Definition at line 840 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdatetimecreater | ( | type(dc_datetime), intent(out) | time, |
| real, intent(in) | sec ) |
Create DC_DATETIME type variable with single precision seconds
Create dc_date_types#DC_DATETIME type variable. Specify seconds with sec argument. Use Create for year/month/day/hour/minute specification.
| [out] | time | Created DC_DATETIME variable |
| [in] | sec | Seconds (single precision) |
Definition at line 873 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreate1 | ( | type(dc_difftime), intent(out) | diff, |
| integer, intent(in), optional | year, | ||
| integer, intent(in), optional | mon, | ||
| integer, intent(in), optional | day, | ||
| integer, intent(in), optional | hour, | ||
| integer, intent(in), optional | min, | ||
| real(dp), intent(in), optional | sec, | ||
| real(dp), intent(in), optional | day_seconds, | ||
| real(dp), intent(in), optional | nondim, | ||
| type(dc_scaled_sec), intent(in), optional | sclyear, | ||
| type(dc_scaled_sec), intent(in), optional | sclmon, | ||
| type(dc_scaled_sec), intent(in), optional | sclday, | ||
| type(dc_scaled_sec), intent(in), optional | sclsec ) |
Create DC_DIFFTIME type variable
Create dc_date_types#DC_DIFFTIME type variable. If arguments year, mon, day, hour, min, sec, nondim are not given, 0 is used.
Set seconds per day with day_seconds argument. If not specified, dc_date_types::day_seconds value is used. dc_date_types::day_seconds can be changed with SetSecOfDay.
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | year | Year |
| [in] | mon | Month |
| [in] | day | Day |
| [in] | hour | Hour |
| [in] | min | Minute |
| [in] | sec | Second |
| [in] | day_seconds | Seconds per day |
| [in] | nondim | Nondimensional time |
| [in] | sclyear | Year (DC_SCALED_SEC type) |
| [in] | sclmon | Month (DC_SCALED_SEC type) |
| [in] | sclday | Day (DC_SCALED_SEC type) |
| [in] | sclsec | Second (DC_SCALED_SEC type) |
Definition at line 470 of file dcdatetimecreate.f90.
References dc_trace::beginsub(), dc_date_types::day_seconds, dc_date_internal::dcdate_normalize(), dc_scaledsec::dcscaledsecputline(), dc_types::dp, dc_trace::endsub(), dc_date_types::hour_seconds, dc_date_types::min_seconds, dc_types::string, and dc_date_types::year_months.
| subroutine dcdifftimecreate1_bc | ( | type(dc_difftime), intent(out) | diff, |
| integer, intent(in), optional | year, | ||
| integer, intent(in), optional | mon, | ||
| integer, intent(in), optional | day, | ||
| integer, intent(in), optional | hour, | ||
| integer, intent(in), optional | min, | ||
| real(dp), intent(in), optional | sec, | ||
| real(dp), intent(in), optional | day_seconds ) |
Create DC_DIFFTIME (backward compatibility)
Definition at line 1030 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreate2_bc | ( | type(dc_difftime), intent(out) | diff, |
| real(dp), intent(in) | value, | ||
| character(*), intent(in) | unit, | ||
| logical, intent(out), optional | err ) |
Create DC_DIFFTIME with value and unit (backward compatibility)
Definition at line 1049 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreate2d | ( | type(dc_difftime), intent(out) | diff, |
| real(dp), intent(in) | value, | ||
| character(*), intent(in) | unit, | ||
| integer, intent(in), optional | unit_symbol, | ||
| logical, intent(out), optional | err ) |
Create DC_DIFFTIME type variable with value and unit
Create dc_date_types#DC_DIFFTIME type variable. Specify value with value argument and unit with unit string or unit symbol with unit_symbol.
Valid strings for unit (case insensitive):
| Unit | String |
|---|---|
| Year | dc_date_types#UNIT_YEAR |
| Month | dc_date_types#UNIT_MONTH |
| Day | dc_date_types#UNIT_DAY |
| Hour | dc_date_types#UNIT_HOUR |
| Minute | dc_date_types#UNIT_MIN |
| Second | dc_date_types#UNIT_SEC |
| Nondimensional | dc_date_types#UNIT_NONDIM |
If invalid string is given to unit, an error occurs.
Valid symbols for unit_symbol:
| Unit | Symbol |
|---|---|
| Year | dc_date_types#UNIT_SYMBOL_YEAR |
| Month | dc_date_types#UNIT_SYMBOL_MONTH |
| Day | dc_date_types#UNIT_SYMBOL_DAY |
| Hour | dc_date_types#UNIT_SYMBOL_HOUR |
| Minute | dc_date_types#UNIT_SYMBOL_MIN |
| Second | dc_date_types#UNIT_SYMBOL_SEC |
| Nondimensional | dc_date_types#UNIT_SYMBOL_NONDIM |
If invalid symbol is given to unit_symbol, an error occurs. If err argument is given, .true. is returned to err and the program continues.
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | value | Value |
| [in] | unit | Unit string |
| [in] | unit_symbol | Unit symbol |
| [out] | err | Exception handling flag |
Definition at line 679 of file dcdatetimecreate.f90.
References dc_trace::beginsub(), dc_date_types::cyclic_mdays, dc_date_types::day_seconds, dc_error::dc_ebadunit, dc_error::dc_noerr, dc_scaledsec::dcscaledsecputline(), dc_types::dp, dc_trace::endsub(), dc_date_types::hour_seconds, dc_date_types::min_seconds, dc_error::storeerror(), dc_types::string, dc_date_types::unit_symbol_day, dc_date_types::unit_symbol_err, dc_date_types::unit_symbol_hour, dc_date_types::unit_symbol_min, dc_date_types::unit_symbol_month, dc_date_types::unit_symbol_nondim, dc_date_types::unit_symbol_sec, dc_date_types::unit_symbol_year, and dc_date_types::year_months.
| subroutine dcdifftimecreate2i | ( | type(dc_difftime), intent(out) | diff, |
| integer, intent(in) | value, | ||
| character(*), intent(in) | unit, | ||
| integer, intent(in), optional | unit_symbol, | ||
| logical, intent(out), optional | err ) |
Create DC_DIFFTIME type variable with integer value and unit
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | value | Value (integer) |
| [in] | unit | Unit string |
| [in] | unit_symbol | Unit symbol |
| [out] | err | Exception handling flag |
Definition at line 805 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreate2r | ( | type(dc_difftime), intent(out) | diff, |
| real, intent(in) | value, | ||
| character(*), intent(in) | unit, | ||
| integer, intent(in), optional | unit_symbol, | ||
| logical, intent(out), optional | err ) |
Create DC_DIFFTIME type variable with single precision value and unit
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | value | Value (single precision) |
| [in] | unit | Unit string |
| [in] | unit_symbol | Unit symbol |
| [out] | err | Exception handling flag |
Definition at line 774 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreated | ( | type(dc_difftime), intent(out) | diff, |
| real(dp), intent(in) | sec ) |
Create DC_DIFFTIME type variable with double precision seconds
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | sec | Seconds (double precision) |
Definition at line 985 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreatei | ( | type(dc_difftime), intent(out) | diff, |
| integer, intent(in) | sec ) |
Create DC_DIFFTIME type variable with integer seconds
Create dc_date_types#DC_DIFFTIME type variable. Specify seconds with sec argument. Use Create for year/month/day/hour/minute specification.
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | sec | Seconds (integer) |
Definition at line 929 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdifftimecreater | ( | type(dc_difftime), intent(out) | diff, |
| real, intent(in) | sec ) |
Create DC_DIFFTIME type variable with single precision seconds
Create dc_date_types#DC_DIFFTIME type variable. Specify seconds with sec argument. Use Create for year/month/day/hour/minute specification.
| [out] | diff | Created DC_DIFFTIME variable |
| [in] | sec | Seconds (single precision) |
Definition at line 962 of file dcdatetimecreate.f90.
References dc_types::dp.
| subroutine dcdatetimecreate1::get_current_time | ( | integer, intent(out) | jyear, |
| integer, intent(out) | jmon, | ||
| integer, intent(out) | jday, | ||
| real(dp), intent(out) | jsec, | ||
| character(*), intent(out) | jzone ) |
Get current time using date_and_time intrinsic subroutine
Returns current time and timezone from UTC using date_and_time intrinsic subroutine.
| [out] | jyear | Year |
| [out] | jmon | Month |
| [out] | jday | Day |
| [out] | jsec | Second |
| [out] | jzone | Timezone |
Definition at line 391 of file dcdatetimecreate.f90.
References dc_date_types::hour_seconds, and dc_date_types::min_seconds.