Merge pull request #1358 from JohannesPfeifer/nograph

Implement posterior_nograph option
time-shift
Stéphane Adjemian 2017-01-05 06:52:08 +01:00 committed by GitHub
commit b464226eaa
8 changed files with 41 additions and 9 deletions

View File

@ -4041,6 +4041,10 @@ will be saved to disk (to the format specified by @code{graph_format}
option, except if @code{graph_format=none}) and displayed to screen
(unless @code{nodisplay} option is used).
@item graph
@anchor{graph}
Re-enables the generation of graphs previously shut off with @ref{nograph}.
@item nodisplay
@anchor{nodisplay} Do not display the graphs, but still save them to disk
(unless @code{nograph} is used).
@ -5193,6 +5197,15 @@ Default value is @code{1}.
@item nograph
@xref{nograph}.
@item posterior_nograph
@anchor{posterior_nograph}
Suppresses the generation of graphs associated with Bayesian IRFs (@ref{bayesian_irf}),
posterior smoothed objects (@ref{smoother}), and posterior forecasts (@ref{forecast}).
@item posterior_graph
@anchor{posterior_graph}
Re-enables the generation of graphs previously shut off with @ref{posterior_nograph}.
@item nodisplay
@xref{nodisplay}.
@ -7041,6 +7054,11 @@ the decomposition. Groups of shocks are defined in @xref{shock_groups} block.
@item colormap = @var{COLORMAP_NAME}
@anchor{colormap}. Controls the colormap used for the shocks decomposition
graphs. See @code{colormap} in Matlab/Octave manual.
@item nograph
@xref{nograph}. Suppresses the display and creation only within the @code{shock_decomposition}-command
but does not affect other commands.
@end table
@vindex oo_.shock_decomposition

View File

@ -362,7 +362,7 @@ end
% .tex generation always run in sequentially. This portion of code is execute in parallel by
% PosteriorIRF_core2.m function.
if ~options_.nograph && ~options_.no_graph.posterior
% Save the local variables.
localVars=[];
@ -459,5 +459,6 @@ else
end
% END parallel code!
end
fprintf('Estimation::mcmc: Posterior IRFs, done!\n');

View File

@ -134,6 +134,8 @@ options_.graphics.line_width = 1;
options_.graph_format = 'eps';
options_.nodisplay = 0;
options_.nograph = 0;
options_.no_graph.posterior = 0;
options_.no_graph.shock_decomposition = 0;
options_.XTick = [];
options_.XTickLabel = [];
options_.console_mode = 0;
@ -790,9 +792,6 @@ options_.mcppath.mu0 = [];
%Figure options
options_.figures.textwidth=0.8;
% Shock decomposition options
options_.shock_decomp.nograph = 0;
% initialize persistent variables in priordens()
priordens([],[],[],[],[],[],1);
% initialize persistent variables in dyn_first_order_solver()

View File

@ -292,6 +292,7 @@ end
%% Finally I build the plots.
%%
if ~options_.nograph && ~options_.no_graph.posterior
% Block of code executed in parallel, with the exception of file
% .tex generation always run sequentially. This portion of code is execute in parallel by
% pm3_core1.m function.
@ -394,5 +395,6 @@ if options_.TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'%% End of TeX file.\n');
fclose(fidTeX);
end
end
fprintf(['Estimation::mcmc: ' tit1 ', done!\n']);
fprintf(['Estimation::mcmc: ' tit1 ', done!\n']);

View File

@ -139,4 +139,6 @@ else
shock_names = M_.exo_names;
end
graph_decomp(z,shock_names,M_.endo_names,i_var,options_.initial_date,M_,options_)
if ~options_.no_graph.shock_decomposition
graph_decomp(z,shock_names,M_.endo_names,i_var,options_.initial_date,M_,options_)
end

View File

