Finish implementation of truncated normal distribution
Closes https://git.dynare.org/Dynare/dynare/-/issues/1593kalman-mex
parent
16f921ed62
commit
d60a19ce49
|
@ -5912,13 +5912,14 @@ observed variables.
|
|||
.. option:: PRIOR_3RD_PARAMETER
|
||||
|
||||
A third parameter of the prior used for generalized beta
|
||||
distribution, generalized gamma, generalized Weibull and for
|
||||
the uniform distribution. Default: ``0``.
|
||||
distribution, generalized gamma, generalized Weibull, the truncated normal, and for
|
||||
the uniform distribution. Default: ``-Inf`` for normal distribution, ``0`` otherwise.
|
||||
|
||||
.. option:: PRIOR_4TH_PARAMETER
|
||||
|
||||
A fourth parameter of the prior used for generalized beta
|
||||
distribution and for the uniform distribution. Default: ``1``.
|
||||
distribution, the truncated normal, and for the uniform distribution.
|
||||
Default: ``Inf`` for normal distribution, ``1`` otherwise.
|
||||
|
||||
.. option:: SCALE_PARAMETER
|
||||
|
||||
|
|
|
@ -54,8 +54,8 @@ switch pshape(indx)
|
|||
abscissa = linspace(infbound,supbound,steps);
|
||||
dens = density(abscissa,p6(indx),p7(indx),p3(indx));
|
||||
case 3% Gaussian prior
|
||||
infbound = norminv(truncprior,p6(indx),p7(indx));
|
||||
supbound = norminv(1-truncprior,p6(indx),p7(indx));
|
||||
infbound = max(p3(indx),norminv(truncprior,p6(indx),p7(indx)));
|
||||
supbound = min(p4(indx),norminv(1-truncprior,p6(indx),p7(indx)));
|
||||
abscissa = linspace(infbound,supbound,steps);
|
||||
dens = normpdf(abscissa,p6(indx),p7(indx));
|
||||
case 4% Inverse-gamma of type 1 prior
|
||||
|
|
|
@ -93,11 +93,11 @@ for i=1:length(p6)
|
|||
end
|
||||
case 3
|
||||
if prior_trunc == 0
|
||||
bounds.lb(i) = -Inf;
|
||||
bounds.ub(i) = Inf;
|
||||
bounds.lb(i) = max(-Inf,p3(i));
|
||||
bounds.ub(i) = min(Inf,p4(i));
|
||||
else
|
||||
bounds.lb(i) = norminv(prior_trunc,p6(i),p7(i));
|
||||
bounds.ub(i) = norminv(1-prior_trunc,p6(i),p7(i));
|
||||
bounds.lb(i) = max(norminv(prior_trunc,p6(i),p7(i)),p3(i));
|
||||
bounds.ub(i) = min(norminv(1-prior_trunc,p6(i),p7(i)),p4(i));
|
||||
end
|
||||
case 4
|
||||
if prior_trunc == 0
|
||||
|
|
|
@ -70,7 +70,7 @@ estimated_params;
|
|||
alp, beta_pdf, 0.356, 0.02;
|
||||
bet, beta_pdf, 0.993, 0.002;
|
||||
gam, normal_pdf, 0.0085, 0.003;
|
||||
mst, normal_pdf, 1.0002, 0.007;
|
||||
mst, normal_pdf, 1.0002, 0.007,1.0002-3*0.007,1.0002+3*0.007;
|
||||
rho, beta_pdf, 0.129, 0.223;
|
||||
psi, beta_pdf, 0.65, 0.05;
|
||||
del, beta_pdf, 0.01, 0.005;
|
||||
|
|
Loading…
Reference in New Issue