NK_baseline_steadystate.m: provide proper error handling
parent
c033a08cec
commit
ab6b642596
|
@ -65,6 +65,7 @@ Lambdax=mu_z;
|
|||
%set the parameter gammma1
|
||||
gammma1=mu_z*mu_I/betta-(1-delta);
|
||||
if gammma1<0 % parameter violates restriction; Preventing this cannot be implemented via prior restriction as it is a composite of different parameters and the valid prior region has unknown form
|
||||
params=M_.params;
|
||||
check=1; %set failure indicator
|
||||
return; %return without updating steady states
|
||||
end
|
||||
|
@ -86,13 +87,20 @@ vp=(1-thetap)/(1-thetap*PI^((1-chi)*epsilon))*PIstar^(-epsilon);
|
|||
vw=(1-thetaw)/(1-thetaw*PI^((1-chiw)*eta)*mu_z^eta)*PIstarw^(-eta);
|
||||
tempvaromega=alppha/(1-alppha)*w/r*mu_z*mu_I;
|
||||
|
||||
[ld,fval,exitflag]=fzero(@(ld)(1-betta*thetaw*mu_z^(eta-1)*PI^(-(1-chiw)*(1-eta)))/(1-betta*thetaw*mu_z^(eta*(1+gammma))*PI^(eta*(1-chiw)*(1+gammma)))...
|
||||
-(eta-1)/eta*wstar/(varpsi*PIstarw^(-eta*gammma)*ld^gammma)*((1-h*mu_z^(-1))^(-1)-betta*h*(mu_z-h)^(-1))*...
|
||||
((mu_A*mu_z^(-1)*vp^(-1)*tempvaromega^alppha-tempvaromega*(1-(1-delta)*(mu_z*mu_I)^(-1)))*ld-vp^(-1)*Phi)^(-1),0.25,options);
|
||||
try
|
||||
%proper error handling for cases for infeasible initial value, which would result in error instead of valid exitflag
|
||||
[ld,fval,exitflag]=fzero(@(ld)(1-betta*thetaw*mu_z^(eta-1)*PI^(-(1-chiw)*(1-eta)))/(1-betta*thetaw*mu_z^(eta*(1+gammma))*PI^(eta*(1-chiw)*(1+gammma)))...
|
||||
-(eta-1)/eta*wstar/(varpsi*PIstarw^(-eta*gammma)*ld^gammma)*((1-h*mu_z^(-1))^(-1)-betta*h*(mu_z-h)^(-1))*...
|
||||
((mu_A*mu_z^(-1)*vp^(-1)*tempvaromega^alppha-tempvaromega*(1-(1-delta)*(mu_z*mu_I)^(-1)))*ld-vp^(-1)*Phi)^(-1),0.25,options);
|
||||
catch
|
||||
exitflag = 0;
|
||||
end
|
||||
|
||||
if exitflag <1
|
||||
%indicate the SS computation was not sucessful; this would also be detected by Dynare
|
||||
%setting the indicator here shows how to use this functionality to
|
||||
%filter out parameter draws
|
||||
params=M_.params;
|
||||
check=1; %set failure indicator
|
||||
return; %return without updating steady states
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue