Fortran可以方便地将“时间间隔+参考日期”转换为“日期”吗?

时间:2019-09-07 01:30:58

标签: fortran

在其他语言中,通常会出现一个使用参考日期和时间间隔来计算日期的函数。例如,在R中,如果参考日期为2019/09/01,并且时间间隔为2 days,则计算出的日期为2019/09/03。我们可以使用以下日期转换功能:

as.Date(2, origin = "2019-09-01")
# [1] "2019-09-03"

我想知道Fortran是否具有类似的功能或软件包?

1 个答案:

答案 0 :(得分:0)

Fortran标准仅提供当前日期和时间(以毫秒为单位)。

call date_and_time ( [ date ] [ , time ] [ , zone ] [ , values ] )

返回以下内容(无时钟时,默认值为空白或-huge(0))。

  • date是长度为8或更大的标量字符变量。它的前8个字符以形式设置为世纪。 ccyymmdd

  • time是长度为10或更大的标量字符变量。它的前10个字符 以 hhmmss形式设置为小时分钟毫秒。 sss

  • zone是长度为5或更大的标量字符变量。它的前5个字符是 设置为 Shhmm 形式的本地时间与UTC的时差(也称为格林威治标准时间),分别对应符号,小时和分钟。例如,冬天在纽约的处理器将返回值-0500。

  • values是等级1的默认整数数组,其大小至少为8,包含以下序列: 值:,一年中的,月中的天,以分钟为单位的分钟的**时间差异到UTC 一天中的小时小时中的分钟分钟中的秒毫秒数

如果您除此以外还需要其他任何功能,则必须当前编写自己的函数,或者如注释中所述,使用现有函数之一。在我所知道的最著名的例子中,有一个开放式库 datetime-fortran here