@ -114,7 +114,7 @@ class ParsingDriver;
%token FILTER_ALGORITHM PROPOSAL_APPROXIMATION CUBATURE UNSCENTED MONTECARLO DISTRIBUTION_APPROXIMATION
%token <string_val> NAME
%token NAN_CONSTANT NO_STATIC NOBS NOCONSTANT NODISPLAY NOCORR NODIAGNOSTIC NOFUNCTIONS NO_HOMOTOPY
%token NOGRAPH NOMOMENTS NOPRINT NORMAL_PDF SAVE_DRAWS
%token NOGRAPH POSTERIOR_NOGRAPH POSTERIOR_GRAPH NOMOMENTS NOPRINT NORMAL_PDF SAVE_DRAWS
%token OBSERVATION_TRENDS OPTIM OPTIM_WEIGHTS ORDER OSR OSR_PARAMS MAX_DIM_COVA_GROUP ADVANCED OUTFILE OUTVARS OVERWRITE
%token PARALLEL_LOCAL_FILES PARAMETERS PARAMETER_SET PARTIAL_INFORMATION PERIODS PERIOD PLANNER_OBJECTIVE PLOT_CONDITIONAL_FORECAST PLOT_PRIORS PREFILTER PRESAMPLE
%token PERFECT_FORESIGHT_SETUP PERFECT_FORESIGHT_SOLVER NO_POSTERIOR_KERNEL_DENSITY FUNCTION
@ -1726,6 +1726,7 @@ estimation_options : o_datafile
| o_lik_algo
| o_lik_init
| o_nograph
| o_posterior_nograph
| o_nodisplay
| o_graph_format
| o_forecasts_conf_sig
@ -2823,7 +2824,12 @@ o_nograph : NOGRAPH
| GRAPH
{ driver.option_num("nograph", "0"); }
;
o_shock_decomposition_nograph : NOGRAPH { driver.option_num("shock_decomp.nograph", "1"); }
o_posterior_nograph : POSTERIOR_NOGRAPH
{ driver.option_num("no_graph.posterior","1"); }
| POSTERIOR_GRAPH
{ driver.option_num("no_graph.posterior", "0"); }
;
o_shock_decomposition_nograph : NOGRAPH { driver.option_num("no_graph.shock_decomposition", "1"); }
o_nodisplay : NODISPLAY { driver.option_num("nodisplay","1"); };
o_graph_format : GRAPH_FORMAT EQUAL allowed_graph_formats
{ driver.process_graph_format_option(); }

View File

@ -276,6 +276,8 @@ DATE -?[0-9]+([YyAa]|[Mm]([1-9]|1[0-2])|[Qq][1-4]|[Ww]([1-9]{1}|[1-4][0-9]|5[0-2
<DYNARE_STATEMENT>raftery_lewis_diagnostics {return token::RAFTERY_LEWIS_DIAGNOSTICS;}
<DYNARE_STATEMENT>graph {return token::GRAPH;}
<DYNARE_STATEMENT>nograph {return token::NOGRAPH;}
<DYNARE_STATEMENT>posterior_graph {return token::POSTERIOR_GRAPH;}
<DYNARE_STATEMENT>posterior_nograph {return token::POSTERIOR_NOGRAPH;}
<DYNARE_STATEMENT>nodisplay {return token::NODISPLAY;}
<DYNARE_STATEMENT>graph_format {return token::GRAPH_FORMAT;}
<DYNARE_STATEMENT>eps {yylval->string_val = new string(yytext); return token::EPS;}

View File

@ -86,7 +86,8 @@ estimation(order=1,datafile=fsdat_simul,nobs=192,loglinear,mh_replic=3000,mh_nbl
geweke_interval = [0.19 0.49],
taper_steps = [4 7 15],
raftery_lewis_diagnostics,
raftery_lewis_qrs=[0.025 0.01 0.95]
raftery_lewis_qrs=[0.025 0.01 0.95],
bayesian_irf,posterior_nograph
) y m;
if ~isequal(options_.convergence.geweke.taper_steps,[4 7 15]') || ~isequal(options_.convergence.geweke.geweke_interval,[0.19 0.49])
@ -98,6 +99,7 @@ if ~isequal(options_.convergence.rafterylewis.qrs,[0.025 0.01 0.95]) || ~isequal
end
%test load_mh_file option
options_.bayesian_irf=0;
options_.smoother=0;
options_.moments_varendo=0;
options_.forecast=0;