MJD与日期的相互转化(matlab)

1.日期转换为mjd

先将日期转换成jd,jd再减去2400000.5就变成了mjd。在转换成jd的时候,要注意在1582.10.5之前使用的是儒略历,自此之后使用的是格里高利历,这两者在转换成jd的时候计算公式有些不同。

clear all;
clc;
y=input('请输入年份:');
m=input('请输入月份:');
d=input('请输入日:');
while m<=2
    y=y-1;
    m=m+12;
end
a=floor(y/100);
if (y<1582)||((y==1582)&&(m<10))||((y==1582)&&(m==10)&&(d<5))
    b=0;%儒略历时,b=0
else 
    b=2-a+floor(a/4);%格里高利历时b的取值
end
jd=floor(365.25*(y+4716))+floor(30.6001*(m+1))+d+b-1524.5;
mjd=jd-2400000.5;
fprintf('mjd:%f',mjd)

 

5dfd24f01bd44ecaa8d2d49af127d280.png

2.mjd转换成日期

首先将mjd转换成jd再转换成

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值