Skip to content
Snippets Groups Projects
Commit be61de13 authored by Stéphane Adjemian's avatar Stéphane Adjemian
Browse files

Account for negative steady state in case of log-linearization.

parent 21fa1ec8
No related branches found
No related tags found
No related merge requests found
...@@ -103,6 +103,9 @@ if ismember('simulate', varargin) % Prior simulations (BK). ...@@ -103,6 +103,9 @@ if ismember('simulate', varargin) % Prior simulations (BK).
disp(['mjdgges crash share = ' num2str(results.dll.problem_share)]) disp(['mjdgges crash share = ' num2str(results.dll.problem_share)])
disp(['Steady state problem share = ' num2str(results.ss.problem_share)]) disp(['Steady state problem share = ' num2str(results.ss.problem_share)])
disp(['Complex steady state share = ' num2str(results.ss.complex_share)]) disp(['Complex steady state share = ' num2str(results.ss.complex_share)])
if options_.loglinear
disp(['Nonpositive steady state share = ' num2str(results.ss.nonpositive_share)])
end
disp(['Analytical steady state problem share = ' num2str(results.ass.problem_share)]) disp(['Analytical steady state problem share = ' num2str(results.ass.problem_share)])
skipline(2) skipline(2)
donesomething = true; donesomething = true;
......
...@@ -49,6 +49,7 @@ count_complex_steadystate = 0; ...@@ -49,6 +49,7 @@ count_complex_steadystate = 0;
count_nan_steadystate = 0; count_nan_steadystate = 0;
count_nan_params = 0; count_nan_params = 0;
count_complex_params = 0; count_complex_params = 0;
count_nonpositive_steadystate = 0;
count_unknown_problem = 0; count_unknown_problem = 0;
NumberOfSimulations = options_.prior_mc; NumberOfSimulations = options_.prior_mc;
NumberOfParameters = length(bayestopt_.p1); NumberOfParameters = length(bayestopt_.p1);
...@@ -135,6 +136,8 @@ while iteration < NumberOfSimulations ...@@ -135,6 +136,8 @@ while iteration < NumberOfSimulations
count_complex_params = count_complex_params + 1 ; count_complex_params = count_complex_params + 1 ;
case 24 case 24
count_nan_params = count_nan_params + 1 ; count_nan_params = count_nan_params + 1 ;
case 26
count_nonpositive_steadystate = count_nonpositive_steadystate + 1;
otherwise otherwise
count_unknown_problem = count_unknown_problem + 1 ; count_unknown_problem = count_unknown_problem + 1 ;
end end
...@@ -162,6 +165,7 @@ results.dll.problem_share = count_dll_problem/loop_indx; ...@@ -162,6 +165,7 @@ results.dll.problem_share = count_dll_problem/loop_indx;
results.ss.problem_share = count_no_steadystate/loop_indx; results.ss.problem_share = count_no_steadystate/loop_indx;
results.ss.complex_share = count_complex_steadystate/loop_indx; results.ss.complex_share = count_complex_steadystate/loop_indx;
results.ass.problem_share = count_steadystate_file_exit/loop_indx; results.ass.problem_share = count_steadystate_file_exit/loop_indx;
results.ss.nonpositive_share = count_nonpositive_steadystate/loop_indx;
results.jacobian.problem_share = count_complex_jacobian/loop_indx; results.jacobian.problem_share = count_complex_jacobian/loop_indx;
results.garbage_share = ... results.garbage_share = ...
results.bk.indeterminacy_share + ... results.bk.indeterminacy_share + ...
...@@ -170,6 +174,8 @@ results.garbage_share = ... ...@@ -170,6 +174,8 @@ results.garbage_share = ...
results.dll.problem_share + ... results.dll.problem_share + ...
results.ss.problem_share + ... results.ss.problem_share + ...
results.ass.problem_share + ... results.ass.problem_share + ...
results.ss.complex_share + ...
results.ss.nonpositive_share + ...
results.jacobian.problem_share + ... results.jacobian.problem_share + ...
count_unknown_problem/loop_indx ; count_unknown_problem/loop_indx ;
results.prior.mean = sampled_prior_expectation; results.prior.mean = sampled_prior_expectation;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment