Further on nograph: moved printed output when advanced=1 from plot_identification to disp_identification.

time-shift
Marco Ratto 2012-06-15 13:45:26 +02:00
parent fd24b93667
commit 98c809c54e
3 changed files with 46 additions and 14 deletions

View File

@ -1,4 +1,4 @@
function disp_identification(pdraws, idemodel, idemoments, name)
function disp_identification(pdraws, idemodel, idemoments, name, advanced)
% Copyright (C) 2008-2011 Dynare Team
%
@ -19,6 +19,10 @@ function disp_identification(pdraws, idemodel, idemoments, name)
global options_
if nargin < 5 || isempty(advanced),
advanced=0;
end
[SampleSize, npar] = size(pdraws);
% jok = 0;
% jokP = 0;
@ -261,3 +265,27 @@ end
% end
% disp(' ')
% identificaton patterns
if SampleSize==1 && advanced,
disp(' ')
disp('Press ENTER to print advanced diagnostics'), pause(5),
for j=1:size(idemoments.cosnJ,2),
pax=NaN(npar,npar);
fprintf('\n')
disp(['Collinearity patterns with ', int2str(j) ,' parameter(s)'])
fprintf('%-15s [%-*s] %10s\n','Parameter',(15+1)*j,' Expl. params ','cosn')
for i=1:npar,
namx='';
for in=1:j,
dumpindx = idemoments.pars{i,j}(in);
if isnan(dumpindx),
namx=[namx ' ' sprintf('%-15s','--')];
else
namx=[namx ' ' sprintf('%-15s',name{dumpindx})];
pax(i,dumpindx)=idemoments.cosnJ(i,j);
end
end
fprintf('%-15s [%s] %10.3f\n',name{i},namx,idemoments.cosnJ(i,j))
end
end
end

View File

@ -266,7 +266,7 @@ if iload <=0,
% normJ = max(abs(siJ)')';
% normLRE = max(abs(siLRE)')';
save([IdentifDirectoryName '/' M_.fname '_identif.mat'], 'idehess_point', 'idemoments_point','idemodel_point', 'idelre_point','store_options_ident')
disp_identification(params, idemodel_point, idemoments_point, name);
disp_identification(params, idemodel_point, idemoments_point, name, advanced);
if ~options_.nograph,
plot_identification(params,idemoments_point,idehess_point,idemodel_point,idelre_point,advanced,parameters,name,IdentifDirectoryName);
end
@ -441,7 +441,7 @@ end
if iload,
disp(['Testing ',parameters])
disp_identification(idehess_point.params, idemodel_point, idemoments_point, name);
disp_identification(idehess_point.params, idemodel_point, idemoments_point, name,advanced);
if ~options_.nograph,
plot_identification(idehess_point.params,idemoments_point,idehess_point,idemodel_point,idelre_point,advanced,parameters,name,IdentifDirectoryName);
end
@ -467,7 +467,7 @@ if SampleSize > 1,
identification_analysis(pdraws(jmax,:),indx,indexo,options_ident,dataset_, prior_exist, name_tex,1);
save([IdentifDirectoryName '/' M_.fname '_identif.mat'], 'idehess_max', 'idemoments_max','idemodel_max', 'idelre_max', 'jmax', '-append');
end
disp_identification(pdraws(jmax,:), idemodel_max, idemoments_max, name);
disp_identification(pdraws(jmax,:), idemodel_max, idemoments_max, name,1);
close all,
if ~options_.nograph,
plot_identification(pdraws(jmax,:),idemoments_max,idehess_max,idemodel_max,idelre_max,1,tittxt,name,IdentifDirectoryName);
@ -482,7 +482,7 @@ if SampleSize > 1,
identification_analysis(pdraws(jmin,:),indx,indexo,options_ident,dataset_, prior_exist, name_tex,1);
save([IdentifDirectoryName '/' M_.fname '_identif.mat'], 'idehess_min', 'idemoments_min','idemodel_min', 'idelre_min', 'jmin', '-append');
end
disp_identification(pdraws(jmin,:), idemodel_min, idemoments_min, name);
disp_identification(pdraws(jmin,:), idemodel_min, idemoments_min, name,1);
close all,
if ~options_.nograph,
plot_identification(pdraws(jmin,:),idemoments_min,idehess_min,idemodel_min,idelre_min,1,tittxt,name,IdentifDirectoryName);
@ -496,7 +496,7 @@ if SampleSize > 1,
[idehess_(j), idemoments_(j), idemodel_(j), idelre_(j), derivatives_info_(j)] = ...
identification_analysis(pdraws(jcrit(j),:),indx,indexo,options_ident,dataset_, prior_exist, name_tex,1);
end
disp_identification(pdraws(jcrit(j),:), idemodel_(j), idemoments_(j), name);
disp_identification(pdraws(jcrit(j),:), idemodel_(j), idemoments_(j), name,1);
close all,
if ~options_.nograph,
plot_identification(pdraws(jcrit(j),:),idemoments_(j),idehess_(j),idemodel_(j),idelre_(j),1,tittxt,name,IdentifDirectoryName);

View File

@ -87,8 +87,10 @@ if SampleSize == 1,
dyn_saveas(hh,[IdentifDirectoryName '/' M_.fname '_ident_strength_' tittxt1],options_);
if advanced,
disp(' ')
disp('Press ENTER to display advanced diagnostics'), pause(5),
if ~options_.nodisplay,
disp(' ')
disp('Press ENTER to plot advanced diagnostics'), pause(5),
end
hh = dyn_figure(options_,'Name',[tittxt, ' - Sensitivity plot']);
subplot(211)
mmm = (siJnorm)'./max(siJnorm);
@ -112,9 +114,9 @@ if SampleSize == 1,
% identificaton patterns
for j=1:size(idemoments.cosnJ,2),
pax=NaN(nparam,nparam);
fprintf('\n')
disp(['Collinearity patterns with ', int2str(j) ,' parameter(s)'])
fprintf('%-15s [%-*s] %10s\n','Parameter',(15+1)*j,' Expl. params ','cosn')
% fprintf('\n')
% disp(['Collinearity patterns with ', int2str(j) ,' parameter(s)'])
% fprintf('%-15s [%-*s] %10s\n','Parameter',(15+1)*j,' Expl. params ','cosn')
for i=1:nparam,
namx='';
for in=1:j,
@ -126,7 +128,7 @@ if SampleSize == 1,
pax(i,dumpindx)=idemoments.cosnJ(i,j);
end
end
fprintf('%-15s [%s] %10.3f\n',name{i},namx,idemoments.cosnJ(i,j))
% fprintf('%-15s [%s] %10.3f\n',name{i},namx,idemoments.cosnJ(i,j))
end
hh = dyn_figure(options_,'Name',[tittxt,' - Collinearity patterns with ', int2str(j) ,' parameter(s)']);
imagesc(pax,[0 1]);
@ -228,8 +230,10 @@ else
title('MC mean of sensitivity measures')
dyn_saveas(hh,[ IdentifDirectoryName '/' M_.fname '_MC_sensitivity' ],options_);
if advanced,
disp(' ')
disp('Press ENTER to display advanced diagnostics'), pause(5),
if ~options_.nodisplay,
disp(' ')
disp('Press ENTER to display advanced diagnostics'), pause(5),
end
% options_.nograph=1;
hh = dyn_figure(options_,'Name','MC Condition Number');
subplot(221)