function mjd=cdtmjd(year,month,day)
%Вычисление модифицированной юлианской даты MJD
%
%Вызов:        mjd=cdtmjd(year,month,day)
%
%  year - год (д.б. больше 1583);
% month - месЯц (1...12);
%   day - день месЯца (1...31);
%   mjd - модифицированнаЯ юлианскаЯ дата (=JD-2400000.5)
%Все входные вектора д.б. одной размерности.

% Khomutov S.Yu., 06.04.96
%
% Источник: Меес Ж. Астрономические формулы длЯ калькулЯторов. -
%           М.: Мир, 1988. - с.27-29

if year<1583 | month<1 | month>12 | day<1 | day>31
   error ('Аргументы не в требуемых пределах')
end
[i1,i2]=size(year);
mjd=zeros(i1,i2);
i=month>2;
   mjd(i) = fix(365.25*year(i)) + fix(30.6001*(month(i)+1)) ...
         + day(i) + 1720996.5 ...
         - fix(year(i)/100)+fix(fix(year(i)/100)/4) ...
         - 2400000.5;
i=month<=2;
   mjd(i) = fix(365.25*(year(i)-1)) + fix(30.6001*(month(i)+13)) ...
         + day(i) + 1720996.5 ...
         - fix((year(i)-1)/100)+fix(fix((year(i)-1)/100)/4) ...
         - 2400000.5;
