diff --git a/matlab/@dynDate/le.m b/matlab/@dynDate/le.m
deleted file mode 100644
index 67fb532a3..000000000
--- a/matlab/@dynDate/le.m
+++ /dev/null
@@ -1,83 +0,0 @@
-function c = le(a,b) % --*-- Unitary tests --*--
-
-%@info:
-%! @deftypefn {Function File} {@var{c} =} le (@var{a},@var{b})
-%! @anchor{@dynDate/le}
-%! @sp 1
-%! Overloads the le (less or equal) operator for the Dynare dates class (@ref{dynDate}).
-%! @sp 2
-%! @strong{Inputs}
-%! @sp 1
-%! @table @ @var
-%! @item a
-%! Dynare date object instantiated by @ref{dynDate}.
-%! @item b
-%! Dynare date object instantiated by @ref{dynDate}.
-%! @end table
-%! @sp 1
-%! @strong{Outputs}
-%! @sp 1
-%! @table @ @var
-%! @item c
-%! scalar integer equal to one if a<=b, 0 otherwise.
-%! @end table
-%! @sp 2
-%! @strong{This function is called by:}
-%! @sp 2
-%! @strong{This function calls:}
-%! @ref{@@dynDate/lt}, @ref{@@dynDate/eq}
-%!
-%! @end deftypefn
-%@eod:
-
-% Copyright (C) 2011-2013 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 .
-
-if a.
+
+if ~isequal(nargin,2)
+ error('dynDates::lt: I need exactly two input arguments!')
+end
+
+if ~isa(A,'dynDates') || ~isa(B,'dynDates')
+ error(['dynDates::le: Input arguments ''' inputname(1) ''' and ''' inputname(2) ''' have to be a dynDates objects!'])
+end
+
+if ~isequal(A.freq,B.freq)
+ C = 0;
+ return
+end
+
+if isequal(A.ndat, B.ndat)
+ C = (A==B);
+ idx = find(C==0);
+ for i=1:length(idx)
+ C(idx(i)) = compare_vectors(@lt, A.time(idx(i),:), B.time(idx(i),:));
+ end
+else
+ if isequal(A.ndat,1) && isequal(B.ndat,1)
+ C = compare_vectors(@le, A.time, B.time);
+ elseif isequal(A.ndat,1)
+ C = NaN(B.ndat,1);
+ for i=1:B.ndat
+ C(i) = compare_vectors(@le, A.time, B.time(i,:));
+ end
+ elseif isequal(B.ndat,1)
+ C = NaN(A.ndat,1);
+ for i=1:A.ndat
+ C(i) = compare_vectors(@le, A.time(i,:), B.time);
+ end
+ else
+ C = 0;
+ end
+end
+
+%@test:1
+%$ % Define some dates
+%$ date_2 = '1950Q2';
+%$ date_3 = '1950Q3';
+%$ date_4 = '1950Q1';
+%$ date_5 = '1949Q2';
+%$
+%$ % Call the tested routine.
+%$ d2 = dynDates(date_2);
+%$ d3 = dynDates(date_3);
+%$ d4 = dynDates(date_4);
+%$ d5 = dynDates(date_5);
+%$ i1 = (d2<=d3);
+%$ i2 = (d3<=d4);
+%$ i3 = (d4<=d2);
+%$ i4 = (d5<=d4);
+%$ i5 = (d5<=d5);
+%$
+%$ % Check the results.
+%$ t(1) = dyn_assert(i1,1);
+%$ t(2) = dyn_assert(i2,0);
+%$ t(3) = dyn_assert(i3,1);
+%$ t(4) = dyn_assert(i4,1);
+%$ t(5) = dyn_assert(i5,1);
+%$ T = all(t);
+%@eof:1
+
+%@test:2
+%$ % Define some dates
+%$ B1 = '1945Q1';
+%$ B2 = '1945Q2';
+%$ B3 = '1945Q3';
+%$ B4 = '1945Q4';
+%$ B5 = '1950Q1';
+%$
+%$ % Create dynDates objects.
+%$ dd = dynDates(B1,B2,B3,B4);
+%$
+%$ % Check the results.
+%$ t(1) = dyn_assert(dynDates(B1)<=dynDates(B2),1);
+%$ t(2) = dyn_assert(dynDates(B2)<=dynDates(B1),0);
+%$ t(3) = dyn_assert(dynDates(B2)<=dynDates(B2),1);
+%$ t(4) = dyn_assert(dd<=dynDates(B5),ones(4,1));
+%$ t(5) = dyn_assert(dynDates(B5)<=dd,zeros(4,1));
+%$ t(6) = dyn_assert(dynDates(B1)<=dd,ones(4,1));
+%$ T = all(t);
+%@eof:2
\ No newline at end of file