Skip to content
Snippets Groups Projects
Verified Commit 1ead1dff authored by Stéphane Adjemian's avatar Stéphane Adjemian
Browse files

Removed routine.

parent 0c51f451
No related merge requests found
function o = ordinalinyear(y, m, d)
% Returns the ordinal date (day number in current year).
%
% INPUTS
% - y [integer] scalar or vector, the year.
% - m [integer] scalar or vector, the month.
% - d [integer] scalar or vector, the day in a month.
%
% OUTPUS
% - o [integer] scalar or vector, day number in year y.
% Copyright © 2021 Dynare Team
%
% This file is part of Dynare.
%
% Dynare is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% Dynare is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <https://www.gnu.org/licenses/>.
D = [31; 28; 31; 30; 31; 30; 31; 31; 30; 31; 30]; % Number of days in January, February, ..., November
if ~(isvector(y) && isvector(m) && isvector(d)) || ~(isint(y) && isint(m) && isint(d))
error('Arguments must be vectors of integers.')
end
if ~(length(y)==length(m) && length(y)==length(d))
error('Arguments must have same lengths.')
end
o = zeros(length(y), 1);
for i=1:length(o)
o(i) = d(i) + days(y(i), m(i));
end
function d = days(y, m)
if m>1
d = cumsum(D(1:m-1));
else
d = 0;
end
if m>2
d = d + isleapyear(y);
end
end
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment