diff --git a/matlab/perfect-foresight-models/det_cond_forecast.m b/matlab/perfect-foresight-models/det_cond_forecast.m
index b7468e13538d564c48970d591d857ebd03f9626c..4652c6c5829df7fdaf4cfdca218456665ad3afd3 100644
--- a/matlab/perfect-foresight-models/det_cond_forecast.m
+++ b/matlab/perfect-foresight-models/det_cond_forecast.m
@@ -429,7 +429,7 @@ if pf && ~surprise
         not_achieved = 1;
         alpha = 1;
         while not_achieved
-            simul();
+            oo_ = perfect_foresight_solver(M_, options_, oo_);
             result = sum(sum(isfinite(oo_.endo_simul(:,time_index_constraint)))) == ny * constrained_periods;
             if result
                 y = oo_.endo_simul(constrained_vars, time_index_constraint);