diff --git a/src/+gui_auxiliary/dynare_command_options_sensitivity.m b/src/+gui_auxiliary/dynare_command_options_sensitivity.m index 691a17fce18b15b77ee075ae3761234eab19b152..a01396c06673c942c89a8759e9a98fae124d7679 100644 --- a/src/+gui_auxiliary/dynare_command_options_sensitivity.m +++ b/src/+gui_auxiliary/dynare_command_options_sensitivity.m @@ -44,19 +44,19 @@ dynare_gui_.sensitivity.sampling{num,4} = 'Size of the Monte-Carlo sample.'; % a num = num + 1; dynare_gui_.sensitivity.sampling{num,1} = 'ilptau'; dynare_gui_.sensitivity.sampling{num,2} = 1; -dynare_gui_.sensitivity.sampling{num,3} = 'check_option'; +dynare_gui_.sensitivity.sampling{num,3} = {'1', '0'}; dynare_gui_.sensitivity.sampling{num,4} = 'If equal to 1 use lptau quasi-Monte-Carlo. Otherwise use LHS Monte-Carlo.'; num = num + 1; dynare_gui_.sensitivity.sampling{num,1} = 'pprior'; dynare_gui_.sensitivity.sampling{num,2} = 1; -dynare_gui_.sensitivity.sampling{num,3} = 'check_option'; +dynare_gui_.sensitivity.sampling{num,3} = {'1', '0'}; dynare_gui_.sensitivity.sampling{num,4} = 'If equal to 1, sample from the prior distributions. If equal to 0, sample from the multivariate normal.'; num = num + 1; dynare_gui_.sensitivity.sampling{num,1} = 'prior_range'; dynare_gui_.sensitivity.sampling{num,2} = 1; -dynare_gui_.sensitivity.sampling{num,3} = 'check_option'; +dynare_gui_.sensitivity.sampling{num,3} = {'1', '0'}; dynare_gui_.sensitivity.sampling{num,4} = 'If equal to 1, sample uniformly from prior ranges. If equal to 0, sample from prior distributions.'; num = num + 1; @@ -93,7 +93,7 @@ dynare_gui_.sensitivity.sampling{num,4} = 'When pprior=0 and ppost=0, allows for num = 1; dynare_gui_.sensitivity.stability_mapping{num,1} = 'stab'; dynare_gui_.sensitivity.stability_mapping{num,2} = 1; -dynare_gui_.sensitivity.stability_mapping{num,3} = 'check_option'; +dynare_gui_.sensitivity.stability_mapping{num,3} = {'1', '0'}; dynare_gui_.sensitivity.stability_mapping{num,4} = 'If equal to 1, perform stability mapping. If equal to 0, do not perform stability mapping.'; num = num + 1; diff --git a/src/gui_realtime_shock_decomposition.m b/src/gui_realtime_shock_decomposition.m index d7cd78d1355b33bb7ab6076c0ac178668668d948..3ccc5f79e07aba3026ed35b01ad077fceaafda71 100644 --- a/src/gui_realtime_shock_decomposition.m +++ b/src/gui_realtime_shock_decomposition.m @@ -269,6 +269,15 @@ handles.pushbuttonClose = uicontrol( ... 'Position', [spc*3+dwidth*1.5 top-num*dheight dwidth*2 dheight/2], ... 'String', {'qoq','yoy','aoa'}, ... 'Value', 1); + + num = num+1.5; + handles.noGraph = uicontrol(... + 'Parent', handles.uipanelResults, ... + 'Style','checkbox',... + 'Units', 'normalized', ... + 'Position', [spc top-num*dheight 1-spc*4 dheight/2], ... + 'String', 'Only compute shock decomposition, do not plot',... + 'FontWeight', 'bold'); end function pushbuttonShockDecomposition_Callback(hObject, ~) @@ -300,6 +309,8 @@ handles.pushbuttonClose = uicontrol( ... options_.nodisplay = 0; options_.plot_priors = 0; options_.type = handles.type.String; + options_.no_graph.shock_decomposition = handles.noGraph.Value; + gui_tools.project_log_entry('Running shock decomposition','...'); [jObj, guiObj] = gui_tools.create_animated_screen('Running shock decomposition, please wait...', tabId); var_list_ = handles.endoTable.Data([handles.endoTable.Data{:,1}], 2); @@ -394,6 +405,7 @@ handles.pushbuttonClose = uicontrol( ... handles.lastPeriodYear.Value = handles.lastPeriodYearDefault; handles.useShockGrouping.Value = 0; handles.type.Value = 1; + handles.noGraph = 0; end function close_tab(~, ~, hTab) diff --git a/src/gui_sensitivity_analysis.m b/src/gui_sensitivity_analysis.m index a703bbc541c4f9cd3e143de3aac2ffd82131bbc8..8dcebaf61f62b0f680d781c0e2b13bc66b2f145c 100644 --- a/src/gui_sensitivity_analysis.m +++ b/src/gui_sensitivity_analysis.m @@ -35,6 +35,8 @@ bg_color = char(getappdata(0, 'bg_color')); handles = []; gui_size = gui_tools.get_gui_elements_size(tabId); +do_not_check_all_results = 0; + if ~isfield(model_settings, 'sensitivity') model_settings.sensitivity = struct(); end @@ -52,7 +54,8 @@ handles.sensitivity = uicontrol( ... 'Tag', 'sensitivity', ... 'Style', 'text', 'BackgroundColor', bg_color,... 'Units', 'normalized', 'Position', [0.01 0.01 0.98 0.98], ... - 'FontAngle', 'italic','String', comm_str, ... + 'FontAngle', 'italic', ... + 'String', comm_str, ... 'TooltipString', comm_str, ... 'HorizontalAlignment', 'left'); @@ -74,6 +77,22 @@ handles.pushbuttonSensitivity = uicontrol( ... options_ = old_options_; for ii = 1:size(names, 1) switch names{ii} + case 'ilptau' + if options_gsa.(names{ii}) == 2 + options_gsa.ilptau = 0; + end + case 'pprior' + if options_gsa.(names{ii}) == 2 + options_gsa.pprior = 0; + end + case 'prior_range' + if options_gsa.(names{ii}) == 2 + options_gsa.prior_range = 0; + end + case 'stab' + if options_gsa.(names{ii}) == 2 + options_gsa.stab = 0; + end case 'namendo' if contains(options_gsa.(names{ii}), ',') namendo_ = strsplit(options_gsa.(names{ii}), ','); @@ -146,7 +165,7 @@ handles.pushbuttonCommandDefinition = uicontrol( ... try new_comm = getappdata(0, 'sensitivity'); model_settings.sensitivity = new_comm; - comm_str = gui_tools.command_string('dynare_sensitivity', new_comm); + comm_str = gui_tools.command_string('sensitivity', new_comm); handles.sensitivity.String = comm_str; gui_tools.project_log_entry('Defined sensitivity command',comm_str); diff --git a/src/gui_shock_decomposition.m b/src/gui_shock_decomposition.m index a75c7e9cf43ad6752f4187c28cb18f8e84745904..da40d6143c1378f07dc77eb7bec752e103796376 100644 --- a/src/gui_shock_decomposition.m +++ b/src/gui_shock_decomposition.m @@ -247,6 +247,15 @@ handles.pushbuttonClose = uicontrol( ... 'Position', [spc*3+dwidth*1.5 top-num*dheight dwidth*2 dheight/2], ... 'String', {'qoq','yoy','aoa'}, ... 'Value', 1); + + num = num+1.5; + handles.noGraph = uicontrol(... + 'Parent', handles.uipanelResults, ... + 'Style','checkbox',... + 'Units', 'normalized', ... + 'Position', [spc top-num*dheight 1-spc*4 dheight/2], ... + 'String', 'Only compute shock decomposition, do not plot',... + 'FontWeight', 'bold'); end function pushbuttonShockDecomposition_Callback(hObject, ~) @@ -305,6 +314,7 @@ handles.pushbuttonClose = uicontrol( ... options_.model_settings.shocks = model_settings.shocks; options_.shock_grouping = handles.useShockGrouping.Value; options_.shock_decomp.init_state = handles.useInitState.Value; + options_.no_graph.shock_decomposition = handles.noGraph.Value; oo_ = shock_decomposition(M_, oo_, options_, var_list_, bayestopt_, estim_params_); end jObj.stop; @@ -370,6 +380,7 @@ handles.pushbuttonClose = uicontrol( ... handles.useShockGrouping.Value = 0; handles.useInitState.Value = 0; handles.type.Value = 1; + handles.noGraph = 0; end function close_tab(~, ~, hTab)