99 lines
6.6 KiB
HTML
99 lines
6.6 KiB
HTML
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||
|
"http://www.w3.org/TR/REC-html40/loose.dtd">
|
||
|
<html>
|
||
|
<head>
|
||
|
<title>Description of priordens</title>
|
||
|
<meta name="keywords" content="priordens">
|
||
|
<meta name="description" content="This procedure computes a prior density for">
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||
|
<meta name="generator" content="m2html © 2003 Guillaume Flandin">
|
||
|
<meta name="robots" content="index, follow">
|
||
|
<link type="text/css" rel="stylesheet" href="../m2html.css">
|
||
|
</head>
|
||
|
<body>
|
||
|
<a name="_top"></a>
|
||
|
<div><a href="../index.html">Home</a> > <a href="index.html">.</a> > priordens.m</div>
|
||
|
|
||
|
<!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png"> Master index</a></td>
|
||
|
<td align="right"><a href="index.html">Index for . <img alt=">" border="0" src="../right.png"></a></td></tr></table>-->
|
||
|
|
||
|
<h1>priordens
|
||
|
</h1>
|
||
|
|
||
|
<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
||
|
<div class="box"><strong>This procedure computes a prior density for</strong></div>
|
||
|
|
||
|
<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
||
|
<div class="box"><strong>function lnprior = priordens(para, pshape, p1, p2, p3, p4) </strong></div>
|
||
|
|
||
|
<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
||
|
<div class="fragment"><pre class="comment"> This procedure computes a prior density for
|
||
|
the structural parameters of the DSGE models
|
||
|
pshape: 0 is point mass, both para and p2 are ignored
|
||
|
1 is BETA(mean,stdd)
|
||
|
2 is GAMMA(mean,stdd)
|
||
|
3 is NORMAL(mean,stdd)
|
||
|
4 is INVGAMMA(s^2,nu)
|
||
|
5 is UNIFORM [p3,p4]</pre></div>
|
||
|
|
||
|
<!-- crossreference -->
|
||
|
<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
||
|
This function calls:
|
||
|
<ul style="list-style-image:url(../matlabicon.gif)">
|
||
|
<li><a href="lpdfgam.html" class="code" title="function ldens = lpdfgam(x,a,b);">lpdfgam</a> log GAMMA PDF</li><li><a href="lpdfgbeta.html" class="code" title="function ldens = lpdfgbeta(x,a,b,aa,bb);">lpdfgbeta</a> log (generalized) BETA PDF</li><li><a href="lpdfig1.html" class="code" title="function ldens = lpdfig1(x,s,nu)">lpdfig1</a> log INVERSE GAMMA (type 1)</li><li><a href="lpdfig2.html" class="code" title="function ldens = lpdfig2(x,s,nu)">lpdfig2</a> log INVERSE GAMMA (type 2)</li><li><a href="lpdfnorm.html" class="code" title="function f = lpdfnorm(x,m,s)">lpdfnorm</a> LPDFNORM The log of the normal density function</li></ul>
|
||
|
This function is called by:
|
||
|
<ul style="list-style-image:url(../matlabicon.gif)">
|
||
|
<li><a href="DsgeLikelihood.html" class="code" title="function [fval,cost_flag,ys,trend_coeff,info] = DsgeLikelihood(xparam1,gend,data)">DsgeLikelihood</a> stephane.adjemian@cepremap.cnrs.fr [09-07-2004]</li><li><a href="filt_mc_.html" class="code" title="function [rmse_MC, ixx] = filt_mc_(vvarvecm, loadSA, pfilt, alpha, alpha2, OutDir, istart, alphaPC)">filt_mc_</a> copyright Marco Ratto 2006</li></ul>
|
||
|
<!-- crossreference -->
|
||
|
|
||
|
|
||
|
<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
||
|
<div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function lnprior = priordens(para, pshape, p1, p2, p3, p4)</a>
|
||
|
0002 <span class="comment">% This procedure computes a prior density for</span>
|
||
|
0003 <span class="comment">% the structural parameters of the DSGE models</span>
|
||
|
0004 <span class="comment">% pshape: 0 is point mass, both para and p2 are ignored</span>
|
||
|
0005 <span class="comment">% 1 is BETA(mean,stdd)</span>
|
||
|
0006 <span class="comment">% 2 is GAMMA(mean,stdd)</span>
|
||
|
0007 <span class="comment">% 3 is NORMAL(mean,stdd)</span>
|
||
|
0008 <span class="comment">% 4 is INVGAMMA(s^2,nu)</span>
|
||
|
0009 <span class="comment">% 5 is UNIFORM [p3,p4]</span>
|
||
|
0010
|
||
|
0011 lnprior = 0;
|
||
|
0012 nprio = length(pshape);
|
||
|
0013
|
||
|
0014 i = 1;
|
||
|
0015 <span class="keyword">while</span> i <= nprio;
|
||
|
0016 a = 0;
|
||
|
0017 b = 0;
|
||
|
0018 <span class="keyword">if</span> pshape(i) == 1; <span class="comment">% (generalized) BETA Prior</span>
|
||
|
0019 mu = (p1(i)-p3(i))/(p4(i)-p3(i));
|
||
|
0020 stdd = p2(i)/(p4(i)-p3(i));
|
||
|
0021 a = (1-mu)*mu^2/stdd^2 - mu;
|
||
|
0022 b = a*(1/mu - 1);
|
||
|
0023 lnprior = lnprior + <a href="lpdfgbeta.html" class="code" title="function ldens = lpdfgbeta(x,a,b,aa,bb);">lpdfgbeta</a>(para(i),a,b,p3(i),p4(i)) ;
|
||
|
0024 <span class="keyword">elseif</span> pshape(i) == 2; <span class="comment">% GAMMA PRIOR</span>
|
||
|
0025 b = p2(i)^2/(p1(i)-p3(i));
|
||
|
0026 a = (p1(i)-p3(i))/b;
|
||
|
0027 lnprior = lnprior + <a href="lpdfgam.html" class="code" title="function ldens = lpdfgam(x,a,b);">lpdfgam</a>(para(i)-p3(i),a,b);
|
||
|
0028 <span class="keyword">elseif</span> pshape(i) == 3; <span class="comment">% GAUSSIAN PRIOR</span>
|
||
|
0029 lnprior = lnprior + <a href="lpdfnorm.html" class="code" title="function f = lpdfnorm(x,m,s)">lpdfnorm</a>(para(i),p1(i),p2(i));
|
||
|
0030 <span class="keyword">elseif</span> pshape(i) == 4; <span class="comment">% INVGAMMA1 PRIOR</span>
|
||
|
0031 lnprior = lnprior + <a href="lpdfig1.html" class="code" title="function ldens = lpdfig1(x,s,nu)">lpdfig1</a>(para(i),p1(i),p2(i));
|
||
|
0032 <span class="keyword">elseif</span> pshape(i) == 5; <span class="comment">% UNIFORM PRIOR</span>
|
||
|
0033 lnprior = lnprior + log(1/(p2(i)-p1(i)));
|
||
|
0034 <span class="keyword">elseif</span> pshape(i) == 6; <span class="comment">% INVGAMMA2 PRIOR</span>
|
||
|
0035 lnprior = lnprior + <a href="lpdfig2.html" class="code" title="function ldens = lpdfig2(x,s,nu)">lpdfig2</a>(para(i),p1(i),p2(i));
|
||
|
0036 <span class="keyword">end</span>;
|
||
|
0037 i = i+1;
|
||
|
0038 <span class="keyword">end</span>;
|
||
|
0039
|
||
|
0040 <span class="comment">% 10/11/03 MJ adapted from an earlier version in GAUSS by F. Schorfheide</span>
|
||
|
0041 <span class="comment">% and translated to Matlab by R. Wouters</span>
|
||
|
0042 <span class="comment">% 11/18/03 MJ adopted M.Ratto's suggestion for inverse gamma</span>
|
||
|
0043 <span class="comment">% changed order of input parameters</span>
|
||
|
0044 <span class="comment">% 01/16/04 MJ added invgamma2</span>
|
||
|
0045 <span class="comment">% for invgamma p2 is now standard error</span>
|
||
|
0046 <span class="comment">% 16/02/04 SA changed beta prior call</span></pre></div>
|
||
|
<hr><address>Generated on Fri 16-Jun-2006 09:09:06 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> © 2003</address>
|
||
|
</body>
|
||
|
</html>
|