Replace eval-command in dynare_estimation.m by direct call to fields

time-shift
Johannes Pfeifer 2014-11-11 11:42:19 +01:00 committed by Michel Juillard
parent 86cac40362
commit cb4fb6aaf1
1 changed files with 22 additions and 31 deletions

View File

@ -157,46 +157,37 @@ if nnobs > 1 && horizon > 0
vname = deblank(var_list(i,:));
for j=1:nnobs
if mh_replic > 0
eval(['oo_.RecursiveForecast.Mean.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.MeanForecast.Mean.' ...
vname '(1:end);']);
eval(['oo_.RecursiveForecast.HPDinf.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.MeanForecast.HPDinf.' ...
vname '(1:end);']);
eval(['oo_.RecursiveForecast.HPDsup.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.MeanForecast.HPDsup.' ...
vname '(1:end);']);
eval(['oo_.RecursiveForecast.HPDTotalinf.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.PointForecast.HPDinf.' ...
vname '(1:end);']);
eval(['oo_.RecursiveForecast.HPDTotalsup.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.PointForecast.HPDsup.' ...
vname '(1:end);']);
oo_.RecursiveForecast.Mean.(vname)(j,:) = ...
oo_recursive_{nobs(j)}.MeanForecast.Mean.(vname);
oo_.RecursiveForecast.HPDinf.(vname)(j,:) = ...
oo_recursive_{nobs(j)}.MeanForecast.HPDinf.(vname);
oo_.RecursiveForecast.HPDsup.(vname)(j,:) = ...
oo_recursive_{nobs(j)}.MeanForecast.HPDsup.(vname);
oo_.RecursiveForecast.HPDTotalinf.(vname)(j,:) = ...
oo_recursive_{nobs(j)}.PointForecast.HPDinf.(vname);
oo_.RecursiveForecast.HPDTotalsup.(vname)(j,:) = ...
oo_recursive_{nobs(j)}.PointForecast.HPDsup.(vname);
else
eval(['oo_.RecursiveForecast.Mean.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.forecast.Mean.' ...
vname ';']);
eval(['oo_.RecursiveForecast.HPDinf.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.forecast.HPDinf.' ...
vname ';']);
eval(['oo_.RecursiveForecast.HPDsup.' vname '(j,:) =' ...
'oo_recursive_{' int2str(nobs(j)) '}.forecast.HPDsup.' ...
vname ';']);
end
oo_.RecursiveForecast.Mean.(vname)(j,:) =...
oo_recursive_{nobs(j)}.forecast.Mean.(vname);
oo_.RecursiveForecast.HPDinf.(vname)(j,:) =...
oo_recursive_{nobs(j)}.forecast.HPDinf.(vname);
oo_.RecursiveForecast.HPDsup.(vname)(j,:) =...
oo_recursive_{nobs(j)}.forecast.HPDsup.(vname);
end
x = nobs(1)+nobs(j)-nobs(1)+(1:horizon);
y = eval(['oo_.RecursiveForecast.Mean.' vname '(j,:)']);
y1 = eval(['oo_.RecursiveForecast.HPDinf.' vname '(j,:)']);
y2 = eval(['oo_.RecursiveForecast.HPDsup.' vname '(j,:)']);
y = oo_.RecursiveForecast.Mean.(vname)(j,:);
y1 = oo_.RecursiveForecast.HPDinf.(vname)(j,:);
y2 = oo_.RecursiveForecast.HPDsup.(vname)(j,:);
plot(x,y,'-b','linewidth',2)
plot(x,y1,'--g', ...
'linewidth',1.5)
plot(x,y2,'--g', ...
'linewidth',1.5)
if mh_replic
y3 = eval(['oo_.RecursiveForecast.HPDTotalinf.' vname '(j,:)']);
y4 = eval(['oo_.RecursiveForecast.HPDTotalsup.' vname ...
'(j,:)']);
y3 = oo_.RecursiveForecast.HPDTotalinf.(vname)(j,:);
y4 = oo_.RecursiveForecast.HPDTotalsup.(vname)(j,:);
plot(x,y3,'--r', ...
'linewidth',1.5)
plot(x,y4,'--r','linewidth',1.5)