diff --git a/matlab/dynare_estimation_1.m b/matlab/dynare_estimation_1.m
index 2245dc290c58a90acd5b3f8db502db979fa821d2..64ba51ba402d3cc57cfef73721f510a749ff0d89 100644
--- a/matlab/dynare_estimation_1.m
+++ b/matlab/dynare_estimation_1.m
@@ -52,7 +52,7 @@ end
 
 % Set particle filter flag.
 if options_.order > 1
-    if options_.particle.status && options_.order==2
+    if options_.particle.status
         skipline()
         disp('Estimation using a non linear filter!')
         skipline()
@@ -78,12 +78,8 @@ if options_.order > 1
                 end
             end
         end
-    elseif options_.particle.status && options_.order>2
-        error(['Non linear filter are not implemented with order ' int2str(options_.order) ' approximation of the model!'])
-    elseif ~options_.particle.status && options_.order==2
-        error('For estimating the model with a second order approximation using a non linear filter, one should have options_.particle.status=true;')
     else
-        error(['Cannot estimate a model with an order ' int2str(options_.order) ' approximation!'])
+        error('For estimating the model with a second order approximation using a non linear filter, one should have options_.particle.status=true;')
     end
 end
 
diff --git a/matlab/dynare_estimation_init.m b/matlab/dynare_estimation_init.m
index 5bd1ce9acaa24f66372077212cad3c52cab6e99a..e7eb1da8285516a76971772fa2f93dfe520fe1d5 100644
--- a/matlab/dynare_estimation_init.m
+++ b/matlab/dynare_estimation_init.m
@@ -101,9 +101,6 @@ if length(unique(options_.varobs))<length(options_.varobs)
 end
 
 % Check the perturbation order (nonlinear filters with third order perturbation, or higher order, are not yet implemented).
-if options_.order>2
-    error(['I cannot estimate a model with a ' int2str(options_.order) ' order approximation of the model!'])
-end
 
 % analytical derivation is not yet available for kalman_filter_fast
 if options_.analytic_derivation && options_.fast_kalman_filter