utilities + plot shock decompositions + init condition decompositions
- Commit acf2ecc9: adds utility files to get steady state st. error of shocks, smoother/updated variables and irfs by name of variables/shocks.
- Commit fd534cab traps case of an option in cell format in set_default_options.
- All other commits provide fixes and enhancements of plot shock/init decompositions.
- Required associated pre-processor extensions:
- new plot_shock_decomposition option:
max_nrows
[default=6]. This allows users to set their preferred max number of rows in the subplot layout of detailed shock decomp graphs. Columns are always 3. - allow initial_condition_decomposition to get more options, with same default as for plot_shock_decompositions.
nodisplay
,graph_format
,fig_name
,max_nrows
. - new command:
squeeze_shock_decomp [optional list of vars]
. For large models, the size of info stored by shock decompositions (especially various settings of realtime decomps) may become huge. This command allows to squeeze info according to 2 criteria: (1) automatic (default): plot_shock_decomp stores the variable for which decompositions have been plotted during the dynare instance. If use the commandsqueeze_shock_decomp
at the end of the dynare file, this will store in oo_ only the decomposition info for plotted variables; (2) adding a list of variables after the command stores info only for variables listed.
Usage: squeeze_shock_decomp;
or squeeze_shock_decomp var1 var2 ... ;
Preprocessor output: with auto mode [oo_,options_] = squeeze_shock_decomp(M_,oo_,options_);
; with list of variables [oo_,options_] = squeeze_shock_decomp(M_,oo_,options_,varlist);
where varlist is a cell array, as usual in 4.6.
List of enhancements/bug fixes:
- allow aoa plots to work with lists variables: current aoa handling needs to be further adjusted for epilogue variables;
- bug fix for aoa variables requiring aux variables;
- completed aoa realtime decomps for the case
vintage=0
; - parsimonious storage of shock decomp results in oo_;
- improve legend info for initial condition shock decomp;
- fixed interactive mode leading to crashes, especially for aoa plots.
Detail of new functions
- get_mean: get steadystate of vars by name.
Usage: ss = get_mean('name1','name2', ... , 'order' );
or get_mean name1 name2 ... order
.
Optionally, as last input argument, one can provide integer 1 (default) or 2. The latter would trigger the steady state at order 2.
- get_shock_stderr_by_name: get shock std err by name
Usage: sd = get_shock_stderr_by_name('exoname1','exoname2')
or get_shock_stderr_by_name exoname1 exoname2
- get_smooth: get smoothed series of vars/shocks by name.
Usage: y= get_smooth('name1','name2','shock1','shock2');
or get_smooth name1 name2 shock1 shock2 etc.
- get_updated: get updated series of vars by name.
Usage: y = get_update('name1','name2',etc.);
or get_update name1 name2 etc.
- get_irf: get irf of vars by name for an individual shock exoname. There must be 1 individual shock name and an arbitrary list of endo variables.
Usage: y = get_irf('exoname','name1','name2');
or get_irf exoname name1 name2