| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | time |
function format_time(time) result(string) real(wp), intent(in) :: time character(len=:), allocatable :: string real(wp) :: secs integer :: mins, hours, days secs = time days = int(secs/86400.0_wp) secs = secs - days*86400.0_wp hours = int(secs/3600.0_wp) secs = secs - hours*3600.0_wp mins = int(secs/60.0_wp) secs = time - mins*60.0_wp if (days > 0) then string = format_string_int(days, '(i0, " d,")') else string = repeat(" ", 4) end if if (hours > 0) then string = string // format_string_int(hours, '(1x, i2, " h,")') else string = string // repeat(" ", 6) end if if (mins > 0) then string = string // format_string_int(mins, '(1x, i2, " min,")') else string = string // repeat(" ", 8) end if string = string // format_string_real_dp(secs, '(f6.3)')//" sec" end function format_time