Skip to content
Snippets Groups Projects
Verified Commit a6af79e1 authored by Johannes Pfeifer's avatar Johannes Pfeifer Committed by Sébastien Villemot
Browse files

evaluate_steady_state.m: correctly condition debugging info on existence of...

evaluate_steady_state.m: correctly condition debugging info on existence of objects from steady state file

(cherry picked from commit 741772d5)
parent fe8c361b
Branches
Tags
No related merge requests found
......@@ -141,28 +141,31 @@ if options.ramsey_policy
fprintf('%s\n',M.endo_names{nanrow(iter)});
end
end
nan_indices_mult=find(isnan(resids(1:n_multipliers)));
if any(nan_indices_mult)
fprintf('evaluate_steady_state: The steady state results NaN for auxiliary equation %u.\n',nan_indices_mult);
fprintf('evaluate_steady_state: This is often a sign of problems.\n');
end
[infrow,infcol]=find(isinf(jacob));
if ~isempty(infrow)
fprintf('\nevaluate_steady_state: The Jacobian of the dynamic model contains Inf. The problem is associated with:\n\n')
display_problematic_vars_Jacobian(infrow,infcol,M,ys,'static','evaluate_steady_state: ')
end
if ~isreal(jacob)
[imagrow,imagcol]=find(abs(imag(jacob))>1e-15);
fprintf('\nevaluate_steady_state: The Jacobian of the dynamic model contains imaginary parts. The problem arises from: \n\n')
display_problematic_vars_Jacobian(imagrow,imagcol,M,ys,'static','evaluate_steady_state: ')
end
[nanrow,nancol]=find(isnan(jacob));
if ~isempty(nanrow)
fprintf('\nevaluate_steady_state: The Jacobian of the dynamic model contains NaN. The problem is associated with:\n\n')
display_problematic_vars_Jacobian(nanrow,nancol,M,ys,'static','evaluate_steady_state: ')
if steadystate_flag
nan_indices_mult=find(isnan(resids(1:n_multipliers)));
if any(nan_indices_mult)
fprintf('evaluate_steady_state: The steady state results NaN for auxiliary equation %u.\n',nan_indices_mult);
fprintf('evaluate_steady_state: This is often a sign of problems.\n');
end
[infrow,infcol]=find(isinf(jacob));
if ~isempty(infrow)
fprintf('\nevaluate_steady_state: The Jacobian of the dynamic model contains Inf. The problem is associated with:\n\n')
display_problematic_vars_Jacobian(infrow,infcol,M,ys,'static','evaluate_steady_state: ')
end
if ~isreal(jacob)
[imagrow,imagcol]=find(abs(imag(jacob))>1e-15);
fprintf('\nevaluate_steady_state: The Jacobian of the dynamic model contains imaginary parts. The problem arises from: \n\n')
display_problematic_vars_Jacobian(imagrow,imagcol,M,ys,'static','evaluate_steady_state: ')
end
[nanrow,nancol]=find(isnan(jacob));
if ~isempty(nanrow)
fprintf('\nevaluate_steady_state: The Jacobian of the dynamic model contains NaN. The problem is associated with:\n\n')
display_problematic_vars_Jacobian(nanrow,nancol,M,ys,'static','evaluate_steady_state: ')
end
end
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment