diff --git a/mex/sources/k_order_perturbation/k_ord_dynare.cc b/mex/sources/k_order_perturbation/k_ord_dynare.cc
index ab82077413d7a7188af635f1d8354725db18c3e4..2622a7de177a8cf2fadb819e0fd2b7c9543e8750 100644
--- a/mex/sources/k_order_perturbation/k_ord_dynare.cc
+++ b/mex/sources/k_order_perturbation/k_ord_dynare.cc
@@ -126,14 +126,16 @@ KordpDynare::solveDeterministicSteady()
 void
 KordpDynare::evaluateSystem(Vector &out, const Vector &yy, const Vector &xx) throw (DynareException)
 {
-  // Nothing to do, this method is only implemented to complete the interface of DynamicModel
+  // This method is only called when checking the residuals at steady state (Approximation::check), so return zero residuals
+  out.zeros();
 }
 
 void
 KordpDynare::evaluateSystem(Vector &out, const Vector &yym, const Vector &yy,
                             const Vector &yyp, const Vector &xx) throw (DynareException)
 {
-  // Nothing to do, this method is only implemented to complete the interface of DynamicModel
+  // This method is only called when checking the residuals at steady state (Approximation::check), so return zero residuals
+  out.zeros();
 }
 
 /************************************************