How to change gregorian to julian?

4 views (last 30 days)
min wong
min wong on 11 May 2017
Commented: min wong on 11 Dec 2017
My data is
time
Size: 1x1
Dimensions: time
Datatype: single
Attributes:
long_name = 'Time'
standard_name = 'time'
units = 'days since 1950-01-01 00:00:00 UTC'
calendar = 'julian'
axis = 'T'
How to change it to julian time? Thank you

Accepted Answer

Meysam Mahooti
Meysam Mahooti on 19 Sep 2017
Edited: Walter Roberson on 19 Sep 2017
%--------------------------------------------------------------------------
%
% Mjday: Modified Julian Date from calendar date and time
%
% Inputs:
% year, month, day, hour, min, sec
%
% output:
% Mjd Modified Julian Date
%
% Last modified: 2015/08/12 M. Mahooti
%
%--------------------------------------------------------------------------
function Mjd = Mjday(year, month, day, hour, min, sec)
if (nargin < 4)
hour = 0;
min = 0;
sec = 0;
end
y = year;
m = month;
b = 0;
c = 0;
if (m <= 2)
y = y - 1;
m = m + 12;
end
if (y < 0)
c = -.75;
end
% check for valid calendar date
if (year < 1582)
% null
elseif (year > 1582)
a = fix(y / 100);
b = 2 - a + floor(a / 4);
elseif (month < 10)
% null
elseif (month > 10)
a = fix(y / 100);
b = 2 - a + floor(a / 4);
elseif (day <= 4)
% null
elseif (day > 14)
a = fix(y / 100);
b = 2 - a + floor(a / 4);
else
fprintf('\n\n this is an invalid calendar date!!\n');
return
end
jd = fix(365.25 * y + c) + fix(30.6001 * (m + 1));
jd = jd + day + b + 1720994.5;
jd = jd + (hour+min/60+sec/3600)/24;
Mjd = jd - 2400000.5;

More Answers (1)

Categories

Find more on Dates and Time in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!