170 lines
12 KiB
HTML
170 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 ReshapeMatFiles</title>
|
||
|
<meta name="keywords" content="ReshapeMatFiles">
|
||
|
<meta name="description" content="Reshape and sort (along the mcmc simulations) the mat files generated">
|
||
|
<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> > ReshapeMatFiles.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>ReshapeMatFiles
|
||
|
</h1>
|
||
|
|
||
|
<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
|
||
|
<div class="box"><strong>Reshape and sort (along the mcmc simulations) the mat files generated</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 ReshapeMatFiles(type) </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"> Reshape and sort (along the mcmc simulations) the mat files generated
|
||
|
by DYNARE.
|
||
|
|
||
|
4D-arrays are splitted along the first dimension.
|
||
|
3D-arrays are splitted along the second dimension.</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></ul>
|
||
|
This function is called by:
|
||
|
<ul style="list-style-image:url(../matlabicon.gif)">
|
||
|
<li><a href="PosteriorIRF.html" class="code" title="function PosteriorIRF(type)">PosteriorIRF</a> stephane.adjemian@ens.fr [09-25-2005]</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 ReshapeMatFiles(type)</a>
|
||
|
0002 <span class="comment">% Reshape and sort (along the mcmc simulations) the mat files generated</span>
|
||
|
0003 <span class="comment">% by DYNARE.</span>
|
||
|
0004 <span class="comment">%</span>
|
||
|
0005 <span class="comment">% 4D-arrays are splitted along the first dimension.</span>
|
||
|
0006 <span class="comment">% 3D-arrays are splitted along the second dimension.</span>
|
||
|
0007 <span class="comment">%</span>
|
||
|
0008 <span class="comment">%</span>
|
||
|
0009 <span class="keyword">global</span> M_ options_
|
||
|
0010
|
||
|
0011 MhDirectoryName = [ <a href="CheckPath.html" class="code" title="function DirectoryName = CheckPath(type)">CheckPath</a>(<span class="string">'metropolis'</span>) <span class="string">'/'</span> ];
|
||
|
0012
|
||
|
0013 <span class="keyword">switch</span> type
|
||
|
0014 <span class="keyword">case</span> <span class="string">'irf'</span>
|
||
|
0015 CAPtype = <span class="string">'IRF'</span>;
|
||
|
0016 TYPEsize = [ options_.irf , M_.endo_nbr , M_.exo_nbr ];
|
||
|
0017 TYPEarray = 4;
|
||
|
0018 <span class="keyword">case</span> <span class="string">'smooth'</span>
|
||
|
0019 CAPtype = <span class="string">'SMOOTH'</span>;
|
||
|
0020 TYPEsize = [ M_.endo_nbr , options_.nobs ];
|
||
|
0021 TYPEarray = 3;
|
||
|
0022 <span class="keyword">case</span> <span class="string">'filter'</span>
|
||
|
0023 CAPtype = <span class="string">'FILTER'</span>;
|
||
|
0024 TYPEsize = [ M_.endo_nbr , options_.nobs + 1 ];<span class="comment">% TO BE CHECKED!</span>
|
||
|
0025 TYPEarray = 3;
|
||
|
0026 <span class="keyword">case</span> <span class="string">'error'</span>
|
||
|
0027 CAPtype = <span class="string">'ERROR'</span>;
|
||
|
0028 TYPEsize = [ size(options_.varobs,1) , options_.nobs ];
|
||
|
0029 TYPEarray = 3;
|
||
|
0030 <span class="keyword">case</span> <span class="string">'innov'</span>
|
||
|
0031 CAPtype = <span class="string">'INNOV'</span>;
|
||
|
0032 TYPEsize = [ M_.exo_nbr , options_.nobs ];
|
||
|
0033 TYPEarray = 3;
|
||
|
0034 <span class="keyword">case</span> <span class="string">'forcst'</span>
|
||
|
0035 CAPtype = <span class="string">'FORCST'</span>;
|
||
|
0036 TYPEsize = [ M_.endo_nbr , options_.forecast ];
|
||
|
0037 TYPEarray = 3;
|
||
|
0038 <span class="keyword">case</span> <span class="string">'forcst1'</span>
|
||
|
0039 CAPtype = <span class="string">'FORCST1'</span>;
|
||
|
0040 TYPEsize = [ M_.endo_nbr , options_.forecast ];
|
||
|
0041 TYPEarray = 3;
|
||
|
0042 <span class="keyword">otherwise</span>
|
||
|
0043 disp(<span class="string">'ReshapeMatFiles :: Unknown argument!'</span>)
|
||
|
0044 <span class="keyword">return</span>
|
||
|
0045 <span class="keyword">end</span>
|
||
|
0046
|
||
|
0047 TYPEfiles = dir([MhDirectoryName M_.fname <span class="string">'_'</span> type <span class="string">'*'</span>]);
|
||
|
0048 NumberOfTYPEfiles = length(TYPEfiles);
|
||
|
0049 B = options_.B;
|
||
|
0050
|
||
|
0051 <span class="keyword">switch</span> TYPEarray
|
||
|
0052 <span class="keyword">case</span> 4
|
||
|
0053 <span class="keyword">if</span> NumberOfTYPEfiles > 1
|
||
|
0054 NumberOfPeriodsPerTYPEfiles = ceil(TYPEsize(1)/NumberOfTYPEfiles);
|
||
|
0055 reste = TYPEsize(1)-NumberOfPeriodsPerTYPEfiles*(NumberOfTYPEfiles-1);
|
||
|
0056 idx = 0;
|
||
|
0057 jdx = 0;
|
||
|
0058 <span class="keyword">for</span> f1=1:NumberOfTYPEfiles-1
|
||
|
0059 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = zeros(NumberOfPeriodsPerTYPEfiles,TYPEsize(2),TYPEsize(3),B);'</span>])
|
||
|
0060 <span class="keyword">for</span> f2 = 1:NumberOfTYPEfiles
|
||
|
0061 load([MhDirectoryName M_.fname <span class="string">'_'</span> type int2str(f2)]);
|
||
|
0062 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">'(:,:,:,idx+1:idx+size(stock_'</span> type <span class="string">',4))=stock_'</span> type <span class="string">'(jdx+1:jdx+NumberOfPeriodsPerTYPEfiles,:,:,:);'</span>])
|
||
|
0063 eval([<span class="string">'idx = idx + size(stock_'</span> type <span class="string">',4);'</span>])
|
||
|
0064 <span class="keyword">end</span>
|
||
|
0065 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = sort(STOCK_'</span> CAPtype <span class="string">',4);'</span>])
|
||
|
0066 save([MhDirectoryName M_.fname <span class="string">'_'</span> CAPtype <span class="string">'s'</span> int2str(f1)],[<span class="string">'STOCK_'</span> CAPtype]);
|
||
|
0067 jdx = jdx + NumberOfPeriodsPerTYPEfiles;
|
||
|
0068 idx = 0;
|
||
|
0069 <span class="keyword">end</span>
|
||
|
0070 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = zeros(reste,TYPEsize(2),TYPEsize(3),B);'</span>])
|
||
|
0071 <span class="keyword">for</span> f2 = 1:NumberOfTYPEfiles
|
||
|
0072 load([MhDirectoryName M_.fname <span class="string">'_'</span> type int2str(f2)]);
|
||
|
0073 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">'(:,:,:,idx+1:idx+size(stock_'</span> type <span class="string">',4))=stock_'</span> type <span class="string">'(jdx+1:jdx+reste,:,:,:);'</span>])
|
||
|
0074 eval([<span class="string">'idx = idx + size(stock_'</span> type <span class="string">',4);'</span>])
|
||
|
0075 <span class="keyword">end</span>
|
||
|
0076 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = sort(STOCK_'</span> CAPtype <span class="string">',4);'</span>])
|
||
|
0077 save([MhDirectoryName M_.fname <span class="string">'_'</span> CAPtype <span class="string">'s'</span> int2str(NumberOfTYPEfiles)],[<span class="string">'STOCK_'</span> CAPtype]);
|
||
|
0078 <span class="keyword">else</span>
|
||
|
0079 load([MhDirectoryName M_.fname <span class="string">'_'</span> type <span class="string">'1'</span>]);
|
||
|
0080 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = sort(stock_'</span> type <span class="string">',4);'</span>])
|
||
|
0081 save([MhDirectoryName M_.fname <span class="string">'_'</span> CAPtype <span class="string">'s'</span> int2str(1)],[<span class="string">'STOCK_'</span> CAPtype ]);
|
||
|
0082 <span class="keyword">end</span>
|
||
|
0083 <span class="keyword">for</span> file = 1:NumberOfTYPEfiles
|
||
|
0084 delete([MhDirectoryName M_.fname <span class="string">'_'</span> type int2str(file) <span class="string">'.mat'</span>])
|
||
|
0085 <span class="keyword">end</span>
|
||
|
0086 <span class="keyword">case</span> 3
|
||
|
0087 <span class="keyword">if</span> NumberOfTYPEfiles>1
|
||
|
0088 NumberOfPeriodsPerTYPEfiles = ceil( TYPEsize(2)/NumberOfTYPEfiles );
|
||
|
0089 reste = TYPEsize(2)-NumberOfPeriodsPerTYPEfiles*(NumberOfTYPEfiles-1);
|
||
|
0090 idx = 0;
|
||
|
0091 jdx = 0;
|
||
|
0092 <span class="keyword">for</span> f1=1:NumberOfTYPEfiles-1
|
||
|
0093 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = zeros(TYPEsize(1),NumberOfPeriodsPerTYPEfiles,B);'</span>])
|
||
|
0094 <span class="keyword">for</span> f2 = 1:NumberOfTYPEfiles
|
||
|
0095 load([MhDirectoryName M_.fname <span class="string">'_'</span> type int2str(f2)]);
|
||
|
0096 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">'(:,:,idx+1:idx+size(stock_ '</span> type <span class="string">',3))=stock_'</span> type <span class="string">'(:,jdx+1:jdx+NumberOfPeriodsPerTYPEfiles,:);'</span>])
|
||
|
0097 eval([<span class="string">'idx = idx + size(stock_'</span> type <span class="string">',3);'</span>])
|
||
|
0098 <span class="keyword">end</span>
|
||
|
0099 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = sort(STOCK_'</span> CAPtype <span class="string">',3);'</span>])
|
||
|
0100 save([MhDirectoryName M_.fname <span class="string">'_'</span> CAPtype <span class="string">'s'</span> int2str(f1)],[<span class="string">'STOCK_'</span> CAPtype]);
|
||
|
0101 jdx = jdx + NumberOfPeriodsPerTYPEfiles;
|
||
|
0102 idx = 0;
|
||
|
0103 <span class="keyword">end</span>
|
||
|
0104 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = zeros(TYPEsize(1),reste,B);'</span>])
|
||
|
0105 <span class="keyword">for</span> f2 = 1:NumberOfTYPEfiles
|
||
|
0106 load([MhDirectoryName M_.fname <span class="string">'_'</span> type int2str(f2)]);
|
||
|
0107 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">'(:,:,idx+1:idx+size(stock_'</span> type <span class="string">',3))=stock_'</span> type <span class="string">'(:,jdx+1:jdx+reste,:);'</span>])
|
||
|
0108 eval([<span class="string">'idx = idx + size(stock_'</span> type <span class="string">',3);'</span>])
|
||
|
0109 <span class="keyword">end</span>
|
||
|
0110 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = sort(STOCK_'</span> CAPtype <span class="string">',3);'</span>])
|
||
|
0111 save([MhDirectoryName M_.fname <span class="string">'_'</span> CAPtype <span class="string">'s'</span> int2str(NumberOfTYPEfiles)],[<span class="string">'STOCK_'</span> CAPtype]);
|
||
|
0112 <span class="keyword">else</span>
|
||
|
0113 load([MhDirectoryName M_.fname <span class="string">'_'</span> type <span class="string">'1'</span>]);
|
||
|
0114 eval([<span class="string">'STOCK_'</span> CAPtype <span class="string">' = sort(stock_'</span> type <span class="string">',3);'</span>])
|
||
|
0115 save([MhDirectoryName M_.fname <span class="string">'_'</span> CAPtype <span class="string">'s'</span> int2str(1)],[<span class="string">'STOCK_'</span> CAPtype ]);
|
||
|
0116 <span class="keyword">end</span>
|
||
|
0117 <span class="keyword">for</span> file = 1:NumberOfTYPEfiles
|
||
|
0118 delete([MhDirectoryName M_.fname <span class="string">'_'</span> type int2str(file) <span class="string">'.mat'</span>])
|
||
|
0119 <span class="keyword">end</span>
|
||
|
0120 <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>
|