eliminated obsolete commented lines;
parent
9791d3adda
commit
a5559bb016
|
@ -304,154 +304,6 @@ if iload <=0,
|
|||
end
|
||||
end
|
||||
|
||||
% set_all_parameters(params);
|
||||
% [A,B,ys,info]=dynare_resolve;
|
||||
%
|
||||
%
|
||||
% if info(1)==0,
|
||||
% oo0=oo_;
|
||||
% tau=[oo_.dr.ys(oo_.dr.order_var); vec(A); dyn_vech(B*M_.Sigma_e*B')];
|
||||
% yy0=oo_.dr.ys(I);
|
||||
% [residual, g1 ] = feval([M_.fname,'_dynamic'],yy0, ...
|
||||
% oo_.exo_steady_state', M_.params, ...
|
||||
% oo_.dr.ys, 1);
|
||||
%
|
||||
% iteration = iteration + 1;
|
||||
% run_index = run_index + 1;
|
||||
%
|
||||
% if iteration,
|
||||
% [JJ, H, gam, gp, dA, dOm, dYss] = getJJ(A, B, M_,oo0,options_,0,indx,indexo,bayestopt_.mf2,nlags,useautocorr);
|
||||
% derivatives_info.DT=dA;
|
||||
% derivatives_info.DOm=dOm;
|
||||
% derivatives_info.DYss=dYss;
|
||||
% if iteration==1,
|
||||
% indJJ = (find(max(abs(JJ'))>1.e-8));
|
||||
% indH = (find(max(abs(H'))>1.e-8));
|
||||
% indLRE = (find(max(abs(gp'))>1.e-8));
|
||||
% TAU = zeros(length(indH),SampleSize);
|
||||
% GAM = zeros(length(indJJ),SampleSize);
|
||||
% LRE = zeros(length(indLRE),SampleSize);
|
||||
% MAX_tau = min(SampleSize,ceil(MaxNumberOfBytes/(length(indH)*nparam)/8));
|
||||
% MAX_gam = min(SampleSize,ceil(MaxNumberOfBytes/(length(indJJ)*nparam)/8));
|
||||
% stoH = zeros([length(indH),nparam,MAX_tau]);
|
||||
% stoJJ = zeros([length(indJJ),nparam,MAX_tau]);
|
||||
% delete([IdentifDirectoryName '/' M_.fname '_identif_*.mat'])
|
||||
% end
|
||||
% TAU(:,iteration)=tau(indH);
|
||||
% vg1 = [oo_.dr.ys(oo_.dr.order_var); vec(g1)];
|
||||
% LRE(:,iteration)=vg1(indLRE);
|
||||
% GAM(:,iteration)=gam(indJJ);
|
||||
% stoLRE(:,:,run_index) = gp(indLRE,:);
|
||||
% stoH(:,:,run_index) = H(indH,:);
|
||||
% stoJJ(:,:,run_index) = JJ(indJJ,:);
|
||||
% % use prior uncertainty
|
||||
% siJ = (JJ(indJJ,:));
|
||||
% siH = (H(indH,:));
|
||||
%
|
||||
% siLRE = (gp(indLRE,:));
|
||||
% pdraws(iteration,:) = params;
|
||||
% normH = max(abs(stoH(:,:,run_index))')';
|
||||
% normJ = max(abs(stoJJ(:,:,run_index))')';
|
||||
% normLRE = max(abs(stoLRE(:,:,run_index))')';
|
||||
% [idemodel.Mco(:,iteration), idemoments.Mco(:,iteration), idelre.Mco(:,iteration), ...
|
||||
% idemodel.Pco(:,:,iteration), idemoments.Pco(:,:,iteration), idelre.Pco(:,:,iteration), ...
|
||||
% idemodel.cond(iteration), idemoments.cond(iteration), idelre.cond(iteration), ...
|
||||
% idemodel.ee(:,:,iteration), idemoments.ee(:,:,iteration), idelre.ee(:,:,iteration), ...
|
||||
% idemodel.ind(:,iteration), idemoments.ind(:,iteration), ...
|
||||
% idemodel.indno{iteration}, idemoments.indno{iteration}, ...
|
||||
% idemodel.ino(iteration), idemoments.ino(iteration)] = ...
|
||||
% identification_checks(H(indH,:)./normH(:,ones(nparam,1)),JJ(indJJ,:)./normJ(:,ones(nparam,1)), gp(indLRE,:)./normLRE(:,ones(size(gp,2),1)));
|
||||
% % identification_checks(H(indH,:),JJ(indJJ,:), gp(indLRE,:), bayestopt_);
|
||||
% indok = find(max(idemoments.indno{iteration},[],1)==0);
|
||||
% if iteration ==1,
|
||||
% ide_strength_J=NaN(1,nparam);
|
||||
% ide_strength_J_prior=NaN(1,nparam);
|
||||
% end
|
||||
% if iteration ==1 && advanced,
|
||||
% [pars, cosnJ] = ident_bruteforce(JJ(indJJ,:)./normJ(:,ones(nparam,1)),max_dim_cova_group,options_.TeX,name_tex);
|
||||
% end
|
||||
% if iteration ==1 && ~isempty(indok),
|
||||
% normaliz = abs(params);
|
||||
% if prior_exist,
|
||||
% if ~isempty(estim_params_.var_exo),
|
||||
% normaliz1 = estim_params_.var_exo(:,7); % normalize with prior standard deviation
|
||||
% else
|
||||
% normaliz1=[];
|
||||
% end
|
||||
% if ~isempty(estim_params_.param_vals),
|
||||
% normaliz1 = [normaliz1; estim_params_.param_vals(:,7)]'; % normalize with prior standard deviation
|
||||
% end
|
||||
% % normaliz = max([normaliz; normaliz1]);
|
||||
% normaliz1(isinf(normaliz1)) = 1;
|
||||
%
|
||||
% else
|
||||
% normaliz1 = ones(1,nparam);
|
||||
% end
|
||||
% replic = max([replic, length(indJJ)*3]);
|
||||
% try,
|
||||
% options_.irf = 0;
|
||||
% options_.noprint = 1;
|
||||
% options_.order = 1;
|
||||
% options_.periods = data_info.gend+100;
|
||||
% info = stoch_simul(options_.varobs);
|
||||
% datax=oo_.endo_simul(options_.varobs_id,100+1:end);
|
||||
% % datax=data;
|
||||
% derivatives_info.no_DLIK=1;
|
||||
% [fval,cost_flag,ys,trend_coeff,info,DLIK,AHess] = DsgeLikelihood(params',data_info.gend,datax,data_info.data_index,data_info.number_of_observations,data_info.no_more_missing_observations,derivatives_info);
|
||||
% cparam = inv(-AHess);
|
||||
% normaliz(indok) = sqrt(diag(cparam))';
|
||||
% cmm = siJ*((-AHess)\siJ');
|
||||
% flag_score=1;
|
||||
% catch,
|
||||
% cmm = simulated_moment_uncertainty(indJJ, periods, replic);
|
||||
% % Jinv=(siJ(:,indok)'*siJ(:,indok))\siJ(:,indok)';
|
||||
% % MIM=inv(Jinv*cmm*Jinv');
|
||||
% MIM=siJ(:,indok)'*(cmm\siJ(:,indok));
|
||||
% deltaM = sqrt(diag(MIM));
|
||||
% tildaM = MIM./((deltaM)*(deltaM'));
|
||||
% rhoM=sqrt(1-1./diag(inv(tildaM)));
|
||||
% deltaM = deltaM.*normaliz(indok)';
|
||||
% normaliz(indok) = sqrt(diag(inv(MIM)))';
|
||||
% flag_score=0;
|
||||
% end
|
||||
% ide_strength_J(indok) = (1./(normaliz(indok)'./abs(params(indok)')));
|
||||
% ide_strength_J_prior(indok) = (1./(normaliz(indok)'./normaliz1(indok)'));
|
||||
% ide_strength_J(params==0)=ide_strength_J_prior(params==0);
|
||||
% quant = siJ./repmat(sqrt(diag(cmm)),1,nparam);
|
||||
% siJnorm(iteration,:) = vnorm(quant).*normaliz;
|
||||
% % siJnorm(iteration,:) = vnorm(siJ(inok,:)).*normaliz;
|
||||
% quant=[];
|
||||
% inok = find((abs(TAU(:,iteration))<1.e-8));
|
||||
% isok = find((abs(TAU(:,iteration))));
|
||||
% quant(isok,:) = siH(isok,:)./repmat(TAU(isok,iteration),1,nparam);
|
||||
% quant(inok,:) = siH(inok,:)./repmat(mean(abs(TAU(:,iteration))),length(inok),nparam);
|
||||
% siHnorm(iteration,:) = vnorm(quant).*normaliz;
|
||||
% % siHnorm(iteration,:) = vnorm(siH./repmat(TAU(:,iteration),1,nparam)).*normaliz;
|
||||
% quant=[];
|
||||
% inok = find((abs(LRE(:,iteration))<1.e-8));
|
||||
% isok = find((abs(LRE(:,iteration))));
|
||||
% quant(isok,:) = siLRE(isok,:)./repmat(LRE(isok,iteration),1,np);
|
||||
% quant(inok,:) = siLRE(inok,:)./repmat(mean(abs(LRE(:,iteration))),length(inok),np);
|
||||
% siLREnorm(iteration,:) = vnorm(quant).*normaliz(offset+1:end);
|
||||
% % siLREnorm(iteration,:) = vnorm(siLRE./repmat(LRE(:,iteration),1,nparam-offset)).*normaliz(offset+1:end);
|
||||
% end,
|
||||
% if run_index==MAX_tau || iteration==SampleSize,
|
||||
% file_index = file_index + 1;
|
||||
% if run_index<MAX_tau,
|
||||
% stoH = stoH(:,:,1:run_index);
|
||||
% stoJJ = stoJJ(:,:,1:run_index);
|
||||
% stoLRE = stoLRE(:,:,1:run_index);
|
||||
% end
|
||||
% save([IdentifDirectoryName '/' M_.fname '_identif_' int2str(file_index) '.mat'], 'stoH', 'stoJJ', 'stoLRE')
|
||||
% run_index = 0;
|
||||
%
|
||||
% end
|
||||
%
|
||||
% if SampleSize > 1,
|
||||
% waitbar(iteration/SampleSize,h,['MC Identification checks ',int2str(iteration),'/',int2str(SampleSize)])
|
||||
% end
|
||||
% end
|
||||
% end
|
||||
end
|
||||
|
||||
|
||||
|
@ -534,213 +386,6 @@ if SampleSize > 1,
|
|||
end
|
||||
end
|
||||
end
|
||||
% if prior_exist,
|
||||
% tittxt = 'Prior mean - ';
|
||||
% else
|
||||
% tittxt = '';
|
||||
% end
|
||||
% figure('Name',[tittxt, 'Identification using info from observables']),
|
||||
% subplot(211)
|
||||
% mmm = (idehess_prior.ide_strength_J);
|
||||
% [ss, is] = sort(mmm);
|
||||
% bar(log([idehess_prior.ide_strength_J(:,is)' idehess_prior.ide_strength_J_prior(:,is)']))
|
||||
% set(gca,'xlim',[0 nparam+1])
|
||||
% set(gca,'xticklabel','')
|
||||
% dy = get(gca,'ylim');
|
||||
% for ip=1:nparam,
|
||||
% text(ip,dy(1),name{is(ip)},'rotation',90,'HorizontalAlignment','right','interpreter','none')
|
||||
% end
|
||||
% legend('relative to param value','relative to prior std','Location','Best')
|
||||
% if idehess_prior.flag_score,
|
||||
% title('Identification strength in the asymptotic Information matrix (log-scale)')
|
||||
% else
|
||||
% title('Identification strength in the moments (log-scale)')
|
||||
% end
|
||||
% subplot(212)
|
||||
%
|
||||
% if SampleSize > 1,
|
||||
% mmm = mean(siJnorm)';
|
||||
% mmm = [idemoments_prior.siJnorm'./max(idemoments_prior.siJnorm') mmm./max(mmm)];
|
||||
% else
|
||||
% mmm = (siJnorm)'./max(siJnorm);
|
||||
% end
|
||||
% bar(mmm(is,:))
|
||||
% set(gca,'xlim',[0 nparam+1])
|
||||
% set(gca,'xticklabel','')
|
||||
% dy = get(gca,'ylim');
|
||||
% for ip=1:nparam,
|
||||
% text(ip,dy(1),name{is(ip)},'rotation',90,'HorizontalAlignment','right','interpreter','none')
|
||||
% end
|
||||
% if SampleSize > 1,
|
||||
% legend('Prior mean','MC average','Location','Best')
|
||||
% end
|
||||
% title('Sensitivity in the moments')
|
||||
%
|
||||
% if advanced,
|
||||
% figure('Name','Identification in the model'),
|
||||
% subplot(211)
|
||||
% if SampleSize > 1,
|
||||
% mmm = mean(siLREnorm);
|
||||
% else
|
||||
% mmm = (siLREnorm);
|
||||
% end
|
||||
% mmm = [NaN(1, offset), mmm];
|
||||
% bar(mmm(is))
|
||||
% set(gca,'xticklabel','')
|
||||
% for ip=1:nparam,
|
||||
% text(ip,dy(1),name{is(ip)},'rotation',90,'HorizontalAlignment','right','interpreter','none')
|
||||
% end
|
||||
% title('Sensitivity in the LRE model')
|
||||
%
|
||||
% subplot(212)
|
||||
% if SampleSize>1,
|
||||
% mmm = mean(siHnorm);
|
||||
% else
|
||||
% mmm = (siHnorm);
|
||||
% end
|
||||
% bar(mmm(is))
|
||||
% set(gca,'xticklabel','')
|
||||
% dy = get(gca,'ylim');
|
||||
% for ip=1:nparam,
|
||||
% text(ip,dy(1),name{is(ip)},'rotation',90,'HorizontalAlignment','right','interpreter','none')
|
||||
% end
|
||||
% title('Sensitivity in the model')
|
||||
%
|
||||
% if options_.nograph, close(gcf); end
|
||||
%
|
||||
% % identificaton patterns
|
||||
% for j=1:size(idemoments_prior.cosnJ,2),
|
||||
% pax=NaN(nparam,nparam);
|
||||
% fprintf('\n\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,
|
||||
% dumpindx = idemoments_prior.pars{i,j}(in);
|
||||
% if isnan(dumpindx),
|
||||
% namx=[namx ' ' sprintf('%-15s','--')];
|
||||
% else
|
||||
% namx=[namx ' ' sprintf('%-15s',name{dumpindx})];
|
||||
% pax(i,dumpindx)=idemoments_prior.cosnJ(i,j);
|
||||
% end
|
||||
% end
|
||||
% fprintf('%-15s [%s] %10.3f\n',name{i},namx,idemoments_prior.cosnJ(i,j))
|
||||
% end
|
||||
% figure('name',['Collinearity patterns with ', int2str(j) ,' parameter(s)']),
|
||||
% imagesc(pax,[0 1]);
|
||||
% set(gca,'xticklabel','')
|
||||
% set(gca,'yticklabel','')
|
||||
% for ip=1:nparam,
|
||||
% text(ip,(0.5),name{ip},'rotation',90,'HorizontalAlignment','left','interpreter','none')
|
||||
% text(0.5,ip,name{ip},'rotation',0,'HorizontalAlignment','right','interpreter','none')
|
||||
% end
|
||||
% colorbar;
|
||||
% ax=colormap;
|
||||
% ax(1,:)=[0.9 0.9 0.9];
|
||||
% colormap(ax);
|
||||
% if nparam>10,
|
||||
% set(gca,'xtick',(5:5:nparam))
|
||||
% set(gca,'ytick',(5:5:nparam))
|
||||
% end
|
||||
% set(gca,'xgrid','on')
|
||||
% set(gca,'ygrid','on')
|
||||
% saveas(gcf,[IdentifDirectoryName,'/',M_.fname,'_ident_collinearity_', int2str(j)])
|
||||
% eval(['print -depsc2 ' IdentifDirectoryName '/' M_.fname '_ident_collinearity_', int2str(j)]);
|
||||
% eval(['print -dpdf ' IdentifDirectoryName '/' M_.fname '_ident_collinearity_', int2str(j)]);
|
||||
% if options_.nograph, close(gcf); end
|
||||
% end
|
||||
% disp('')
|
||||
% if idehess_prior.flag_score,
|
||||
% [U,S,V]=svd(idehess_prior.AHess,0);
|
||||
% if nparam<5,
|
||||
% f1 = figure('name','Identification patterns (Information matrix)');
|
||||
% else
|
||||
% f1 = figure('name','Identification patterns (Information matrix): SMALLEST SV');
|
||||
% f2 = figure('name','Identification patterns (Information matrix): HIGHEST SV');
|
||||
% end
|
||||
% else
|
||||
% [U,S,V]=svd(siJ./normJ(:,ones(nparam,1)),0);
|
||||
% if nparam<5,
|
||||
% f1 = figure('name','Identification patterns (moments)');
|
||||
% else
|
||||
% f1 = figure('name','Identification patterns (moments): SMALLEST SV');
|
||||
% f2 = figure('name','Identification patterns (moments): HIGHEST SV');
|
||||
% end
|
||||
% end
|
||||
% for j=1:min(nparam,8),
|
||||
% if j<5,
|
||||
% figure(f1),
|
||||
% jj=j;
|
||||
% else
|
||||
% figure(f2),
|
||||
% jj=j-4;
|
||||
% end
|
||||
% subplot(4,1,jj),
|
||||
% if j<5
|
||||
% bar(abs(V(:,end-j+1))),
|
||||
% Stit = S(end-j+1,end-j+1);
|
||||
% else
|
||||
% bar(abs(V(:,jj))),
|
||||
% Stit = S(jj,jj);
|
||||
% end
|
||||
% set(gca,'xticklabel','')
|
||||
% if j==4 || j==nparam || j==8,
|
||||
% for ip=1:nparam,
|
||||
% text(ip,-0.02,name{ip},'rotation',90,'HorizontalAlignment','right','interpreter','none')
|
||||
% end
|
||||
% end
|
||||
% title(['Singular value ',num2str(Stit)])
|
||||
% end
|
||||
% figure(f1);
|
||||
% saveas(f1,[IdentifDirectoryName,'/',M_.fname,'_ident_pattern_1'])
|
||||
% eval(['print -depsc2 ' IdentifDirectoryName '/' M_.fname '_ident_pattern_1']);
|
||||
% eval(['print -dpdf ' IdentifDirectoryName '/' M_.fname '_ident_pattern_1']);
|
||||
% if nparam>4,
|
||||
% figure(f2),
|
||||
% saveas(f2,[IdentifDirectoryName,'/',M_.fname,'_ident_pattern_2'])
|
||||
% eval(['print -depsc2 ' IdentifDirectoryName '/' M_.fname '_ident_pattern_2']);
|
||||
% eval(['print -dpdf ' IdentifDirectoryName '/' M_.fname '_ident_pattern_2']);
|
||||
% end
|
||||
%
|
||||
% if SampleSize>1,
|
||||
% options_.nograph=1;
|
||||
% figure('Name','Condition Number'),
|
||||
% subplot(221)
|
||||
% hist(log10(idemodel.cond))
|
||||
% title('log10 of Condition number in the model')
|
||||
% subplot(222)
|
||||
% hist(log10(idemoments.cond))
|
||||
% title('log10 of Condition number in the moments')
|
||||
% subplot(223)
|
||||
% hist(log10(idelre.cond))
|
||||
% title('log10 of Condition number in the LRE model')
|
||||
% saveas(gcf,[IdentifDirectoryName,'/',M_.fname,'_ident_COND'])
|
||||
% eval(['print -depsc2 ' IdentifDirectoryName '/' M_.fname '_ident_COND']);
|
||||
% eval(['print -dpdf ' IdentifDirectoryName '/' M_.fname '_ident_COND']);
|
||||
% if options_.nograph, close(gcf); end
|
||||
% ncut=floor(SampleSize/10*9);
|
||||
% [~,is]=sort(idelre.cond);
|
||||
% [proba, dproba] = stab_map_1(pdraws, is(1:ncut), is(ncut+1:end), 'HighestCondNumberLRE', 1, [], IdentifDirectoryName);
|
||||
% [~,is]=sort(idemodel.cond);
|
||||
% [proba, dproba] = stab_map_1(pdraws, is(1:ncut), is(ncut+1:end), 'HighestCondNumberModel', 1, [], IdentifDirectoryName);
|
||||
% [~,is]=sort(idemoments.cond);
|
||||
% [proba, dproba] = stab_map_1(pdraws, is(1:ncut), is(ncut+1:end), 'HighestCondNumberMoments', 1, [], IdentifDirectoryName);
|
||||
% % [proba, dproba] = stab_map_1(idemoments.Mco', is(1:ncut), is(ncut+1:end), 'HighestCondNumberMoments_vs_Mco', 1, [], IdentifDirectoryName);
|
||||
% for j=1:nparam,
|
||||
% % ibeh=find(idemoments.Mco(j,:)<0.9);
|
||||
% % inonbeh=find(idemoments.Mco(j,:)>=0.9);
|
||||
% % if ~isempty(ibeh) && ~isempty(inonbeh)
|
||||
% % [proba, dproba] = stab_map_1(pdraws, ibeh, inonbeh, ['HighestMultiCollinearity_',name{j}], 1, [], IdentifDirectoryName);
|
||||
% % end
|
||||
% [~,is]=sort(idemoments.Mco(:,j));
|
||||
% [proba, dproba] = stab_map_1(pdraws, is(1:ncut), is(ncut+1:end), ['HighestMultiCollinearity_',name{j}], 1, [], IdentifDirectoryName);
|
||||
% end
|
||||
% end
|
||||
%
|
||||
%
|
||||
% end
|
||||
|
||||
|
||||
if exist('OCTAVE_VERSION')
|
||||
warning('on'),
|
||||
|
|
Loading…
Reference in New Issue