From 75837908513565a63ae9d231c22621900ee7505a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Ry=C3=BBk=29?= Date: Thu, 9 Mar 2023 11:25:04 +0100 Subject: [PATCH] Improve error message. --- matlab/backward/simul_backward_nonlinear_model_.m | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/matlab/backward/simul_backward_nonlinear_model_.m b/matlab/backward/simul_backward_nonlinear_model_.m index c369d5d16..024b8f173 100644 --- a/matlab/backward/simul_backward_nonlinear_model_.m +++ b/matlab/backward/simul_backward_nonlinear_model_.m @@ -99,7 +99,7 @@ for it = initialconditions.nobs+(1:samplesize) error('Nonlinear solver routine failed with errorcode=%i in period %i.', errorcode, it) end end - catch + catch Error DynareOutput.endo_simul = DynareOutput.endo_simul(:, 1:it-1); dprintf('Newton failed on iteration i = %s.', num2str(it-initialconditions.nobs)); ytm = DynareOutput.endo_simul(:,end); @@ -161,6 +161,10 @@ for it = initialconditions.nobs+(1:samplesize) display_names_of_problematic_equations(DynareModel, eqtags, residuals_evaluating_to_complex); skipline() end + dprintf('Newton failed in period %s with the following error message:', char(initialconditions.lastdate+(it-initialconditions.nobs))); + skipline() + dprintf('\t %s', Error.message); + skipline() break % TODO Implement same checks with the jacobian matrix. % TODO Modify other solvers to return an exitflag.