diff --git a/matlab/dynare_sensitivity.m b/matlab/dynare_sensitivity.m index e96d4b715da6a5bbad6c19db517fb36c8820c02b..2ce58ee2c443bafee96884b2cfb6c77bad90dd96 100644 --- a/matlab/dynare_sensitivity.m +++ b/matlab/dynare_sensitivity.m @@ -31,6 +31,7 @@ lgy_ = M_.endo_names; x0=[]; options_gsa = set_default_option(options_gsa,'datafile',[]); +options_gsa = set_default_option(options_gsa,'rmse',0); if isfield(options_gsa,'nograph'), options_.nograph=options_gsa.nograph; end @@ -46,7 +47,14 @@ end options_.order = 1; -if ~isempty(options_gsa.datafile) || isempty(bayestopt_), +if ~isempty(options_gsa.datafile) || isempty(bayestopt_) || options_gsa.rmse, + if isempty(options_gsa.datafile) && options_gsa.rmse, + disp('The data file and all relevant estimation options ') + disp('[first_obs, nobs, presample, prefilter, loglinear, lik_init, kalman_algo, ...]') + disp('must be specified for RMSE analysis!'); + error('Sensitivity anaysis error!'); + end + options_.datafile = options_gsa.datafile; if isfield(options_gsa,'first_obs'), options_.first_obs=options_gsa.first_obs; @@ -142,7 +150,6 @@ options_gsa = set_default_option(options_gsa,'namendo',[]); options_gsa = set_default_option(options_gsa,'namlagendo',[]); options_gsa = set_default_option(options_gsa,'namexo',[]); % RMSE mapping -options_gsa = set_default_option(options_gsa,'rmse',0); options_gsa = set_default_option(options_gsa,'lik_only',0); options_gsa = set_default_option(options_gsa,'var_rmse',options_.varobs); options_gsa = set_default_option(options_gsa,'pfilt_rmse',0.1); diff --git a/matlab/newrat.m b/matlab/newrat.m index 0eeb3087e975968c2834acd3d83acb615ef9f45a..af6bf9baca07df3f9606c382bbc520f0c4603fb6 100644 --- a/matlab/newrat.m +++ b/matlab/newrat.m @@ -236,7 +236,7 @@ while norm(gg)>gtol && check==0 && jit<nit end H = igg; end - else + elseif analytic_derivation, [fvalx,gg,hh]=feval(func0,xparam1,DynareDataset,DynareOptions,Model,EstimatedParameters,BayesInfo,DynareResults); hhg=hh; H = inv(hh); diff --git a/tests/gsa/ls2003.mod b/tests/gsa/ls2003.mod index 44c55420b438dc04d97982a561b87244491fa609..aabb1d8d3adc44b8008c049e9485fe16419b5265 100644 --- a/tests/gsa/ls2003.mod +++ b/tests/gsa/ls2003.mod @@ -214,5 +214,6 @@ disp('Press ENTER to continue'); pause(5); // prefilter=1,mh_jscale=0.5,mh_replic=0, mode_compute=0, mh_drop=0.6); dynare_sensitivity(nodisplay, graph_format=fig,stab=0, // no need for stability analysis since the posterior sample is surely OK +datafile=data_ca1,first_obs=8,nobs=79,prefilter=1, rmse=1,ppost=1);