儒略日统计公式

By admin in 亚洲必赢官网app on 2019年2月18日

天经济学有一种一而再纪日的儒略日(JD),它以儒略历公元前4713年十一月三十一日的GMT正午为第0日的启幕。还有一种简化儒略日(MJD):
MJD=JD-2五千00.5 MJD的第0日是从农历1858年三月3日的GMT零时始发的。

亟需小心:儒略历公元前4713年十一月四日一定于公历公元前4713年1月六日。
儒略日(Julianday)是指由公元前4713年十一月1十一日,协调世界时晚上12时始发所经过的命局,多为天教育家接纳,用以作为天法学的单一历法,把不一致历法的年表统一起来。
儒略日是一种不用时间的漫漫纪日法,简写为JD。是由法兰西共和国学者Joseph Justus
Scliger(1540-1609)在1583年所创,那名称是为了回想他的伯伯——意国专家JuliusCaesar Scaliger(1484-1558)。

儒略日的源点订在公元前4713年(天法学上记为 -4712
年)3月七日格林威治时间平午(世界时12:00),即JD 0 内定为 4713 B.C.
十一月二十八日12:00 UT到4713 B.C. 3月31日12:00
UT的24钟头。每日赋予了3个唯一的数字,顺数而下,如:1997年7月125日12:00:00的儒略日是2450084。那个日期是考虑了阳光、月亮的运转周期,以及当时纳税的间距而订出来的。Joseph
Scliger定义儒略周期为7980年,是因2⑧ 、1玖 、15的最小公倍数为28×19×15=7980。其中:
28年为一太阳周期(solar
cycle),经过一阳光周期,则星期的日序与月的日序会再次。
19年为5月亮周期,或称默冬章(Metonic
cycle),因235朔望月=十五次归年,经过7月球周期则公历月年的日序重复。
15年为一小纪(indiction
cycle),此为亚特兰大圣上君士坦丁(Constantine)所颁,每15年鉴定财产价值以供课税,成为古罗马用的3个时代单位,
故以7980年为一儒略周期,而所选的起源公元前4713年,则是那多个循环周期同时启幕的近年年度。
以儒略日计日是为方便总计时代相隔久远或不一样历法的两风云所间隔的日数。
由于儒略日数字位数太多,国际天农学联合会于一九七二年使用简化儒略日(MJD),其定义为
MJD = JD – 2六千00.5。MJD相应的起源是1858年1月1四日世界时0时。

儒略日的乘除 儒略日= K – 32075 + 1461 * (I + 4800 +
(J-14)/12)/4+367*(J-2-(J-14)/12*12)/12-3*((I+4900+(J-14)/12)/100)/4

现把此总计公式整理如下。

比如:2009/1/1转换为 Julian day 应为
2454833 (共7码)

亚洲必赢官网app 1亚洲必赢官网app 2Code
/// <summary>
    /// 產生日期的Julian day
    /// </summary>
    /// <param name=”year”>年</param>
    /// <param name=”month”>月</param>
    /// <param name=”day”>日</param>
    /// <returns>Julian day</returns>
    private long julian ( int year, int month, int day )
    {
        long jy = year, jm = month, jd = day;
        if (jy < 0)
        {
            jy = jy + 1;
        }
        if (month > 2)
        {
            jm = jm + 1;
        }
        else
        {
            jm = jm + 13;
            jy = jy – 1;
        }
        long jul = Convert.ToInt64 (Math.Floor (365.25 * jy) + Math.Floor (30.6001 * jm) + jd + 1720995.0);
        if (jy < 1582 && jm < 10 && jd < 15)
        {
            return jul;
        }
亚洲必赢官网app,        else
        {
            long ja = Convert.ToInt64 (0.01 * jy);
            jul = Convert.ToInt64 (jul + 2 – ja + 0.25 * ja);
            return jul;
        }

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 亚洲必赢手机官网 版权所有