Main Content

juliandate

MATLAB 日期时间转换为儒略日期

说明

示例

jd = juliandate(t) 返回等同于 t 中的 datetime 值的 儒略日期

  • 如果未指定 t 的时区,则 juliandate 会将 t 中的时间作为 UTC 时间。此解释可能不同于您对其他上下文中的“未设置时区的”datetime 数组的处理方式。例如,您可能认为 datetime("now") 会返回您的本地时间。但 juliandate 将其解释为 UTC 时间。

  • 如果指定 t 的时区,则 juliandate 使用时区偏移量来计算相对于 UTC 的儒略日期。

  • juliandate 将忽略闰秒,除非 t 的时区是 UTCLeapSeconds

最佳做法是在调用 juliandate 之前指定 t 的时区。

jd = juliandate(t,dateType) 返回由 dateType 指定的儒略日期的类型。例如,可以将 datetime 值转换为修改后的儒略日期。

示例

全部折叠

创建一个 datetime 值,并将其转换为与之等同的儒略日期。显示分区和未分区 datetime 值之间的儒略日期差异。最佳做法是在调用 juliandate 之前指定 datetime 数组的时区。

创建一个 datetime 数组并指定其时区。

tStrings = ["2022-02-01 10:05:24", ...
            "2022-04-01 10:05:24", ...
            "2022-10-01 10:05:24", ...
            "2022-12-01 10:05:24"];
t = datetime(tStrings);
t.TimeZone = 'America/New_York'
t = 1x4 datetime
   01-Feb-2022 10:05:24   01-Apr-2022 10:05:24   01-Oct-2022 10:05:24   01-Dec-2022 10:05:24

t1 转换为等效的儒略日期。juliandate 在计算儒略日期时考虑相对于 UTC 的时区偏移量。在此示例中,2022 年 3 月和 11 月的夏令时转换会更改相对于 UTC 的时区偏移量。因此,jd(1)jd(4) 的小数部分不同于 jd(2)jd(3) 的小数部分。

format longG
jd = juliandate(t)
jd = 1×4

             2459612.12875          2459671.08708333          2459854.08708333             2459915.12875

创建一个没有时区的 t 的副本。将其转换为与之等同的儒略日期。juliandatetUnzoned 中的时间作为 UTC 时间,并且没有时区偏移。

tUnzoned = t;
tUnzoned.TimeZone = '';
jdUnzoned = juliandate(tUnzoned)
jdUnzoned = 1×4

          2459611.92041667          2459670.92041667          2459853.92041667          2459914.92041667

显示 jdUnzonedjd 之间的差异。差异等于 tUnzonedjuliandate 解释为 UTC 时间)中的时间与 t(位于 America/New_York 时区中)中的时间之间的时间偏移量(以天为单位)。

jdUnzoned - jd
ans = 1×4

        -0.208333333488554        -0.166666666511446        -0.166666666511446        -0.208333333488554

输入参数

全部折叠

日期时间输入,指定为 datetime 数组。

儒略日期值的类型,指定为 "juliandate""modifiedjuliandate"

  • 如果 dateType"juliandate",则 juliandatet 中的日期时间值转换为等同的儒略日期。儒略日期是前公历日历中自公元前 4714 年 11 月 24 日或前儒略日历中自公元前 4713 年 1 月 1 日中午起的整天数和小数天数。

  • 如果 dateType"modifiedjuliandate",则 juliandatet 中的日期时间值转换为修改后的儒略日期。修改后的儒略日期是自 1858 年 11 月 17 日 00:00:00 起的整天数和小数天数。

详细信息

全部折叠

儒略日期

儒略日期是前公历日历中自公元前 4714 年 11 月 24 日或前儒略日历中自公元前 4713 年 1 月 1 日中午起的整天数和小数天数。

扩展功能

版本历史记录

在 R2014b 中推出