diff --git a/src/ComputingTasks.cc b/src/ComputingTasks.cc index 955d5bbbc8f8f6a3d239d83536080037876382f7..c573127baae0aeab87886403b10a63a5e0aca407 100644 --- a/src/ComputingTasks.cc +++ b/src/ComputingTasks.cc @@ -733,56 +733,6 @@ ForecastStatement::writeJsonOutput(ostream &output) const output << "}"; } -DetCondForecast::DetCondForecast(SymbolList symbol_list_arg, - OptionsList options_list_arg, - const bool linear_decomposition_arg) : - options_list{move(options_list_arg)}, - symbol_list{move(symbol_list_arg)}, - linear_decomposition{linear_decomposition_arg} -{ - -} - -void -DetCondForecast::writeOutput(ostream &output, const string &basename, bool minimal_workspace) const -{ - options_list.writeOutput(output); - if (linear_decomposition) - { - output << "first_order_solution_to_compute = 1;" << endl - << "if isfield(oo_, 'dr')" << endl - << " if isfield(oo_.dr, 'ghx') && isfield(oo_.dr, 'ghu') && isfield(oo_.dr, 'state_var') && isfield(oo_.dr, 'order_var')" << endl - << " first_order_solution_to_compute = 0;" << endl - << " end" << endl - << "end" << endl - << "if first_order_solution_to_compute" << endl - << " fprintf('%s','Computing the first order solution ...');" << endl - << " options_.nograph = true;" << endl - << " options_.order = 1;" << endl - << " options_.noprint = true;" << endl - << " options_.nocorr = true;" << endl - << " options_.nomoments = true;" << endl - << " options_.nodecomposition = true;" << endl - << " options_.nofunctions = true;" << endl - << " options_.irf = 0;" << endl - << " tmp_periods = options_.periods;" << endl - << " options_.periods = 0;" << endl - << " var_list_ = char();" << endl - << " info = stoch_simul(var_list_);" << endl - << R"( fprintf('%s\n','done');)" << endl - << " options_.periods = tmp_periods;" << endl - << "end" << endl; - } - vector<string> symbols = symbol_list.get_symbols(); - if (symbols.size() > 0) - output << symbols[1] << " = det_cond_forecast("; - for (unsigned int i = 0; i < symbols.size() - 1; i++) - output << symbols[i] << ", "; - if (symbols.size() > 0) - output << symbols[symbols.size() - 1]; - output << ");" << endl; -} - RamseyModelStatement::RamseyModelStatement(OptionsList options_list_arg) : options_list{move(options_list_arg)} { diff --git a/src/ComputingTasks.hh b/src/ComputingTasks.hh index 09d2fef85edc0eb12f4853bcfeb2fd49729e3104..03d7da29ddaeb97ad54c9f6502cee373c577373d 100644 --- a/src/ComputingTasks.hh +++ b/src/ComputingTasks.hh @@ -95,19 +95,6 @@ public: void writeJsonOutput(ostream &output) const override; }; -class DetCondForecast : public Statement -{ -private: - const OptionsList options_list; - const SymbolList symbol_list; - const bool linear_decomposition; -public: - DetCondForecast(SymbolList symbol_list_arg, - OptionsList options_list_arg, - const bool linear_decompositiontion_arg); - void writeOutput(ostream &output, const string &basename, bool minimal_workspace) const override; -}; - class ModelInfoStatement : public Statement { private: diff --git a/src/DynareBison.yy b/src/DynareBison.yy index dc16976c25023397faab61d792db1bb636d3fb15..47106020eb2f49e739009037ca0f0f93c4b67743 100644 --- a/src/DynareBison.yy +++ b/src/DynareBison.yy @@ -80,7 +80,7 @@ class ParsingDriver; %token BVAR_REPLIC BYTECODE ALL_VALUES_REQUIRED PROPOSAL_DISTRIBUTION REALTIME VINTAGE %token CALIB_SMOOTHER CHANGE_TYPE CHECK CONDITIONAL_FORECAST CONDITIONAL_FORECAST_PATHS CONF_SIG CONSTANT CONTROLLED_VAREXO CORR CUTOFF CYCLE_REDUCTION LOGARITHMIC_REDUCTION %token COMMA CONSIDER_ALL_ENDOGENOUS CONSIDER_ONLY_OBSERVED INITIAL_CONDITION_DECOMPOSITION -%token DATAFILE FILE SERIES DET_COND_FORECAST DOUBLING DR_CYCLE_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_MAXITER DR_ALGO DROP DSAMPLE DYNASAVE DYNATYPE CALIBRATION DIFFERENTIATE_FORWARD_VARS +%token DATAFILE FILE SERIES DOUBLING DR_CYCLE_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_MAXITER DR_ALGO DROP DSAMPLE DYNASAVE DYNATYPE CALIBRATION DIFFERENTIATE_FORWARD_VARS %token END ENDVAL EQUAL ESTIMATION ESTIMATED_PARAMS ESTIMATED_PARAMS_BOUNDS ESTIMATED_PARAMS_INIT EXTENDED_PATH ENDOGENOUS_PRIOR EXPRESSION %token FILENAME DIRNAME FILTER_STEP_AHEAD FILTERED_VARS FIRST_OBS LAST_OBS SET_TIME OSR_PARAMS_BOUNDS KEEP_KALMAN_ALGO_IF_SINGULARITY_IS_DETECTED %token <string> FLOAT_NUMBER DATES @@ -310,7 +310,6 @@ statement : parameters | smm_estimation | shock_groups | init2shocks - | det_cond_forecast | var_expectation_model | compilation_setup ; @@ -1436,16 +1435,6 @@ prior_posterior_function_options : o_function | o_sampling_draws ; -det_cond_forecast : DET_COND_FORECAST '(' symbol ')' ';' - { driver.det_cond_forecast_linear_decomposition($3); } - | DET_COND_FORECAST '(' symbol COMMA symbol ')' ';' - { driver.det_cond_forecast_linear_decomposition($3,$5); } - | DET_COND_FORECAST '(' symbol COMMA simul_options_list ')' ';' - { driver.det_cond_forecast_linear_decomposition($3); } - | DET_COND_FORECAST '(' symbol COMMA symbol COMMA simul_options_list ')' ';' - { driver.det_cond_forecast_linear_decomposition($3,$5); } - ; - simul : SIMUL ';' { driver.simul(); } | SIMUL '(' simul_options_list ')' ';' diff --git a/src/DynareFlex.ll b/src/DynareFlex.ll index 7cc2b6cd89a27269fc35ca286f32ef92137f71eb..7b0d27c7f5616aeb06e2ac55d9d366cd1d7f2b98 100644 --- a/src/DynareFlex.ll +++ b/src/DynareFlex.ll @@ -187,7 +187,6 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4]|w([1-9]{1}|[1-4][0-9]|5[0-2])) <INITIAL>smoother2histval {BEGIN DYNARE_STATEMENT; return token::SMOOTHER2HISTVAL;} <INITIAL>perfect_foresight_setup {BEGIN DYNARE_STATEMENT; return token::PERFECT_FORESIGHT_SETUP;} <INITIAL>perfect_foresight_solver {BEGIN DYNARE_STATEMENT; return token::PERFECT_FORESIGHT_SOLVER;} -<INITIAL>det_cond_forecast {BEGIN DYNARE_STATEMENT; return token::DET_COND_FORECAST;} <INITIAL>compilation_setup {BEGIN DYNARE_STATEMENT; return token::COMPILATION_SETUP;} <DYNARE_STATEMENT>; { diff --git a/src/ParsingDriver.cc b/src/ParsingDriver.cc index 98a8192f1bc411f60636d5eafe30558764922bb9..c2d17d76b6a39ba6d338d203cc3e6227172fb629 100644 --- a/src/ParsingDriver.cc +++ b/src/ParsingDriver.cc @@ -2446,27 +2446,6 @@ ParsingDriver::conditional_forecast_paths() det_shocks.clear(); } -void -ParsingDriver::det_cond_forecast_linear_decomposition(const string &plan) -{ - symbol_list.clear(); - symbol_list.addSymbol(plan); - mod_file->addStatement(make_unique<DetCondForecast>(symbol_list, options_list, mod_file->linear_decomposition)); - symbol_list.clear(); - options_list.clear(); -} - -void -ParsingDriver::det_cond_forecast_linear_decomposition(const string &plan, const string &dset) -{ - symbol_list.clear(); - symbol_list.addSymbol(plan); - symbol_list.addSymbol(dset); - mod_file->addStatement(make_unique<DetCondForecast>(symbol_list, options_list, mod_file->linear_decomposition)); - symbol_list.clear(); - options_list.clear(); -} - void ParsingDriver::calib_smoother() { diff --git a/src/ParsingDriver.hh b/src/ParsingDriver.hh index 32eee6ff74f7eb7550dda6a2e3661bbfcdaa22d3..95f5334f80f7a7845108f13c7d4b41d103a8987a 100644 --- a/src/ParsingDriver.hh +++ b/src/ParsingDriver.hh @@ -716,9 +716,6 @@ public: void conditional_forecast_paths(); //! Plot conditional forecast statement void plot_conditional_forecast(const string &periods = ""); - //! Deterministic conditional forecast statement - void det_cond_forecast_linear_decomposition(const string &plan); - void det_cond_forecast_linear_decomposition(const string &plan, const string &dset); //! Smoother on calibrated models void calib_smoother(); //! Extended path