178 lines
12 KiB
HTML
178 lines
12 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 PlotPosteriorDistributions</title>
|
|
<meta name="keywords" content="PlotPosteriorDistributions">
|
|
<meta name="description" content="stephane.adjemian@ens.fr [09-09-2005]">
|
|
<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> > PlotPosteriorDistributions.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>PlotPosteriorDistributions
|
|
</h1>
|
|
|
|
<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
|
<div class="box"><strong>stephane.adjemian@ens.fr [09-09-2005]</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 PlotPosteriorDistributions() </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"> stephane.adjemian@ens.fr [09-09-2005]</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="CheckPath.html" class="code" title="function DirectoryName = CheckPath(type)">CheckPath</a> 06-03-2005</li><li><a href="draw_prior_density.html" class="code" title="function [x,f,abscissa,dens,binf,bsup] = draw_prior_density(indx);">draw_prior_density</a> stephane.adjemian@ens.fr [07-15-2004]</li><li><a href="get_the_name.html" class="code" title="function [nam,texnam] = get_the_name(k,TeX)">get_the_name</a> stephane.adjemian@cepremap.cnrs.fr [07-13-2004]</li></ul>
|
|
This function is called by:
|
|
<ul style="list-style-image:url(../matlabicon.gif)">
|
|
<li><a href="dynare_estimation.html" class="code" title="function dynare_estimation(var_list_)">dynare_estimation</a> </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 PlotPosteriorDistributions()</a>
|
|
0002 <span class="comment">% stephane.adjemian@ens.fr [09-09-2005]</span>
|
|
0003 <span class="keyword">global</span> estim_params_ M_ options_ bayestopt_ oo_
|
|
0004
|
|
0005 OutputDirectoryName = <a href="CheckPath.html" class="code" title="function DirectoryName = CheckPath(type)">CheckPath</a>(<span class="string">'Output'</span>);
|
|
0006
|
|
0007 TeX = options_.TeX;
|
|
0008 nblck = options_.mh_nblck;
|
|
0009 nvx = estim_params_.nvx;
|
|
0010 nvn = estim_params_.nvn;
|
|
0011 ncx = estim_params_.ncx;
|
|
0012 ncn = estim_params_.ncn;
|
|
0013 np = estim_params_.np ;
|
|
0014 npar = nvx+nvn+ncx+ncn+np;
|
|
0015
|
|
0016 MaxNumberOfPlotPerFigure = 9;<span class="comment">% The square root must be an integer!</span>
|
|
0017 nn = sqrt(MaxNumberOfPlotPerFigure);
|
|
0018
|
|
0019 figurename = <span class="string">'Priors and posteriors'</span>;
|
|
0020
|
|
0021 <span class="keyword">if</span> TeX
|
|
0022 fidTeX = fopen([OutputDirectoryName <span class="string">'/'</span> M_.fname <span class="string">'_PriorsAndPosteriors.TeX'</span>],<span class="string">'w'</span>);
|
|
0023 fprintf(fidTeX,<span class="string">'%% TeX eps-loader file generated by PlotPosteriorDistributions.m (Dynare).\n'</span>);
|
|
0024 fprintf(fidTeX,[<span class="string">'%% '</span> datestr(now,0) <span class="string">'\n'</span>]);
|
|
0025 fprintf(fidTeX,<span class="string">' \n'</span>);
|
|
0026 <span class="keyword">end</span>
|
|
0027
|
|
0028 figunumber = 0;
|
|
0029 subplotnum = 0;
|
|
0030
|
|
0031 <span class="keyword">for</span> i=1:npar
|
|
0032 subplotnum = subplotnum+1;
|
|
0033 <span class="keyword">if</span> subplotnum == 1
|
|
0034 figunumber = figunumber+1;
|
|
0035 <span class="keyword">if</span> options_.nograph
|
|
0036 hfig = figure(<span class="string">'Name'</span>,figurename,<span class="string">'Visible'</span>,<span class="string">'off'</span>);
|
|
0037 <span class="keyword">else</span>
|
|
0038 hfig = figure(<span class="string">'Name'</span>,figurename);
|
|
0039 <span class="keyword">end</span>
|
|
0040 <span class="keyword">end</span>
|
|
0041 <span class="keyword">if</span> subplotnum == 1
|
|
0042 <span class="keyword">if</span> TeX
|
|
0043 TeXNAMES = [];
|
|
0044 <span class="keyword">end</span>
|
|
0045 NAMES = [];
|
|
0046 <span class="keyword">end</span>
|
|
0047 [nam,texnam] = <a href="get_the_name.html" class="code" title="function [nam,texnam] = get_the_name(k,TeX)">get_the_name</a>(i,TeX);
|
|
0048 NAMES = strvcat(NAMES,nam);
|
|
0049 <span class="keyword">if</span> TeX
|
|
0050 TeXNAMES = strvcat(TeXNAMES,texnam);
|
|
0051 <span class="keyword">end</span>
|
|
0052 [x2,f2,abscissa,dens,binf2,bsup2] = <a href="draw_prior_density.html" class="code" title="function [x,f,abscissa,dens,binf,bsup] = draw_prior_density(indx);">draw_prior_density</a>(i);
|
|
0053 top2 = max(f2);
|
|
0054 <span class="keyword">if</span> i <= nvx
|
|
0055 name = deblank(M_.exo_names(estim_params_.var_exo(i,1),:));
|
|
0056 eval([<span class="string">'x1 = oo_.posterior_density.shocks_std.'</span> name <span class="string">'(:,1);'</span>])
|
|
0057 eval([<span class="string">'f1 = oo_.posterior_density.shocks_std.'</span> name <span class="string">'(:,2);'</span>])
|
|
0058 eval([<span class="string">'pmode = oo_.posterior_mode.shocks_std.'</span> name <span class="string">';'</span>])
|
|
0059 <span class="keyword">elseif</span> i <= nvx+nvn
|
|
0060 name = deblank(options_.varobs(estim_params_.var_endo(i-nvx,1),:));
|
|
0061 eval([<span class="string">'x1 = oo_.posterior_density.measurement_errors_std.'</span> name <span class="string">'(:,1);'</span>])
|
|
0062 eval([<span class="string">'f1 = oo_.posterior_density.measurement_errors_std.'</span> name <span class="string">'(:,2);'</span>])
|
|
0063 eval([<span class="string">'pmode = oo_.posterior_mode.measurement_errors_std.'</span> name <span class="string">';'</span>])
|
|
0064 <span class="keyword">elseif</span> i <= nvx+nvn+ncx
|
|
0065 j = i - (nvx+nvn)
|
|
0066 k1 = estim_params_.corrx(j,1);
|
|
0067 k2 = estim_params_.corrx(j,2);
|
|
0068 name = [deblank(M_.exo_names(k1,:)) <span class="string">'_'</span> deblank(M_.exo_names(k2,:))];
|
|
0069 eval([<span class="string">'x1 = oo_.posterior_density.shocks_corr.'</span> name <span class="string">'(:,1);'</span>])
|
|
0070 eval([<span class="string">'f1 = oo_.posterior_density.shocks_corr.'</span> name <span class="string">'(:,2);'</span>])
|
|
0071 eval([<span class="string">'pmode = oo_.posterior_mode.shocks_corr.'</span> name <span class="string">';'</span>])
|
|
0072 <span class="keyword">elseif</span> i <= nvx+nvn+ncx+ncn
|
|
0073 j = i - (nvx+nvn+ncx);
|
|
0074 k1 = estim_params_.corrn(j,1);
|
|
0075 k2 = estim_params_.corrn(j,2);
|
|
0076 name = [deblank(M_.endo_names(k1,:)) <span class="string">'_'</span> deblank(M_.endo_names(k2,:))];
|
|
0077 eval([<span class="string">'x1 = oo_.posterior_density.measurement_errors_corr.'</span> name <span class="string">'(:,1);'</span>])
|
|
0078 eval([<span class="string">'f1 = oo_.posterior_density.measurement_errors_corr.'</span> name <span class="string">'(:,2);'</span>])
|
|
0079 eval([<span class="string">'pmode = oo_.posterior_mode.measurement_errors_corr.'</span> name <span class="string">';'</span>])
|
|
0080 <span class="keyword">else</span>
|
|
0081 j = i - (nvx+nvn+ncx+ncn);
|
|
0082 name = deblank(M_.param_names(estim_params_.param_vals(j,1),:));
|
|
0083 eval([<span class="string">'x1 = oo_.posterior_density.'</span> name <span class="string">'(:,1);'</span>])
|
|
0084 eval([<span class="string">'f1 = oo_.posterior_density.'</span> name <span class="string">'(:,2);'</span>])
|
|
0085 eval([<span class="string">'pmode = oo_.posterior_mode.parameters.'</span> name <span class="string">';'</span>])
|
|
0086 <span class="keyword">end</span>
|
|
0087 top1 = max(f1);
|
|
0088 top0 = max([top1;top2]);
|
|
0089 binf1 = x1(1);
|
|
0090 bsup1 = x1(end);
|
|
0091 borneinf = min(binf1,binf2);
|
|
0092 bornesup = max(bsup1,bsup2);
|
|
0093 subplot(nn,nn,subplotnum)
|
|
0094 hh = plot(x2,f2,<span class="string">'-k'</span>,<span class="string">'linewidth'</span>,2);
|
|
0095 set(hh,<span class="string">'color'</span>,[0.7 0.7 0.7]);
|
|
0096 hold on;
|
|
0097 plot(x1,f1,<span class="string">'-k'</span>,<span class="string">'linewidth'</span>,2);
|
|
0098 plot( [pmode pmode], [0.0 1.1*top0], <span class="string">'--g'</span>, <span class="string">'linewidth'</span>, 2);
|
|
0099 box on;
|
|
0100 axis([borneinf bornesup 0 1.1*top0]);
|
|
0101 title(nam,<span class="string">'Interpreter'</span>,<span class="string">'none'</span>);
|
|
0102 hold off;
|
|
0103 drawnow
|
|
0104 <span class="keyword">if</span> subplotnum == MaxNumberOfPlotPerFigure | i == npar;
|
|
0105 eval([<span class="string">'print -depsc2 '</span> OutputDirectoryName <span class="string">'/'</span> M_.fname <span class="string">'_PriorsAndPosteriors'</span> int2str(figunumber)]);
|
|
0106 eval([<span class="string">'print -dpdf '</span> OutputDirectoryName <span class="string">'/'</span> M_.fname <span class="string">'_PriorsAndPosteriors'</span> int2str(figunumber)]);
|
|
0107 <span class="keyword">if</span> options_.nograph,
|
|
0108 set(hfig,<span class="string">'Visible'</span>,<span class="string">'on'</span>);
|
|
0109 <span class="keyword">end</span>
|
|
0110 saveas(hfig,[OutputDirectoryName <span class="string">'/'</span> M_.fname <span class="string">'_PriorsAndPosteriors'</span> int2str(figunumber) <span class="string">'.fig'</span>]);
|
|
0111 <span class="keyword">if</span> TeX
|
|
0112 fprintf(fidTeX,<span class="string">'\\begin{figure}[H]\n'</span>);
|
|
0113 <span class="keyword">for</span> j = 1:size(NAMES,1)
|
|
0114 fprintf(fidTeX,<span class="string">'\\psfrag{%s}[1][][0.5][0]{%s}\n'</span>,deblank(NAMES(j,:)),deblank(TeXNAMES(j,:)));
|
|
0115 <span class="keyword">end</span>
|
|
0116 fprintf(fidTeX,<span class="string">'\\centering\n'</span>);
|
|
0117 fprintf(fidTeX,<span class="string">'\\includegraphics[scale=0.5]{%s_PriorsAndPosteriors%s}\n'</span>,M_.fname,int2str(figunumber));
|
|
0118 fprintf(fidTeX,<span class="string">'\\caption{Priors and posteriors.}'</span>);
|
|
0119 fprintf(fidTeX,<span class="string">'\\label{Fig:PriorsAndPosteriors:%s}\n'</span>,int2str(figunumber));
|
|
0120 fprintf(fidTeX,<span class="string">'\\end{figure}\n'</span>);
|
|
0121 fprintf(fidTeX,<span class="string">' \n'</span>);
|
|
0122 <span class="keyword">if</span> i == npar
|
|
0123 fprintf(fidTeX,<span class="string">'%% End of TeX file.\n'</span>);
|
|
0124 fclose(fidTeX);
|
|
0125 <span class="keyword">end</span>
|
|
0126 <span class="keyword">end</span>
|
|
0127 <span class="keyword">if</span> options_.nograph,
|
|
0128 close(hfig),
|
|
0129 <span class="keyword">end</span>
|
|
0130 subplotnum = 0;
|
|
0131 <span class="keyword">end</span>
|
|
0132 <span class="keyword">end</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> |