SCALE-RM
|
module CALENDAR More...
Functions/Subroutines | |
subroutine, public | calendar_setup |
Setup. More... | |
subroutine, public | calendar_getdayofyear (DayOfYear, iyear) |
Get day of year. More... | |
subroutine, public | calendar_date2daysec (absday, abssec, ymdhms, subsec, offset_year) |
Convert from gregorian date to absolute day/second. More... | |
subroutine, public | calendar_daysec2date (ymdhms, subsec, absday, abssec, offset_year) |
Convert from gregorian date to absolute day/second. More... | |
subroutine, public | calendar_ymd2absday (absday, gyear, gmonth, gday, oyear) |
Convert from gregorian date to absolute day, DAY 0 is AD1/1/1. More... | |
subroutine, public | calendar_hms2abssec (abssec, hour, minute, second, subsec) |
Hour, minute, second, subsecond -> absolute second. More... | |
subroutine, public | calendar_adjust_daysec (absday, abssec) |
Adjust day and second. More... | |
real(dp) function, public | calendar_combine_daysec (absday, abssec) |
Combine day and second. More... | |
subroutine, public | calendar_unit2sec (second, value, unit) |
Convert several units to second. More... | |
real(dp) function, public | calendar_cfunits2sec (cftime, cfunits, offset_year, startdaysec) |
Convert time in units of the CF convention to second. More... | |
subroutine, public | calendar_date2char (chardate, ymdhms, subsec) |
Convert from gregorian date to absolute day/second. More... | |
Variables | |
integer, parameter, public | i_year = 1 |
[index] year More... | |
integer, parameter, public | i_month = 2 |
[index] month More... | |
integer, parameter, public | i_day = 3 |
[index] day More... | |
integer, parameter, public | i_hour = 4 |
[index] hour More... | |
integer, parameter, public | i_min = 5 |
[index] minute More... | |
integer, parameter, public | i_sec = 6 |
[index] second More... | |
module CALENDAR
subroutine, public scale_calendar::calendar_setup | ( | ) |
Setup.
Definition at line 82 of file scale_calendar.F90.
References scale_stdio::io_fid_log, and scale_stdio::io_l.
Referenced by mod_rm_driver::scalerm(), and mod_rm_prep::scalerm_prep().
subroutine, public scale_calendar::calendar_getdayofyear | ( | real(dp), intent(out) | DayOfYear, |
integer, intent(in) | iyear | ||
) |
Get day of year.
Definition at line 97 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), and scale_atmos_solarins::atmos_solarins_insolation_2d().
subroutine, public scale_calendar::calendar_date2daysec | ( | integer, intent(out) | absday, |
real(dp), intent(out) | abssec, | ||
integer, dimension(6), intent(in) | ymdhms, | ||
real(dp), intent(in) | subsec, | ||
integer, intent(in) | offset_year | ||
) |
Convert from gregorian date to absolute day/second.
[out] | absday | absolute day |
[out] | abssec | absolute second |
[in] | ymdhms | date |
[in] | subsec | subsecond |
[in] | offset_year | offset year |
Definition at line 117 of file scale_calendar.F90.
References calendar_hms2abssec(), calendar_ymd2absday(), i_day, i_hour, i_min, i_month, i_sec, and i_year.
Referenced by mod_admin_time::admin_time_setup(), scale_atmos_boundary::atmos_boundary_resume(), scale_atmos_boundary::atmos_boundary_resume_file(), scale_atmos_phy_rd_profile::atmos_phy_rd_profile_read(), scale_atmos_phy_rd_profile::atmos_phy_rd_profile_setup(), calendar_cfunits2sec(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
subroutine, public scale_calendar::calendar_daysec2date | ( | integer, dimension(6), intent(out) | ymdhms, |
real(dp), intent(out) | subsec, | ||
integer, intent(in) | absday, | ||
real(dp), intent(in) | abssec, | ||
integer, intent(in) | offset_year | ||
) |
Convert from gregorian date to absolute day/second.
[out] | ymdhms | date |
[out] | subsec | subsecond |
[in] | absday | absolute day |
[in] | abssec | absolute second |
[in] | offset_year | offset year |
Definition at line 149 of file scale_calendar.F90.
References i_day, i_hour, i_min, i_month, i_sec, and i_year.
Referenced by mod_admin_time::admin_time_advance(), mod_admin_time::admin_time_setup(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
subroutine, public scale_calendar::calendar_ymd2absday | ( | integer, intent(out) | absday, |
integer, intent(in) | gyear, | ||
integer, intent(in) | gmonth, | ||
integer, intent(in) | gday, | ||
integer, intent(in) | oyear | ||
) |
Convert from gregorian date to absolute day, DAY 0 is AD1/1/1.
[out] | absday | absolute day |
[in] | gyear | year |
[in] | gmonth | month |
[in] | gday | day |
[in] | oyear | offset year |
Definition at line 181 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2char(), and calendar_date2daysec().
subroutine, public scale_calendar::calendar_hms2abssec | ( | real(dp), intent(out) | abssec, |
integer, intent(in) | hour, | ||
integer, intent(in) | minute, | ||
integer, intent(in) | second, | ||
real(dp), intent(in) | subsec | ||
) |
Hour, minute, second, subsecond -> absolute second.
[out] | abssec | absolute second |
[in] | subsec | subsecond |
Definition at line 269 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), and calendar_date2daysec().
subroutine, public scale_calendar::calendar_adjust_daysec | ( | integer, intent(inout) | absday, |
real(dp), intent(inout) | abssec | ||
) |
Adjust day and second.
[in,out] | absday | absolute day |
[in,out] | abssec | absolute second |
Definition at line 327 of file scale_calendar.F90.
Referenced by mod_admin_time::admin_time_advance(), mod_admin_time::admin_time_setup(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
real(dp) function, public scale_calendar::calendar_combine_daysec | ( | integer, intent(in) | absday, |
real(dp), intent(in) | abssec | ||
) |
Combine day and second.
[in] | absday | absolute day |
[in] | abssec | absolute second |
Definition at line 347 of file scale_calendar.F90.
Referenced by mod_admin_time::admin_time_advance(), mod_admin_time::admin_time_setup(), scale_atmos_boundary::atmos_boundary_resume(), scale_atmos_boundary::atmos_boundary_resume_file(), calendar_cfunits2sec(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
subroutine, public scale_calendar::calendar_unit2sec | ( | real(dp), intent(out) | second, |
real(dp), intent(in) | value, | ||
character(len=*), intent(in) | unit | ||
) |
Convert several units to second.
[in] | unit | variable unit |
Definition at line 366 of file scale_calendar.F90.
References scale_process::prc_mpistop().
Referenced by mod_admin_time::admin_time_setup(), and calendar_cfunits2sec().
real(dp) function, public scale_calendar::calendar_cfunits2sec | ( | real(dp), intent(in) | cftime, |
character(len=*), intent(in) | cfunits, | ||
integer, intent(in) | offset_year, | ||
real(dp), intent(in), optional | startdaysec | ||
) |
Convert time in units of the CF convention to second.
Definition at line 397 of file scale_calendar.F90.
References calendar_combine_daysec(), calendar_date2daysec(), calendar_unit2sec(), and scale_process::prc_mpistop().
Referenced by mod_admin_time::admin_time_setup(), and scale_external_input::extin_setup().
subroutine, public scale_calendar::calendar_date2char | ( | character(len=27), intent(out) | chardate, |
integer, dimension(6), intent(in) | ymdhms, | ||
real(dp), intent(in) | subsec | ||
) |
Convert from gregorian date to absolute day/second.
[out] | chardate | formatted date character |
[in] | ymdhms | date |
[in] | subsec | subsecond |
Definition at line 497 of file scale_calendar.F90.
References calendar_ymd2absday(), i_day, i_month, and i_year.
Referenced by mod_admin_time::admin_time_checkstate(), mod_admin_time::admin_time_setup(), and scale_atmos_boundary::atmos_boundary_resume().
integer, parameter, public scale_calendar::i_year = 1 |
[index] year
Definition at line 45 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2char(), calendar_date2daysec(), calendar_daysec2date(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
integer, parameter, public scale_calendar::i_month = 2 |
[index] month
Definition at line 46 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2char(), calendar_date2daysec(), calendar_daysec2date(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
integer, parameter, public scale_calendar::i_day = 3 |
[index] day
Definition at line 47 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2char(), calendar_date2daysec(), calendar_daysec2date(), scale_external_input::extin_setup(), and scale_external_input::extin_update_3d().
integer, parameter, public scale_calendar::i_hour = 4 |
[index] hour
Definition at line 48 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2daysec(), and calendar_daysec2date().
integer, parameter, public scale_calendar::i_min = 5 |
[index] minute
Definition at line 49 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2daysec(), and calendar_daysec2date().
integer, parameter, public scale_calendar::i_sec = 6 |
[index] second
Definition at line 50 of file scale_calendar.F90.
Referenced by scale_atmos_solarins::atmos_solarins_insolation_0d(), scale_atmos_solarins::atmos_solarins_insolation_2d(), calendar_date2daysec(), and calendar_daysec2date().