0001 function year = mjd2fracyear(mjd);
0002
0003
0004
0005
0006
0007
0008
0009
0010 aa = mjd2date_v2(mjd);
0011
0012
0013 by4 = mod(aa.year,4) ==0;
0014 by100 = mod(aa.year, 100) == 0;
0015 by400 = mod(aa.year, 400) == 0;
0016 isleap = 1;
0017 if(by100)
0018 if(by400)
0019 isleap = 1;
0020 else
0021 isleap = 0;
0022 end
0023 end
0024 isleap = isleap & by4;
0025 numdays = [31 28 31 30 31 30 31 31 30 31 30 31];
0026
0027 if(aa.month == 1)
0028 dd = 0;
0029 else
0030 dd = sum(numdays(1:aa.month-1));
0031 end
0032 if(aa.month >=3)
0033 dd = dd + isleap;
0034 end
0035
0036 partday = aa.second/60/60/24 + aa.minute/60/24 + aa.hour/24;
0037
0038 year = aa.year + (dd+partday)/365;
0039
0040 return;
0041
0042