Cosmetic changes. Use skipline() instead of disp(' ').
parent
184c403375
commit
4052d4ccaf
|
@ -67,4 +67,4 @@ fprintf('MH: Total number of generated MH files: %d.\n',TotalNumberOfMhFiles);
|
|||
fprintf('MH: I''ll use mh-files %d to %d.\n',FirstMhFile,TotalNumberOfMhFiles);
|
||||
fprintf('MH: In MH-file number %d I''ll start at line %d.\n',FirstMhFile,FirstLine);
|
||||
fprintf('MH: Finally I keep %d draws.\n',TotalNumberOfMhDraws-FirstDraw);
|
||||
disp(' ');
|
||||
skipline()
|
||||
|
|
|
@ -62,7 +62,10 @@ header_width = row_header_width(M_,estim_params_,bayestopt_);
|
|||
tit2 = sprintf('%-*s %10s %10s %16s %6s %10s\n',header_width+2,' ','prior mean','post. mean','conf. interval','prior','pstdev');
|
||||
pformat = '%-*s %10.3f %10.4f %10.4f %8.4f %6s %10.4f';
|
||||
|
||||
disp(' ');disp(' ');disp('ESTIMATION RESULTS');disp(' ');
|
||||
skipline(2)
|
||||
disp('ESTIMATION RESULTS')
|
||||
skipline()
|
||||
|
||||
try
|
||||
disp(sprintf('Log data density is %f.',oo_.MarginalDensity.ModifiedHarmonicMean))
|
||||
catch
|
||||
|
@ -74,7 +77,7 @@ if np
|
|||
if TeX
|
||||
fid = TeXBegin(OutputDirectoryName,M_.fname,1,type);
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(type)
|
||||
disp(tit2)
|
||||
ip = nvx+nvn+ncx+ncn+1;
|
||||
|
@ -120,7 +123,7 @@ if nvx
|
|||
fid = TeXBegin(OutputDirectoryName,M_.fname,2,'standard deviation of structural shocks');
|
||||
end
|
||||
ip = 1;
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('standard deviation of shocks')
|
||||
disp(tit2)
|
||||
for i=1:nvx
|
||||
|
@ -165,7 +168,7 @@ if nvn
|
|||
if TeX
|
||||
fid = TeXBegin(OutputDirectoryName,M_.fname,3,'standard deviation of measurement errors');
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('standard deviation of measurement errors')
|
||||
disp(tit2)
|
||||
ip = nvx+1;
|
||||
|
@ -207,7 +210,7 @@ if ncx
|
|||
if TeX
|
||||
fid = TeXBegin(OutputDirectoryName,M_.fname,4,'correlation of structural shocks');
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('correlation of shocks')
|
||||
disp(tit2)
|
||||
ip = nvx+nvn+1;
|
||||
|
@ -261,7 +264,7 @@ if ncn
|
|||
if TeX
|
||||
fid = TeXBegin(OutputDirectoryName,M_.fname,5,'correlation of measurement errors');
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('correlation of measurement errors')
|
||||
disp(tit2)
|
||||
ip = nvx+nvn+ncx+1;
|
||||
|
|
|
@ -131,7 +131,7 @@ else
|
|||
end
|
||||
|
||||
UDIAG(:,[2 4 6],:) = UDIAG(:,[2 4 6],:)/nblck;
|
||||
disp(' ')
|
||||
skipline()
|
||||
clear pmet temp moyenne CSUP CINF csup cinf n linea iter tmp;
|
||||
pages = floor(npar/3);
|
||||
k = 0;
|
||||
|
|
|
@ -39,10 +39,10 @@ for nlags = 1:maxnlags
|
|||
|
||||
log_dnsty = posterior_int - prior_int - 0.5*ny*lik_nobs*log(2*pi);
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
fprintf('The marginal log density of the BVAR(%g) model is equal to %10.4f\n', ...
|
||||
nlags, log_dnsty);
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
|
||||
|
|
|
@ -94,10 +94,10 @@ while d <= options_.bvar_replic
|
|||
end
|
||||
|
||||
if p > 0
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['Some of the VAR models sampled from the posterior distribution'])
|
||||
disp(['were found to be explosive (' num2str(p/options_.bvar_replic) ' percent).'])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
% Plot graphs
|
||||
|
|
|
@ -92,10 +92,10 @@ for draw=1:options_.bvar_replic
|
|||
end
|
||||
|
||||
if p > 0
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['Some of the VAR models sampled from the posterior distribution'])
|
||||
disp(['were found to be explosive (' int2str(p) ' samples).'])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
posterior_mean_irfs = mean(sampled_irfs,4);
|
||||
|
|
|
@ -96,18 +96,18 @@ if (nyf == n_explod) && (dr.full_rank)
|
|||
end
|
||||
|
||||
if options.noprint == 0
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('EIGENVALUES:')
|
||||
disp(sprintf('%16s %16s %16s\n','Modulus','Real','Imaginary'))
|
||||
z=[m_lambda real(eigenvalues_(i)) imag(eigenvalues_(i))]';
|
||||
disp(sprintf('%16.4g %16.4g %16.4g\n',z))
|
||||
disp(sprintf('\nThere are %d eigenvalue(s) larger than 1 in modulus ', n_explod));
|
||||
disp(sprintf('for %d forward-looking variable(s)',nyf));
|
||||
disp(' ')
|
||||
skipline()
|
||||
if result
|
||||
disp('The rank condition is verified.')
|
||||
else
|
||||
disp('The rank conditions ISN''T verified!')
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
|
|
@ -45,9 +45,9 @@ if options_.dsge_var && options_.bayesian_irf
|
|||
msg = 1;
|
||||
end
|
||||
if msg
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Posterior IRFs will be computed for all observed variables.')
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
end
|
||||
varlist = options_.varobs;
|
||||
|
@ -55,7 +55,7 @@ if options_.dsge_var && options_.bayesian_irf
|
|||
end
|
||||
|
||||
if isempty(varlist)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['You did not declare endogenous variables after the estimation/calib_smoother command.'])
|
||||
cas = [];
|
||||
if options_.bayesian_irf
|
||||
|
@ -99,14 +99,13 @@ if isempty(varlist)
|
|||
else
|
||||
choice = [];
|
||||
while isempty(choice)
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
disp('Choose one of the following options:')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(' [1] Consider all the endogenous variables.')
|
||||
disp(' [2] Consider all the observed endogenous variables.')
|
||||
disp(' [3] Stop Dynare and change the mod file.')
|
||||
disp(' ')
|
||||
skipline()
|
||||
choice = input('options [default is 1] = ');
|
||||
if isempty(choice)
|
||||
choice=1;
|
||||
|
@ -118,9 +117,9 @@ if isempty(varlist)
|
|||
elseif choice==3
|
||||
varlist = NaN;
|
||||
else
|
||||
disp('')
|
||||
skipline()
|
||||
disp('YOU HAVE TO ANSWER 1, 2 or 3!')
|
||||
disp('')
|
||||
skipline()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -128,7 +127,7 @@ if isempty(varlist)
|
|||
if isnan(varlist)
|
||||
edit([M_.fname '.mod'])
|
||||
end
|
||||
disp('')
|
||||
skipline()
|
||||
end
|
||||
|
||||
|
||||
|
|
|
@ -91,7 +91,7 @@ if any(idemodel.ino),
|
|||
else
|
||||
disp(['The rank of H (model) is deficient!' ]),
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
for j=1:npar,
|
||||
if any(idemodel.ind0(:,j)==0),
|
||||
pno = 100*length(find(idemodel.ind0(:,j)==0))/SampleSize;
|
||||
|
@ -106,7 +106,7 @@ if any(idemodel.ino),
|
|||
npairs=size(idemodel.jweak_pair,2);
|
||||
jmap_pair=dyn_unvech(1:npairs);
|
||||
jstore=[];
|
||||
disp(' ')
|
||||
skipline()
|
||||
for j=1:npairs,
|
||||
iweak = length(find(idemodel.jweak_pair(:,j)));
|
||||
if iweak,
|
||||
|
@ -120,7 +120,7 @@ if any(idemodel.ino),
|
|||
end
|
||||
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
for j=1:npar,
|
||||
iweak = length(find(idemodel.jweak(:,j)));
|
||||
if iweak && ~ismember(j,jstore),
|
||||
|
@ -154,11 +154,11 @@ end
|
|||
|
||||
if ~any(idemodel.ino) && ~any(any(idemodel.ind0==0))
|
||||
disp(['All parameters are identified in the model (rank of H).' ]),
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
if any(idemoments.ino),
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('WARNING !!!')
|
||||
if SampleSize > 1,
|
||||
disp(['The rank of J (moments) is deficient for ', num2str(length(find(idemoments.ino))),' out of ',int2str(SampleSize),' MC runs!' ]),
|
||||
|
@ -172,7 +172,7 @@ if any(idemoments.ino),
|
|||
% freqno = mean(indno)*100;
|
||||
% ifreq=find(freqno);
|
||||
% disp('MOMENT RANK FAILURE DUE TO COLLINEARITY OF PARAMETERS:');
|
||||
disp(' ')
|
||||
skipline()
|
||||
for j=1:npar,
|
||||
if any(idemoments.ind0(:,j)==0),
|
||||
pno = 100*length(find(idemoments.ind0(:,j)==0))/SampleSize;
|
||||
|
@ -184,7 +184,7 @@ if any(idemoments.ino),
|
|||
disp([' [dJ/d(',name{j},')=0 for all J moments!]' ])
|
||||
end
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
npairs=size(idemoments.jweak_pair,2);
|
||||
jmap_pair=dyn_unvech(1:npairs);
|
||||
jstore=[];
|
||||
|
@ -201,7 +201,7 @@ if any(idemoments.ino),
|
|||
end
|
||||
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
for j=1:npar,
|
||||
iweak = length(find(idemoments.jweak(:,j)));
|
||||
if iweak && ~ismember(j,jstore),
|
||||
|
@ -235,9 +235,9 @@ if any(idemoments.ino),
|
|||
% end
|
||||
end
|
||||
if ~any(idemoments.ino) && ~any(any(idemoments.ind0==0))
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['All parameters are identified by J moments (rank of J)' ]),
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
% if ~ options_.noprint && advanced,
|
||||
|
@ -267,7 +267,7 @@ end
|
|||
|
||||
% identificaton patterns
|
||||
if SampleSize==1 && advanced,
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Press ENTER to print advanced diagnostics'), pause(5),
|
||||
for j=1:size(idemoments.cosnJ,2),
|
||||
pax=NaN(npar,npar);
|
||||
|
|
|
@ -24,9 +24,9 @@ function disp_model_summary(M,dr)
|
|||
% You should have received a copy of the GNU General Public License
|
||||
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('MODEL SUMMARY')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp([' Number of variables: ' int2str(M.endo_nbr)])
|
||||
disp([' Number of stochastic shocks: ' int2str(M.exo_nbr)])
|
||||
disp([' Number of state variables: ' ...
|
||||
|
|
|
@ -29,9 +29,9 @@ function disp_steady_state(M,oo)
|
|||
% You should have received a copy of the GNU General Public License
|
||||
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('STEADY-STATE RESULTS:')
|
||||
disp(' ')
|
||||
skipline()
|
||||
endo_names = M.endo_names;
|
||||
steady_state = oo.steady_state;
|
||||
for i=1:M.orig_endo_nbr
|
||||
|
|
|
@ -64,7 +64,7 @@ if ~options_.noprint %options_.nomoments == 0
|
|||
lh = size(labels,2)+2;
|
||||
dyntable(title,headers,labels,z,lh,11,4);
|
||||
if M_.exo_nbr > 1 && size(stationary_vars, 1) > 0
|
||||
disp(' ')
|
||||
skipline()
|
||||
if options_.order == 2
|
||||
title='APPROXIMATED VARIANCE DECOMPOSITION (in percent)';
|
||||
else
|
||||
|
@ -91,16 +91,16 @@ if ~options_.noprint %options_.nomoments == 0
|
|||
end
|
||||
|
||||
if length(i1) == 0
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('All endogenous are constant or non stationary, not displaying correlations and auto-correlations')
|
||||
disp(' ')
|
||||
return;
|
||||
skipline()
|
||||
return
|
||||
end
|
||||
|
||||
if options_.nocorr == 0 && size(stationary_vars, 1) > 0
|
||||
corr = oo_.gamma_y{1}(i1,i1)./(sd(i1)*sd(i1)');
|
||||
if ~options_.noprint,
|
||||
disp(' ')
|
||||
skipline()
|
||||
if options_.order == 2
|
||||
title='APPROXIMATED MATRIX OF CORRELATIONS';
|
||||
else
|
||||
|
@ -122,7 +122,7 @@ if options_.ar > 0 && size(stationary_vars, 1) > 0
|
|||
z(:,i) = diag(oo_.gamma_y{i+1}(i1,i1));
|
||||
end
|
||||
if ~options_.noprint,
|
||||
disp(' ')
|
||||
skipline()
|
||||
if options_.order == 2
|
||||
title='APPROXIMATED COEFFICIENTS OF AUTOCORRELATION';
|
||||
else
|
||||
|
|
|
@ -50,10 +50,10 @@ conditional_decomposition_array = conditional_variance_decomposition(StateSpaceM
|
|||
|
||||
if options_.noprint == 0
|
||||
if options_.order == 2
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('APPROXIMATED CONDITIONAL VARIANCE DECOMPOSITION (in percent)')
|
||||
else
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('CONDITIONAL VARIANCE DECOMPOSITION (in percent)')
|
||||
end
|
||||
end
|
||||
|
|
|
@ -44,7 +44,7 @@ ncn = estim_params_.ncn; % Covariance of the measurement innovations (number of
|
|||
np = estim_params_.np ; % Number of deep parameters.
|
||||
nx = nvx+nvn+ncx+ncn+np; % Total number of parameters to be estimated.
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['RESULTS FROM ' upper(table_title) ' ESTIMATION'])
|
||||
LaTeXtitle=strrep(table_title,' ','_');
|
||||
tstath = abs(xparam1)./stdh;
|
||||
|
@ -76,7 +76,7 @@ if np
|
|||
eval(['oo_.' field_name '_std.parameters.' name ' = stdh(ip);']);
|
||||
ip = ip+1;
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
if nvx
|
||||
ip = 1;
|
||||
|
@ -98,7 +98,7 @@ if nvx
|
|||
eval(['oo_.' field_name '_std.shocks_std.' name ' = stdh(ip);']);
|
||||
ip = ip+1;
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
if nvn
|
||||
disp('standard deviation of measurement errors')
|
||||
|
@ -119,7 +119,7 @@ if nvx
|
|||
eval(['oo_.' field_name '_std.measurement_errors_std.' name ' = stdh(ip);']);
|
||||
ip = ip+1;
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
if ncx
|
||||
|
@ -144,7 +144,7 @@ if ncx
|
|||
eval(['oo_.' field_name '_std.shocks_corr.' NAME ' = stdh(ip);']);
|
||||
ip = ip+1;
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
if ncn
|
||||
|
@ -167,7 +167,7 @@ if ncn
|
|||
eval(['oo_.' field_name '_std.measurement_errors_corr.' NAME ' = stdh(ip);']);
|
||||
ip = ip+1;
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
OutputDirectoryName = CheckPath('Output',M_.dname);
|
||||
|
|
|
@ -34,11 +34,11 @@ function dynare(fname, varargin)
|
|||
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
if strcmpi(fname,'help')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['This is dynare version ' dynare_version() '.'])
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('USAGE: dynare FILENAME[.mod,.dyn] [OPTIONS]')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('dynare executes instruction included in FILENAME.mod.')
|
||||
disp('See the reference manual for the available options.')
|
||||
return
|
||||
|
|
|
@ -220,7 +220,7 @@ end
|
|||
%% Test if valid mex files are available, if a mex file is not available
|
||||
%% a matlab version of the routine is included in the path.
|
||||
if verbose
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Configuring Dynare ...')
|
||||
end
|
||||
|
||||
|
@ -285,7 +285,7 @@ else
|
|||
end
|
||||
if verbose
|
||||
disp([ message 'Markov Switching SBVAR.' ])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
cd(origin);
|
||||
|
|
|
@ -53,7 +53,7 @@ for i = 1:size(M_.endo_names,1)
|
|||
tmp = strmatch(deblank(M_.endo_names(i,:)),options_.varobs,'exact');
|
||||
if ~isempty(tmp)
|
||||
if length(tmp)>1
|
||||
disp(' ')
|
||||
skipline()
|
||||
error(['Multiple declarations of ' deblank(M_.endo_names(i,:)) ' as an observed variable is not allowed!'])
|
||||
end
|
||||
options_.lgyidx2varobs(i) = tmp;
|
||||
|
|
|
@ -213,9 +213,9 @@ options_ident.max_dim_cova_group = min([options_ident.max_dim_cova_group,nparam-
|
|||
|
||||
MaxNumberOfBytes=options_.MaxNumberOfBytes;
|
||||
store_options_ident = options_ident;
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['==== Identification analysis ====' ]),
|
||||
disp(' ')
|
||||
skipline()
|
||||
|
||||
if iload <=0,
|
||||
|
||||
|
@ -272,11 +272,11 @@ if iload <=0,
|
|||
[idehess_point, idemoments_point, idemodel_point, idelre_point, derivatives_info_point, info] = ...
|
||||
identification_analysis(params,indx,indexo,options_ident,dataset_, prior_exist, name_tex,1);
|
||||
if info(1)~=0,
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('----------- ')
|
||||
disp('Parameter error:')
|
||||
disp(['The model does not solve for ', parameters, ' with error code info = ', int2str(info(1))]),
|
||||
disp(' ')
|
||||
skipline()
|
||||
if info(1)==1,
|
||||
disp('info==1 %! The model doesn''t determine the current variables uniquely.')
|
||||
elseif info(1)==2,
|
||||
|
@ -305,7 +305,7 @@ if iload <=0,
|
|||
disp('info==30 %! Ergodic variance can''t be computed. ')
|
||||
end
|
||||
disp('----------- ')
|
||||
disp(' ')
|
||||
skipline()
|
||||
if any(bayestopt_.pshape)
|
||||
disp('Try sampling up to 50 parameter sets from the prior.')
|
||||
kk=0;
|
||||
|
@ -317,15 +317,15 @@ if iload <=0,
|
|||
end
|
||||
end
|
||||
if info(1)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('----------- ')
|
||||
disp('Identification stopped:')
|
||||
if any(bayestopt_.pshape)
|
||||
disp('The model did not solve for any of 50 attempts of random samples from the prior')
|
||||
end
|
||||
disp('----------- ')
|
||||
disp(' ')
|
||||
return,
|
||||
skipline()
|
||||
return
|
||||
end
|
||||
else
|
||||
idehess_point.params=params;
|
||||
|
@ -343,7 +343,7 @@ if iload <=0,
|
|||
end
|
||||
|
||||
if SampleSize > 1,
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Monte Carlo Testing')
|
||||
h = dyn_waitbar(0,'Monte Carlo identification checks ...');
|
||||
iteration = 0;
|
||||
|
@ -587,7 +587,6 @@ else
|
|||
warning on,
|
||||
end
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['==== Identification analysis completed ====' ]),
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
|
|
|
@ -215,7 +215,7 @@ if (options_gsa.load_stab || options_gsa.load_rmse || options_gsa.load_redform)
|
|||
any(bayestopt_.p4(~isnan(bayestopt_.p4))~=bkpprior.p4(~isnan(bkpprior.p4))),
|
||||
disp('WARNING!')
|
||||
disp('The saved sample has different priors w.r.t. to current ones!!')
|
||||
disp('')
|
||||
skipline()
|
||||
disp('Press ENTER to continue')
|
||||
pause;
|
||||
end
|
||||
|
@ -226,7 +226,7 @@ end
|
|||
if options_gsa.stab && ~options_gsa.ppost,
|
||||
x0 = stab_map_(OutputDirectoryName,options_gsa);
|
||||
if isempty(x0),
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Sensitivity computations stopped: no parameter set provided a unique solution')
|
||||
return
|
||||
end
|
||||
|
|
|
@ -137,11 +137,11 @@ if options.ramsey_policy
|
|||
end
|
||||
|
||||
if ~options.noprint
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Approximated value of planner objective function')
|
||||
disp([' - with initial Lagrange multipliers set to 0: ' ...
|
||||
num2str(planner_objective_value(2)) ])
|
||||
disp([' - with initial Lagrange multipliers set to steady state: ' ...
|
||||
num2str(planner_objective_value(1)) ])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
|
|
@ -91,13 +91,11 @@ end
|
|||
oo_.forecast.accept_rate = (replic-m1)/replic;
|
||||
|
||||
if options_.noprint == 0 && m1 < replic
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
disp('FORECASTING WITH PARAMETER UNCERTAINTY:')
|
||||
disp(sprintf(['The model couldn''t be solved for %f%% of the parameter' ...
|
||||
' values'],100*oo_.forecast.accept_rate))
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
end
|
||||
|
||||
% compute moments
|
||||
|
|
|
@ -167,18 +167,17 @@ if info==2% Prior optimization.
|
|||
bayestopt_.p3, ...
|
||||
bayestopt_.p4,options_,M_,estim_params_,oo_);
|
||||
% Display the results.
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
disp('------------------')
|
||||
disp('PRIOR OPTIMIZATION')
|
||||
disp('------------------')
|
||||
disp(' ')
|
||||
skipline()
|
||||
for i = 1:length(xparams)
|
||||
disp(['deep parameter ' int2str(i) ': ' get_the_name(i,0,M_,estim_params_,options_) '.'])
|
||||
disp([' Initial condition ....... ' num2str(xinit(i)) '.'])
|
||||
disp([' Prior mode .............. ' num2str(bayestopt_.p5(i)) '.'])
|
||||
disp([' Optimized prior mode .... ' num2str(xparams(i)) '.'])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ function [SAmeas, OutMatrix] = Morris_Measure_Groups(NumFact, Sample, Output, p,
|
|||
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
if nargin==0,
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('[SAmeas, OutMatrix] = Morris_Measure_Groups(NumFact, Sample, Output, p, Group);')
|
||||
return
|
||||
end
|
||||
|
|
|
@ -50,11 +50,10 @@ fname_ = M_.fname;
|
|||
lgy_ = M_.endo_names;
|
||||
dr_ = oo_.dr;
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
disp('Starting sensitivity analysis')
|
||||
disp('for the fit of EACH observed series ...')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Deleting old SA figures...')
|
||||
a=dir([OutDir,filesep,'*.*']);
|
||||
tmp1='0';
|
||||
|
@ -149,7 +148,7 @@ if ~loadSA,
|
|||
nruns=size(x,1);
|
||||
nfilt=floor(pfilt*nruns);
|
||||
if options_.opt_gsa.ppost || (options_.opt_gsa.ppost==0 && options_.opt_gsa.lik_only==0)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Computing RMSE''s...')
|
||||
fobs = options_.first_obs;
|
||||
nobs=options_.nobs;
|
||||
|
@ -408,7 +407,7 @@ else
|
|||
end
|
||||
param_names=param_names(2:end,:);
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('RMSE over the MC sample:')
|
||||
disp(' min yr RMSE max yr RMSE')
|
||||
for j=1:size(vvarvecm,1),
|
||||
|
@ -416,8 +415,7 @@ else
|
|||
end
|
||||
invar = find( std(rmse_MC)./mean(rmse_MC)<=0.0001 );
|
||||
if ~isempty(invar)
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
disp('RMSE is not varying significantly over the MC sample for the following variables:')
|
||||
disp(vvarvecm(invar,:))
|
||||
disp('These variables are excluded from SA')
|
||||
|
@ -427,7 +425,7 @@ else
|
|||
vvarvecm=vvarvecm(ivar,:);
|
||||
rmse_MC=rmse_MC(:,ivar);
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
% if options_.opt_gsa.ppost==0 && options_.opt_gsa.pprior,
|
||||
disp(['Sample filtered the ',num2str(pfilt*100),'% best RMSE''s for each observed series ...' ])
|
||||
% else
|
||||
|
@ -437,8 +435,7 @@ else
|
|||
% set(gca,'xticklabel',vvarvecm)
|
||||
% saveas(gcf,[fname_,'_SA_RMSE'])
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
disp('RMSE ranges after filtering:')
|
||||
if options_.opt_gsa.ppost==0 && options_.opt_gsa.pprior,
|
||||
disp([' best ',num2str(pfilt*100),'% filtered remaining 90%'])
|
||||
|
@ -461,7 +458,7 @@ else
|
|||
|
||||
%%%%% R2 table
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('R2 over the MC sample:')
|
||||
disp(' min yr R2 max yr R2')
|
||||
for j=1:size(vvarvecm,1),
|
||||
|
@ -469,11 +466,10 @@ else
|
|||
end
|
||||
r2_MC=r2_MC(:,ivar);
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['Sample filtered the ',num2str(pfilt*100),'% best R2''s for each observed series ...' ])
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('R2 ranges after filtering:')
|
||||
if options_.opt_gsa.ppost==0 && options_.opt_gsa.pprior,
|
||||
disp([' best ',num2str(pfilt*100),'% filtered remaining 90%'])
|
||||
|
@ -511,14 +507,13 @@ else
|
|||
% snam=bayestopt_.name(find(nsp>0));
|
||||
nsnam=(find(nsp>1));
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2
|
||||
disp('These parameters do not affect significantly the fit of ANY observed series:')
|
||||
disp(snam0)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('These parameters affect ONE single observed series:')
|
||||
disp(snam1)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('These parameters affect MORE THAN ONE observed series: trade off exists!')
|
||||
disp(snam2)
|
||||
|
||||
|
@ -594,8 +589,7 @@ else
|
|||
nsx(j)=length(find(SP(:,j)));
|
||||
end
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2
|
||||
disp('Sensitivity table (significance and direction):')
|
||||
vav=char(zeros(1, size(param_names,2)+3 ));
|
||||
ibl = 12-size(vvarvecm,2);
|
||||
|
@ -610,8 +604,7 @@ else
|
|||
end
|
||||
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Starting bivariate analysis:')
|
||||
|
||||
for i=1:size(vvarvecm,1)
|
||||
|
|
|
@ -56,6 +56,6 @@ for i=1:nrun,
|
|||
end
|
||||
dyn_waitbar(i/nrun,h)
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('.. done !')
|
||||
dyn_waitbar_close(h)
|
||||
|
|
|
@ -39,5 +39,5 @@ global options_ M_
|
|||
dyn_waitbar(j/nsam,h)
|
||||
end
|
||||
dyn_waitbar_close(h)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('... done !')
|
||||
|
|
|
@ -116,7 +116,7 @@ for j=1:size(anamendo,1)
|
|||
for jx=1:size(anamexo,1)
|
||||
namexo=deblank(anamexo(jx,:));
|
||||
iexo=strmatch(namexo,M_.exo_names,'exact');
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['[', namendo,' vs. ',namexo,']'])
|
||||
|
||||
|
||||
|
@ -162,7 +162,7 @@ for j=1:size(anamendo,1)
|
|||
for jp=1:length(indsmirnov),
|
||||
disp([M_.param_names(estim_params_.param_vals(indsmirnov(jp),1),:),' d-stat = ', num2str(dproba(indsmirnov(jp)),'%1.3f'),' p-value = ', num2str(proba(indsmirnov(jp)),'%1.3f')])
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
stab_map_1(x0, iy, iyc, 'threshold',pvalue_ks,indsmirnov,xdir,[],['Reduced Form Mapping (Threshold) for ', namendo,' vs. lagged ', namexo]);
|
||||
stab_map_2(x0(iy,:),alpha2,pvalue_corr,'inside_threshold',xdir,[],['Reduced Form Mapping (Inside Threshold)for ', namendo,' vs. lagged ', namexo])
|
||||
stab_map_2(x0(iyc,:),alpha2,pvalue_corr,'outside_threshold',xdir,[],['Reduced Form Mapping (Outside Threshold) for ', namendo,' vs. lagged ', namexo])
|
||||
|
@ -218,7 +218,7 @@ for j=1:size(anamendo,1)
|
|||
for je=1:size(anamlagendo,1)
|
||||
namlagendo=deblank(anamlagendo(je,:));
|
||||
ilagendo=strmatch(namlagendo,M_.endo_names(oo_.dr.order_var(M_.nstatic+1:M_.nstatic+nsok),:),'exact');
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['[', namendo,' vs. lagged ',namlagendo,']'])
|
||||
|
||||
if ~isempty(ilagendo),
|
||||
|
@ -261,7 +261,7 @@ for j=1:size(anamendo,1)
|
|||
for jp=1:length(indsmirnov),
|
||||
disp([M_.param_names(estim_params_.param_vals(indsmirnov(jp),1),:),' d-stat = ', num2str(dproba(indsmirnov(jp)),'%1.3f'),' p-value = ', num2str(proba(indsmirnov(jp)),'%1.3f')])
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
stab_map_1(x0, iy, iyc, 'threshold',pvalue_ks,indsmirnov,xdir,[],['Reduced Form Mapping (Threshold) for ', namendo,' vs. lagged ', namlagendo]);
|
||||
stab_map_2(x0(iy,:),alpha2,pvalue_corr,'inside_threshold',xdir,[],['Reduced Form Mapping (Inside Threshold) for ', namendo,' vs. lagged ', namlagendo])
|
||||
stab_map_2(x0(iyc,:),alpha2,pvalue_corr,'outside_threshold',xdir,[],['Reduced Form Mapping (Outside Threshold) for ', namendo,' vs. lagged ', namlagendo])
|
||||
|
|
|
@ -499,9 +499,9 @@ if length(iunstable)>0 && length(iunstable)<Nsam,
|
|||
fprintf(['%4.1f%% of the prior support gives indeterminacy.'],length(iindeterm)/Nsam*100)
|
||||
end
|
||||
if ~isempty(iwrong),
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp(['For ',num2str(length(iwrong)/Nsam*100,'%1.3f'),'\% of the prior support dynare could not find a solution.'])
|
||||
disp(' ');
|
||||
skipline()
|
||||
if any(infox==1),
|
||||
disp([' For ',num2str(length(find(infox==1))/Nsam*100,'%1.3f'),'\% The model doesn''t determine the current variables uniquely.'])
|
||||
end
|
||||
|
@ -534,7 +534,7 @@ if length(iunstable)>0 && length(iunstable)<Nsam,
|
|||
end
|
||||
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
% Blanchard Kahn
|
||||
[proba, dproba] = stab_map_1(lpmat, istable, iunstable, aname,0);
|
||||
% indstab=find(dproba>ksstat);
|
||||
|
@ -543,7 +543,7 @@ if length(iunstable)>0 && length(iunstable)<Nsam,
|
|||
for j=1:length(indstab),
|
||||
disp([M_.param_names(estim_params_.param_vals(indstab(j),1),:),' d-stat = ', num2str(dproba(indstab(j)),'%1.3f'),' p-value = ', num2str(proba(indstab(j)),'%1.3f')])
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
if ~isempty(indstab)
|
||||
stab_map_1(lpmat, istable, iunstable, aname, 1, indstab, OutputDirectoryName,[],atitle);
|
||||
end
|
||||
|
@ -556,7 +556,7 @@ if length(iunstable)>0 && length(iunstable)<Nsam,
|
|||
for j=1:length(indindet),
|
||||
disp([M_.param_names(estim_params_.param_vals(indindet(j),1),:),' d-stat = ', num2str(dproba(indindet(j)),'%1.3f'),' p-value = ', num2str(proba(indindet(j)),'%1.3f')])
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
if ~isempty(indindet)
|
||||
stab_map_1(lpmat, [1:Nsam], iindeterm, aindetname, 1, indindet, OutputDirectoryName,[],aindettitle);
|
||||
end
|
||||
|
@ -570,7 +570,7 @@ if length(iunstable)>0 && length(iunstable)<Nsam,
|
|||
for j=1:length(indunst),
|
||||
disp([M_.param_names(estim_params_.param_vals(indunst(j),1),:),' d-stat = ', num2str(dproba(indunst(j)),'%1.3f'),' p-value = ', num2str(proba(indunst(j)),'%1.3f')])
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
if ~isempty(indunst)
|
||||
stab_map_1(lpmat, [1:Nsam], ixun, aunstablename, 1, indunst, OutputDirectoryName,[],aunstabletitle);
|
||||
end
|
||||
|
@ -584,13 +584,13 @@ if length(iunstable)>0 && length(iunstable)<Nsam,
|
|||
for j=1:length(indwrong),
|
||||
disp([M_.param_names(estim_params_.param_vals(indwrong(j),1),:),' d-stat = ', num2str(dproba(indwrong(j)),'%1.3f'),' p-value = ', num2str(proba(indwrong(j)),'%1.3f')])
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
if ~isempty(indwrong)
|
||||
stab_map_1(lpmat, [1:Nsam], iwrong, awronguniname, 1, indwrong, OutputDirectoryName,[],awrongunititle);
|
||||
end
|
||||
end
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Starting bivariate analysis:')
|
||||
|
||||
c0=corrcoef(lpmat(istable,:));
|
||||
|
|
|
@ -122,4 +122,4 @@ disp(['MH: Total number of generated files : ' int2str(NewFile(1)*nblck) '.
|
|||
disp(['MH: Total number of iterations : ' int2str((NewFile(1)-1)*MAX_nruns+irun-1) '.'])
|
||||
disp('MH: average acceptation rate per chain : ')
|
||||
disp(record.AcceptationRates);
|
||||
disp(' ')
|
||||
skipline()
|
|
@ -130,7 +130,7 @@ for b = fblck:nblck,
|
|||
end
|
||||
if exist('OCTAVE_VERSION') || options_.console_mode
|
||||
diary off
|
||||
disp(' ')
|
||||
skipline()
|
||||
elseif whoiam
|
||||
% keyboard;
|
||||
waitbarString = ['Please wait... Metropolis-Hastings (' int2str(b) '/' int2str(options_.mh_nblck) ')...'];
|
||||
|
|
|
@ -60,8 +60,7 @@ fprintf(' Done!\n');
|
|||
%% (usefull if the user wants to perform some computations using
|
||||
%% the posterior mean instead of the posterior mode ==> ).
|
||||
save([M_.fname '_mean.mat'],'xparam1','hh','SIGMA');
|
||||
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp('MH: I''m computing the posterior log marginal density (modified harmonic mean)... ');
|
||||
detSIGMA = det(SIGMA);
|
||||
invSIGMA = inv(SIGMA);
|
||||
|
|
|
@ -146,7 +146,7 @@ if ~options_.load_mh_file && ~options_.mh_recover
|
|||
end
|
||||
fprintf(fidlog,' \n');
|
||||
disp('MH: Initial values found!')
|
||||
disp(' ')
|
||||
skipline()
|
||||
else% Case 2: one chain (we start from the posterior mode)
|
||||
fprintf(fidlog,[' Initial values of the parameters:\n']);
|
||||
candidate = transpose(xparam1(:));%
|
||||
|
@ -154,7 +154,7 @@ if ~options_.load_mh_file && ~options_.mh_recover
|
|||
ix2 = candidate;
|
||||
ilogpo2 = - feval(TargetFun,ix2',dataset_,options_,M_,estim_params_,bayestopt_,oo_);
|
||||
disp('MH: Initialization at the posterior mode.')
|
||||
disp(' ')
|
||||
skipline()
|
||||
fprintf(fidlog,[' Blck ' int2str(1) 'params:\n']);
|
||||
for i=1:length(ix2(1,:))
|
||||
fprintf(fidlog,[' ' int2str(i) ':' num2str(ix2(1,i)) '\n']);
|
||||
|
@ -276,13 +276,13 @@ elseif options_.load_mh_file && ~options_.mh_recover
|
|||
record.MhDraws(end,3) = AnticipatedNumberOfLinesInTheLastFile;
|
||||
save([MhDirectoryName '/' ModelName '_mh_history.mat'],'record');
|
||||
disp(['MH: ... It''s done. I''ve loaded ' int2str(NumberOfPreviousSimulations) ' simulations.'])
|
||||
disp(' ')
|
||||
skipline()
|
||||
fclose(fidlog);
|
||||
elseif options_.mh_recover
|
||||
%% The previous metropolis-hastings crashed before the end! I try to
|
||||
%% recover the saved draws...
|
||||
disp('MH: Recover mode!')
|
||||
disp(' ')
|
||||
skipline()
|
||||
file = dir([MhDirectoryName '/' ModelName '_mh_history.mat']);
|
||||
if ~length(file)
|
||||
error('MH:: FAILURE! there is no MH-history file!')
|
||||
|
|
|
@ -65,11 +65,11 @@ end
|
|||
fval = feval(fun,x,DynareDataset,DynareOptions,Model,EstimatedParameters,BayesInfo,DynareResults);
|
||||
|
||||
if ~isempty(hessian);
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('MODE CHECK')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(sprintf('Fval obtained by the minimization routine: %f', fval))
|
||||
disp(' ')
|
||||
skipline()
|
||||
if s_min<eps
|
||||
disp(sprintf('Most negative variance %f for parameter %d (%s = %f)', s_min, k , BayesInfo.name{k}, x(k)))
|
||||
end
|
||||
|
|
|
@ -31,8 +31,7 @@ function PosteriorOddsTable = model_comparison(ModelNames,ModelPriors,oo,options
|
|||
|
||||
NumberOfModels = size(ModelNames,2);
|
||||
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
if isempty(ModelPriors)
|
||||
prior_flag = 0;% empty_prior=0
|
||||
ModelPriors = ones(NumberOfModels,1)/NumberOfModels;
|
||||
|
|
|
@ -129,7 +129,7 @@ for k=1:nvar
|
|||
%--------- The 1st set of draws to be tossed away. ------------------
|
||||
for draws = 1:ndraws1
|
||||
if ~mod(draws,nbuffer)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(sprintf('The %dth column or equation in A0 with %d 1st tossed-away draws in Gibbs',k,draws))
|
||||
end
|
||||
A0gbs1 = fn_gibbsrvar(A0gbs0,UT,nvar,fss,n0,indx_ks);
|
||||
|
@ -140,7 +140,7 @@ for k=1:nvar
|
|||
%--------- The 2nd set of draws to be used. ------------------
|
||||
for draws = 1:ndraws2
|
||||
if ~mod(draws,nbuffer)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(sprintf('The %dth column or equation in A0 with %d usable draws in Gibbs',k,draws))
|
||||
end
|
||||
[A0gbs1, Wcell] = fn_gibbsrvar(A0gbs0,UT,nvar,fss,n0,indx_ks);
|
||||
|
@ -162,7 +162,7 @@ for k=1:nvar
|
|||
vlog_a0_Yao(k) = vlogxhat;
|
||||
% The log value of p(a0_k|Y,a_others) where a_others: other a's at some point such as the peak of ONLY some a0's
|
||||
else
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(sprintf('The last(6th) column or equation in A0 with no Gibbs draws'))
|
||||
[A0gbs1, Wcell] = fn_gibbsrvar(A0gbs0,UT,nvar,fss,n0,indx_ks)
|
||||
%------ See p.71, Forecast (II).
|
||||
|
@ -191,7 +191,6 @@ disp('Posterior pdf -- log(p(aphat|a0hat, Y)):');
|
|||
vlog_ap_Ya0
|
||||
|
||||
%--------- The value of marginal density p(Y) ----------
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp('************ Marginal Likelihood of Y or Marginal Data Density: ************');
|
||||
vlogY = vlog_a0p+vlog_Y_a-sum(vlog_a0_Yao)-vlog_ap_Ya0
|
||||
|
|
|
@ -154,7 +154,7 @@ if cnum
|
|||
end
|
||||
%
|
||||
pause(1)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('For uncondtional forecasts, set nconstr = options_.ms.cms = cnum = 0')
|
||||
pause(1)
|
||||
%
|
||||
|
@ -296,12 +296,12 @@ if options_.ms.indxestima
|
|||
%* Obtain linear restrictions
|
||||
[Uiconst,Viconst,n0,np,ixmC0Pres] = feval(options_.ms.restriction_fname,nvar,nexo,options_.ms );
|
||||
if min(n0)==0
|
||||
disp(' ')
|
||||
skipline()
|
||||
warning('A0: restrictions in dlrprior.m give no free parameter in one of equations')
|
||||
disp('Press ctrl-c to abort')
|
||||
pause
|
||||
elseif min(np)==0
|
||||
disp(' ')
|
||||
skipline()
|
||||
warning('Ap: Restrictions in dlrprior.m give no free parameter in one of equations')
|
||||
disp('Press ctrl-c to abort')
|
||||
pause
|
||||
|
|
|
@ -61,7 +61,7 @@ nvar = size(options_.varobs,1); % number of endogenous variables
|
|||
nlogeno = length(options_.ms.log_var); % number of endogenous variables in options_.ms.log_var
|
||||
npereno = length(options_.ms.percent_var); % number of endogenous variables in options_.ms.percent_var
|
||||
if (nvar~=(nlogeno+npereno))
|
||||
disp(' ')
|
||||
skipline()
|
||||
warning('Check xlab, nlogeno or npereno to make sure of endogenous variables in options_.ms.vlist')
|
||||
disp('Press ctrl-c to abort')
|
||||
return
|
||||
|
@ -70,7 +70,7 @@ elseif (nvar==length(options_.ms.vlist))
|
|||
elseif (nvar<length(options_.ms.vlist))
|
||||
nexo=length(options_.ms.vlist)-nvar+1;
|
||||
else
|
||||
disp(' ')
|
||||
skipline()
|
||||
warning('Make sure there are only nvar endogenous variables in options_.ms.vlist')
|
||||
disp('Press ctrl-c to abort')
|
||||
return
|
||||
|
|
|
@ -129,5 +129,5 @@ if nvar > 0 && options_.noprint == 0
|
|||
end
|
||||
lh = size(labels,2)+2;
|
||||
dyntable(my_title,headers,labels,res_table,lh,10,6);
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
|
|
@ -214,10 +214,10 @@ while norm(gg)>gtol && check==0 && jit<nit
|
|||
end
|
||||
if htol0>htol
|
||||
htol=htol0;
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Numerical noise in the likelihood')
|
||||
disp('Tolerance has to be relaxed')
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
if ~outer_product_gradient,
|
||||
H = bfgsi1(H,gg-g(:,icount),xparam1-x(:,icount));
|
||||
|
@ -256,16 +256,16 @@ end
|
|||
|
||||
save m1.mat x hh g hhg igg fval0 nig
|
||||
if ftol>ftol0
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Numerical noise in the likelihood')
|
||||
disp('Tolerance had to be relaxed')
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
if jit==nit
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Maximum number of iterations reached')
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
|
||||
if norm(gg)<=gtol
|
||||
|
|
|
@ -34,9 +34,9 @@ for i=1:np
|
|||
i_params(i) = strmatch(deblank(params(i,:)),M_.param_names,'exact');
|
||||
end
|
||||
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('OPTIMAL SIMPLE RULE')
|
||||
disp(' ')
|
||||
skipline()
|
||||
osr1(i_params,i_var,W);
|
||||
|
||||
stoch_simul(var_list);
|
|
@ -63,14 +63,14 @@ oo_.osr.objective_function = f;
|
|||
|
||||
|
||||
|
||||
disp('')
|
||||
skipline()
|
||||
disp('OPTIMAL VALUE OF THE PARAMETERS:')
|
||||
disp('')
|
||||
skipline()
|
||||
for i=1:np
|
||||
disp(sprintf('%16s %16.6g\n',M_.param_names(i_params(i),:),p(i)))
|
||||
end
|
||||
disp(sprintf('Objective function : %16.6g\n',f));
|
||||
disp(' ')
|
||||
skipline()
|
||||
[oo_.dr,info,M_,options_,oo_] = resol(0,M_,options_,oo_);
|
||||
|
||||
% 05/10/03 MJ modified to work with osr.m and give full report
|
|
@ -123,11 +123,9 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
|
||||
Environment= (OScallerUnix || OStargetUnix);
|
||||
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline(2)
|
||||
disp(['Testing computer -> ',DataInput(Node).ComputerName,' <- ...']);
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline(2)
|
||||
|
||||
% The function is composed by two main blocks, determined by the 'Local'
|
||||
% variable.
|
||||
|
@ -138,18 +136,14 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
if ((DataInput(Node).Local == 0) |(DataInput(Node).Local == 1))
|
||||
% Continue it is Ok!
|
||||
disp('Check on Local Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
|
||||
skipline()
|
||||
else
|
||||
disp('The variable "Local" has a bad value!');
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp('ErrorCode 1.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline()
|
||||
ErrorCode=1;
|
||||
return
|
||||
|
||||
end
|
||||
|
||||
% %%%%%%%%%% Local (No Network) Computing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
@ -189,17 +183,14 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
end
|
||||
|
||||
if (si1)
|
||||
disp(['It is impossibile to ping to the computer with name "',DataInput(Node).ComputerName,'" using the network!']);
|
||||
disp(' ');
|
||||
disp('ErrorCode 3.');
|
||||
disp(['It is impossibile to ping to the computer with name "',DataInput(Node).ComputerName,'" using the network!'])
|
||||
skipline()
|
||||
disp('ErrorCode 3.')
|
||||
ErrorCode=3;
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
% return;
|
||||
skipline(2)
|
||||
else
|
||||
disp('Check on ComputerName Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on ComputerName Variable ..... Ok!')
|
||||
skipline(2)
|
||||
end
|
||||
|
||||
|
||||
|
@ -212,34 +203,29 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
% strategy.
|
||||
|
||||
if (isempty(DataInput(Node).UserName))
|
||||
disp('The fields UserName is empty!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 4.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('The fields UserName is empty!')
|
||||
skipline()
|
||||
disp('ErrorCode 4.')
|
||||
skipline(2)
|
||||
ErrorCode=4;
|
||||
return
|
||||
end
|
||||
disp('Check on UserName Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on UserName Variable ..... Ok!')
|
||||
skipline(2)
|
||||
|
||||
% This check can be removed ... according to the dynare parser
|
||||
% strategy.
|
||||
if (~isempty(DataInput(Node).Password))
|
||||
disp('[WARNING] The field Password should be empty under unix or mac!');
|
||||
disp(' ');
|
||||
disp(['Remove the string ',DataInput(Node).Password,' from this field!']);
|
||||
disp(' ');
|
||||
disp('ErrorCode 4.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp(['Remove the string ',DataInput(Node).Password,' from this field!'])
|
||||
skipline()
|
||||
disp('ErrorCode 4.')
|
||||
skipline(2)
|
||||
ErrorCode=4;
|
||||
% return
|
||||
else
|
||||
disp('Check on Password Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on Password Variable ..... Ok!')
|
||||
skipline(2)
|
||||
end
|
||||
else
|
||||
|
||||
|
@ -248,20 +234,16 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
|
||||
if (isempty(DataInput(Node).UserName)) || (isempty(DataInput(Node).Password))
|
||||
disp('The fields UserName and/or Password are/is empty!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 4.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp('ErrorCode 4.')
|
||||
skipline(2)
|
||||
ErrorCode=4;
|
||||
return
|
||||
end
|
||||
disp('Check on UserName Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
skipline()
|
||||
disp('Check on Password Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
|
||||
skipline()
|
||||
end
|
||||
|
||||
% Now we very if RemoteDrive and/or RemoteDirectory exist on remote
|
||||
|
@ -273,11 +255,10 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
% strategy.
|
||||
|
||||
if isempty(DataInput(Node).RemoteDirectory)
|
||||
disp('The field RemoteDirectory is empty!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 5.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('The field RemoteDirectory is empty!')
|
||||
skipline()
|
||||
disp('ErrorCode 5.')
|
||||
skipline()
|
||||
ErrorCode=5;
|
||||
return
|
||||
end
|
||||
|
@ -286,15 +267,13 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
% strategy.
|
||||
|
||||
if (~isempty(DataInput(Node).RemoteDrive))
|
||||
disp('[WARNING] The fields RemoteDrive should be empty under unix or mac!');
|
||||
disp(' ');
|
||||
disp(['remove the string ',DataInput(Node).RemoteDrive,' from this field!']);
|
||||
disp(' ');
|
||||
disp('ErrorCode 5.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('[WARNING] The fields RemoteDrive should be empty under unix or mac!')
|
||||
skipline()
|
||||
disp(['remove the string ',DataInput(Node).RemoteDrive,' from this field!'])
|
||||
skipline()
|
||||
disp('ErrorCode 5.')
|
||||
skipline(2)
|
||||
ErrorCode=5;
|
||||
% return
|
||||
end
|
||||
|
||||
si2=[];
|
||||
|
@ -308,32 +287,28 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
[si2 de2]=system(['ssh ',ssh_token,' ',DataInput(Node).UserName,'@',DataInput(Node).ComputerName,' ls ',DataInput(Node).RemoteDirectory,'/',RemoteTmpFolder,'/']);
|
||||
|
||||
if (si2)
|
||||
disp ('Remote Directory does not exist or is not reachable!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 5.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp ('Remote Directory does not exist or is not reachable!')
|
||||
skipline()
|
||||
disp('ErrorCode 5.')
|
||||
skipline(2)
|
||||
ErrorCode=5;
|
||||
return
|
||||
end
|
||||
|
||||
disp('Check on RemoteDirectory Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on RemoteDrive Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on RemoteDirectory Variable ..... Ok!')
|
||||
skipline(2)
|
||||
disp('Check on RemoteDrive Variable ..... Ok!')
|
||||
skipline(2)
|
||||
|
||||
else
|
||||
% This check can be removed ... according to the dynare parser
|
||||
% strategy.
|
||||
|
||||
if (isempty(DataInput(Node).RemoteDrive)||isempty(DataInput(Node).RemoteDirectory))
|
||||
disp('Remote RemoteDrive and/or RemoteDirectory is/are empty!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 5.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Remote RemoteDrive and/or RemoteDirectory is/are empty!')
|
||||
skipline()
|
||||
disp('ErrorCode 5.')
|
||||
skipline(2)
|
||||
ErrorCode=5;
|
||||
return
|
||||
end
|
||||
|
@ -344,21 +319,18 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
[si2 de2]=system(['dir \\',DataInput(Node).ComputerName,'\',DataInput(Node).RemoteDrive,'$\',DataInput(Node).RemoteDirectory,'\',RemoteTmpFolder]);
|
||||
|
||||
if (si2)
|
||||
disp ('Remote Directory does not exist or it is not reachable!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 5.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp ('Remote Directory does not exist or it is not reachable!')
|
||||
skipline()
|
||||
disp('ErrorCode 5.')
|
||||
skipline(2)
|
||||
ErrorCode=5;
|
||||
return
|
||||
end
|
||||
|
||||
disp('Check on RemoteDirectory Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on RemoteDrive Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on RemoteDirectory Variable ..... Ok!')
|
||||
skipline(2)
|
||||
disp('Check on RemoteDrive Variable ..... Ok!')
|
||||
skipline(2)
|
||||
|
||||
end
|
||||
|
||||
|
@ -407,17 +379,15 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
delete ('Tracing.m');
|
||||
|
||||
if (isempty(FindTracing))
|
||||
disp ('It is impossible to exchange data with Remote Drive and/or Remote Directory! ErrorCode 6.');
|
||||
disp(' ');
|
||||
disp('ErrorCode 6.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('It is impossible to exchange data with Remote Drive and/or Remote Directory! ErrorCode 6.')
|
||||
skipline()
|
||||
disp('ErrorCode 6.')
|
||||
skipline(2)
|
||||
ErrorCode=6;
|
||||
return
|
||||
else
|
||||
disp('Check on Exchange File with Remote Computer ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on Exchange File with Remote Computer ..... Ok!')
|
||||
skipline(2)
|
||||
end
|
||||
|
||||
|
||||
|
@ -466,10 +436,10 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
|
||||
while (1);
|
||||
if Flag==0
|
||||
disp('Try to run matlab/octave on remote machine ... ');
|
||||
disp(' ');
|
||||
disp('please wait ... ');
|
||||
disp(' ');
|
||||
disp('Try to run matlab/octave on remote machine ... ')
|
||||
skipline()
|
||||
disp('please wait ... ')
|
||||
skipline()
|
||||
Flag=1;
|
||||
end
|
||||
nt=fix(clock);
|
||||
|
@ -486,25 +456,22 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
|
||||
if (ErrorCode==7)
|
||||
|
||||
disp ('It is not possible execute a matlab session on remote machine!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 7.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp ('It is not possible execute a matlab session on remote machine!')
|
||||
skipline()
|
||||
disp('ErrorCode 7.')
|
||||
skipline(2)
|
||||
ErrorCode=7;
|
||||
dynareParallelRmDir(RemoteTmpFolder,DataInput(Node));
|
||||
return
|
||||
|
||||
else
|
||||
disp('Check on MatlabOctave Path and MatlabOctave Program Execution on remote machine ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on MatlabOctave Path and MatlabOctave Program Execution on remote machine ..... Ok!')
|
||||
skipline(2)
|
||||
|
||||
% Now we verify if the DynarePath is correct ...
|
||||
disp('Check the Dynare path on remote machine ... ');
|
||||
disp(' ');
|
||||
disp('please wait ... ');
|
||||
disp(' ');
|
||||
disp('Check the Dynare path on remote machine ... ')
|
||||
skipline()
|
||||
disp('please wait ... ')
|
||||
skipline(2)
|
||||
pause(2)
|
||||
|
||||
if isempty(dynareParallelDir('DynareIsOk.txt',RemoteTmpFolder,DataInput(Node)))
|
||||
|
@ -512,20 +479,16 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
end
|
||||
|
||||
if (ErrorCode==8)
|
||||
|
||||
disp ('The DynarePath is incorrect!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 8.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp ('The DynarePath is incorrect!')
|
||||
skipline()
|
||||
disp('ErrorCode 8.')
|
||||
skipline(2)
|
||||
ErrorCode=8;
|
||||
dynareParallelRmDir(RemoteTmpFolder,DataInput(Node));
|
||||
return
|
||||
|
||||
else
|
||||
disp('Check on Dynare Path remote machine ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Check on Dynare Path remote machine ..... Ok!')
|
||||
skipline(2)
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -539,15 +502,13 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
si3=dynareParallelDir('Tracing.m', RemoteTmpFolder,DataInput(Node));
|
||||
|
||||
if (isempty(si3))
|
||||
disp ('Check on Delete Remote Computational Traces ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp ('Check on Delete Remote Computational Traces ..... Ok!')
|
||||
skipline(2)
|
||||
else
|
||||
disp ('It is impossible to delete temporary files on remote machine!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 9.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp ('It is impossible to delete temporary files on remote machine!')
|
||||
skipline()
|
||||
disp('ErrorCode 9.')
|
||||
skipline(2)
|
||||
ErrorCode=9;
|
||||
return
|
||||
end
|
||||
|
@ -563,11 +524,10 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
|
||||
if yn==1
|
||||
% The field is empty!
|
||||
disp('The field "CPUnbr" is empty!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 2.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('The field "CPUnbr" is empty!')
|
||||
skipline()
|
||||
disp('ErrorCode 2.')
|
||||
skipline(2)
|
||||
ErrorCode=2;
|
||||
return
|
||||
end
|
||||
|
@ -620,16 +580,16 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
if isempty (RealCPUnbr)
|
||||
% An error occurred when we try to know the Cpu/Cores
|
||||
% numbers.
|
||||
disp('It is impossible determine the number of Cpu/Processor avaiable on this machine!');
|
||||
disp(' ');
|
||||
disp('ErrorCode 2.');
|
||||
disp(' ');
|
||||
disp('It is impossible determine the number of Cpu/Processor avaiable on this machine!')
|
||||
skipline()
|
||||
disp('ErrorCode 2.')
|
||||
skipline()
|
||||
if Environment
|
||||
disp('Check the command "$less /proc/cpuinfo" ... !');
|
||||
disp('Check the command "$less /proc/cpuinfo" ... !')
|
||||
else
|
||||
disp('Check if the pstools are installed and are in machine path! And check the command "psinfo \\"');
|
||||
disp('Check if the pstools are installed and are in machine path! And check the command "psinfo \\"')
|
||||
end
|
||||
disp(' ');
|
||||
skipline()
|
||||
ErrorCode=2;
|
||||
return
|
||||
end
|
||||
|
@ -642,38 +602,25 @@ for Node=1:length(DataInput) % To obtain a recoursive function remove the 'for'
|
|||
CPUnbrUser=length(DataInput(Node).CPUnbr);
|
||||
maxCPUnbrUser=max(DataInput(Node).CPUnbr)+1;
|
||||
|
||||
disp(['Hardware has ', num2str(RealCPUnbr),' Cpu/Cores!']);
|
||||
disp(['User requires ',num2str(CPUnbrUser),' Cpu/Cores!']);
|
||||
disp(['Hardware has ', num2str(RealCPUnbr),' Cpu/Cores!'])
|
||||
disp(['User requires ',num2str(CPUnbrUser),' Cpu/Cores!'])
|
||||
if CPUnbrUser==RealCPUnbr,
|
||||
% It is Ok!
|
||||
disp('Check on CPUnbr Variable ..... Ok!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
|
||||
disp('Check on CPUnbr Variable ..... Ok!')
|
||||
skipline(3)
|
||||
end
|
||||
|
||||
if CPUnbrUser > RealCPUnbr
|
||||
disp('Warning! The user asks to use more CPU''s than those available.');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Warning! The user asks to use more CPU''s than those available.')
|
||||
skipline(2)
|
||||
ErrorCode=2.1;
|
||||
% return
|
||||
|
||||
end
|
||||
if CPUnbrUser < RealCPUnbr
|
||||
disp('Warning! There are unused CPU''s!');
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
disp('Warning! There are unused CPU''s!')
|
||||
skipline(2)
|
||||
ErrorCode=2.2;
|
||||
% return
|
||||
end
|
||||
|
||||
disp(['Test for Cluster computation, computer ',DataInput(Node).ComputerName, ' ..... Passed!']);
|
||||
disp(' ');
|
||||
disp(' ');
|
||||
|
||||
|
||||
disp(['Test for Cluster computation, computer ',DataInput(Node).ComputerName, ' ..... Passed!'])
|
||||
skipline(2)
|
||||
end
|
||||
|
||||
return
|
|
@ -88,7 +88,7 @@ if SampleSize == 1,
|
|||
|
||||
if advanced,
|
||||
if ~options_.nodisplay,
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Press ENTER to plot advanced diagnostics'), pause(5),
|
||||
end
|
||||
hh = dyn_figure(options_,'Name',[tittxt, ' - Sensitivity plot']);
|
||||
|
@ -152,7 +152,7 @@ if SampleSize == 1,
|
|||
xlabel([tittxt,' - Collinearity patterns with ', int2str(j) ,' parameter(s)'],'interpreter','none')
|
||||
dyn_saveas(hh,[ IdentifDirectoryName '/' M_.fname '_ident_collinearity_' tittxt1 '_' int2str(j) ],options_);
|
||||
end
|
||||
disp('')
|
||||
skipline()
|
||||
if idehess.flag_score,
|
||||
[U,S,V]=svd(idehess.AHess,0);
|
||||
S=diag(S);
|
||||
|
@ -232,7 +232,7 @@ else
|
|||
dyn_saveas(hh,[ IdentifDirectoryName '/' M_.fname '_MC_sensitivity' ],options_);
|
||||
if advanced,
|
||||
if ~options_.nodisplay,
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Press ENTER to display advanced diagnostics'), pause(5),
|
||||
end
|
||||
% options_.nograph=1;
|
||||
|
|
|
@ -168,4 +168,4 @@ disp(['MH: Total number of generated files : ' int2str(NewFile(1)*nblck) '.
|
|||
disp(['MH: Total number of iterations : ' int2str((NewFile(1)-1)*MAX_nruns+irun-1) '.'])
|
||||
disp('MH: average acceptation rate per chain : ')
|
||||
disp(record.AcceptationRates);
|
||||
disp(' ')
|
||||
skipline()
|
||||
|
|
|
@ -83,12 +83,10 @@ M_.Sigma_e = Sigma_e;
|
|||
|
||||
% Display the non-zero residuals if no return value
|
||||
if nargout == 0
|
||||
for i = 1:4
|
||||
disp(' ')
|
||||
end
|
||||
skipline(4)
|
||||
ind = [];
|
||||
disp('Residuals of the static equations:')
|
||||
disp(' ')
|
||||
skipline()
|
||||
for i=1:M_.orig_endo_nbr
|
||||
if abs(z(i)) < options_.dynatol.f/100
|
||||
tmp = 0;
|
||||
|
@ -107,9 +105,7 @@ if nargout == 0
|
|||
disp( ['Equation number ', int2str(i) ,' : ', num2str(tmp) ,' : ' s])
|
||||
end
|
||||
end
|
||||
for i = 1:2
|
||||
disp(' ')
|
||||
end
|
||||
skipline(2)
|
||||
end
|
||||
|
||||
if info(1)
|
||||
|
|
|
@ -73,9 +73,9 @@ if matlab_random_streams% Use new matlab interface.
|
|||
strcmpi(a,'swb2712') )
|
||||
disp('set_dynare_seed:: First argument must be string designing the uniform random number algorithm!')
|
||||
RandStream.list
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('set_dynare_seed:: Change the first input accordingly...')
|
||||
disp(' ')
|
||||
skipline()
|
||||
error(' ')
|
||||
end
|
||||
if ~isint(b)
|
||||
|
|
|
@ -167,11 +167,11 @@ trend_vector_2 = 2:(number_of_variables+1);
|
|||
|
||||
% Set initial simplex around the initial guess (x).
|
||||
if verbose
|
||||
for i=1:3, disp(' '), end
|
||||
skipline(3)
|
||||
disp('+----------------------+')
|
||||
disp(' SIMPLEX INITIALIZATION ')
|
||||
disp('+----------------------+')
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
initial_point = x;
|
||||
[initial_score,junk1,junk2,nopenalty] = feval(objective_function,x,varargin{:});
|
||||
|
@ -188,7 +188,7 @@ else
|
|||
for i=1:number_of_variables
|
||||
fprintf(1,'%s: \t\t\t %+8.6f \t\t\t %+8.6f \t\t\t %+8.6f \t\t\t %+8.6f \t\t\t %+8.6f \n',bayestopt_.name{i},v(i,1), v(i,end), mean(v(i,:),2), min(v(i,:),[],2), max(v(i,:),[],2));
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -247,8 +247,7 @@ while (func_count < max_func_calls) && (iter_count < max_iterations) && (simplex
|
|||
if fxe < fxr% xe is even better than xr.
|
||||
if optimize_expansion_parameter
|
||||
if verbose>1
|
||||
disp('')
|
||||
disp('')
|
||||
skipline(2)
|
||||
disp('Compute optimal expansion...')
|
||||
end
|
||||
xee = xbar + rho*chi*1.01*(xbar-v(:,end));
|
||||
|
@ -316,8 +315,7 @@ while (func_count < max_func_calls) && (iter_count < max_iterations) && (simplex
|
|||
end
|
||||
if verbose>1
|
||||
disp('Done!')
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
end
|
||||
end
|
||||
v(:,end) = xe;
|
||||
|
@ -384,7 +382,7 @@ while (func_count < max_func_calls) && (iter_count < max_iterations) && (simplex
|
|||
disp(['Norm of dSimplex: ' num2str(norm(v-vold,'fro'))])
|
||||
disp(['Crit. f: ' num2str(critF)])
|
||||
disp(['Crit. x: ' num2str(critX)])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
if verbose && max(abs(best_point-v(:,1)))>x_tolerance;
|
||||
if verbose<2
|
||||
|
@ -395,14 +393,14 @@ while (func_count < max_func_calls) && (iter_count < max_iterations) && (simplex
|
|||
disp(['Norm of dSimplex: ' num2str(norm(v-vold,'fro'))])
|
||||
disp(['Crit. f: ' num2str(critF)])
|
||||
disp(['Crit. x: ' num2str(critX)])
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
disp(['Current parameter values: '])
|
||||
fprintf(1,'%s: \t\t\t %s \t\t\t %s \t\t\t %s \t\t\t %s \t\t\t %s \n','Names','Best point', 'Worst point', 'Mean values', 'Min values', 'Max values');
|
||||
for i=1:number_of_variables
|
||||
fprintf(1,'%s: \t\t\t %+8.6f \t\t\t %+8.6f \t\t\t %+8.6f \t\t\t %+8.6f \t\t\t %+8.6f \n',bayestopt_.name{i}, v(i,1), v(i,end), mean(v(i,:),2), min(v(i,:),[],2), max(v(i,:),[],2));
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
end
|
||||
if abs(best_point_score-fv(1))<f_tolerance
|
||||
no_improvements = no_improvements+1;
|
||||
|
@ -436,8 +434,7 @@ while (func_count < max_func_calls) && (iter_count < max_iterations) && (simplex
|
|||
iter_no_improvement_break = iter_no_improvement_break + 1;
|
||||
simplex_init = simplex_init+1;
|
||||
simplex_iterations = simplex_iterations+1;
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
end
|
||||
end
|
||||
if ((func_count==max_func_calls) || (iter_count==max_iterations) || (iter_no_improvement_break==max_no_improvement_break) || convergence || tooslow)
|
||||
|
@ -486,8 +483,7 @@ while (func_count < max_func_calls) && (iter_count < max_iterations) && (simplex
|
|||
iter_count = iter_count+1;
|
||||
simplex_iterations = simplex_iterations+1;
|
||||
simplex_algo_iterations = simplex_algo_iterations+1;
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
else
|
||||
break
|
||||
end
|
||||
|
|
|
@ -113,13 +113,13 @@ if nargin>2
|
|||
estimated_parameters_optimization_path = [NaN;xparam];
|
||||
save('optimization_path.mat','estimated_parameters_optimization_path');
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('Master talks to its slaves...')
|
||||
disp(' ')
|
||||
skipline()
|
||||
% Save the workspace.
|
||||
save('master_variables.mat','options_','M_','oo_');
|
||||
% Send the workspace to each remote computer.
|
||||
disp('')
|
||||
skipline()
|
||||
for i = 1:length(parallel)
|
||||
if ~strcmpi(hostname,parallel(i).machine)
|
||||
unix(['scp master_variables.mat ' , parallel(i).login , '@' , parallel(i).machine , ':' parallel(i).folder]);
|
||||
|
@ -191,9 +191,9 @@ if nargin>2
|
|||
end
|
||||
end
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('... And slaves do as ordered.')
|
||||
disp(' ')
|
||||
skipline()
|
||||
if exist('intermediary_results_from_master_and_slaves','dir')
|
||||
unix('rm -rf intermediary_results_from_master_and_slaves');
|
||||
end
|
||||
|
@ -201,7 +201,7 @@ if nargin>2
|
|||
unix('chmod -R u+x intermediary_results_from_master_and_slaves');
|
||||
end
|
||||
|
||||
disp('');
|
||||
skipline()
|
||||
|
||||
if options.optimization_routine==1
|
||||
% Set options for csminwel.
|
||||
|
|
|
@ -136,7 +136,7 @@ for its = 1:maxit
|
|||
end
|
||||
|
||||
check = 1;
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('SOLVE: maxit has been reached')
|
||||
|
||||
% 01/14/01 MJ lnsearch is now a separate function
|
||||
|
|
|
@ -55,7 +55,7 @@ end
|
|||
|
||||
if info(1)
|
||||
hv = options_.homotopy_values;
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('WARNING: homotopy step was not completed')
|
||||
disp('The last values for which a solution was found are:')
|
||||
for i=1:length(ip)
|
||||
|
|
|
@ -83,9 +83,9 @@ if info(1)
|
|||
end
|
||||
|
||||
if ~options_.noprint
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('MODEL SUMMARY')
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp([' Number of variables: ' int2str(M_.endo_nbr)])
|
||||
disp([' Number of stochastic shocks: ' int2str(M_.exo_nbr)])
|
||||
disp([' Number of state variables: ' int2str(M_.nspred)])
|
||||
|
@ -97,9 +97,9 @@ if ~options_.noprint
|
|||
lh = size(labels,2)+2;
|
||||
dyntable(my_title,headers,labels,M_.Sigma_e,lh,10,6);
|
||||
if options_.partial_information
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp('SOLUTION UNDER PARTIAL INFORMATION')
|
||||
disp(' ')
|
||||
skipline()
|
||||
|
||||
if isfield(options_,'varobs')&& ~isempty(options_.varobs)
|
||||
PCL_varobs=options_.varobs;
|
||||
|
@ -113,7 +113,7 @@ if ~options_.noprint
|
|||
disp([' ' PCL_varobs(i,:)])
|
||||
end
|
||||
end
|
||||
disp(' ')
|
||||
skipline()
|
||||
if options_.order <= 2 && ~PI_PCL_solver
|
||||
disp_dr(oo_.dr,options_.order,var_list);
|
||||
end
|
||||
|
|
|
@ -48,10 +48,10 @@ dataset_.info.varobs = varobs;
|
|||
|
||||
% Test the number of variables in the database.
|
||||
if dataset_.info.nvobs-size(rawdata,2)
|
||||
disp(' ')
|
||||
skipline()
|
||||
disp(['Declared number of observed variables = ' int2str(dataset.info.nvobs)])
|
||||
disp(['Number of variables in the database = ' int2str(size(rawdata,2))])
|
||||
disp(' ')
|
||||
skipline()
|
||||
error(['Estimation can''t take place because the declared number of observed' ...
|
||||
'variables doesn''t match the number of variables in the database.'])
|
||||
end
|
||||
|
|
|
@ -68,8 +68,7 @@ if strcmp(ext(2:end),'m')
|
|||
fprintf(fid,'%s\n',deblank(block(i,:)));
|
||||
end
|
||||
fclose(fid);
|
||||
disp(' ')
|
||||
disp(' ')
|
||||
skipline(2)
|
||||
system(['makeinfo --plaintext --no-split --no-validate ' fun '.texi']);
|
||||
delete([fun '.texi']);
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue