From a99ca9f450ff96127fb06f0f739addac28b98c65 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Villemot?= <sebastien@dynare.org>
Date: Thu, 26 Nov 2020 16:00:13 +0100
Subject: [PATCH] =?UTF-8?q?Remove=20obsolete=20=E2=80=9Cvar=5Festimation?=
 =?UTF-8?q?=E2=80=9D=20statement?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/ComputingTasks.cc | 23 -----------------------
 src/ComputingTasks.hh | 10 ----------
 src/DynareBison.yy    | 17 +----------------
 src/DynareFlex.ll     |  1 -
 src/ParsingDriver.cc  |  6 ------
 src/ParsingDriver.hh  |  2 --
 6 files changed, 1 insertion(+), 58 deletions(-)

diff --git a/src/ComputingTasks.cc b/src/ComputingTasks.cc
index 99dff62f..496afc70 100644
--- a/src/ComputingTasks.cc
+++ b/src/ComputingTasks.cc
@@ -412,29 +412,6 @@ PacModelStatement::writeJsonOutput(ostream &output) const
   output << "}" << endl;
 }
 
-VarEstimationStatement::VarEstimationStatement(OptionsList options_list_arg) :
-  options_list{move(options_list_arg)}
-{
-}
-
-void
-VarEstimationStatement::checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings)
-{
-  if (auto it = options_list.string_options.find("var_estimation.model_name");
-      it == options_list.string_options.end())
-    {
-      cerr << "ERROR: You must provide the model name to the var_estimation statement." << endl;
-      exit(EXIT_FAILURE);
-    }
-}
-
-void
-VarEstimationStatement::writeOutput(ostream &output, const string &basename, bool minimal_workspace) const
-{
-  options_list.writeOutput(output);
-  output << "oo_ = var_estimation(M_, options_, oo_);" << endl;
-}
-
 StochSimulStatement::StochSimulStatement(SymbolList symbol_list_arg,
                                          OptionsList options_list_arg) :
   symbol_list{move(symbol_list_arg)},
diff --git a/src/ComputingTasks.hh b/src/ComputingTasks.hh
index 948a9b09..c186c268 100644
--- a/src/ComputingTasks.hh
+++ b/src/ComputingTasks.hh
@@ -156,16 +156,6 @@ public:
   void writeJsonOutput(ostream &output) const override;
 };
 
-class VarEstimationStatement : public Statement
-{
-private:
-  const OptionsList options_list;
-public:
-  explicit VarEstimationStatement(OptionsList options_list_arg);
-  void checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings) override;
-  void writeOutput(ostream &output, const string &basename, bool minimal_workspace) const override;
-};
-
 class ForecastStatement : public Statement
 {
 private:
diff --git a/src/DynareBison.yy b/src/DynareBison.yy
index ecd3944c..b7267248 100644
--- a/src/DynareBison.yy
+++ b/src/DynareBison.yy
@@ -130,7 +130,7 @@ class ParsingDriver;
 %precedence UNARY
 %nonassoc POWER
 %token EXP LOG LN LOG10 SIN COS TAN ASIN ACOS ATAN ERF DIFF ADL AUXILIARY_MODEL_NAME
-%token SQRT CBRT NORMCDF NORMPDF STEADY_STATE EXPECTATION VAR_ESTIMATION OCCBIN_LIKELIHOOD OCCBIN_SMOOTHER
+%token SQRT CBRT NORMCDF NORMPDF STEADY_STATE EXPECTATION OCCBIN_LIKELIHOOD OCCBIN_SMOOTHER
 /* GSA analysis */
 %token DYNARE_SENSITIVITY MORRIS STAB REDFORM PPRIOR PRIOR_RANGE PPOST ILPTAU MORRIS_NLIV
 %token MORRIS_NTRA NSAM LOAD_REDFORM LOAD_RMSE LOAD_STAB ALPHA2_STAB LOGTRANS_REDFORM THRESHOLD_REDFORM
@@ -227,7 +227,6 @@ statement : parameters
           | simul
           | stoch_simul
           | estimation
-          | var_estimation
           | estimated_params
           | estimated_params_bounds
           | estimated_params_init
@@ -445,18 +444,6 @@ var_expectation_model_option : VARIABLE EQUAL symbol
                                { driver.var_expectation_model_discount = $3; }
                              ;
 
-var_estimation : VAR_ESTIMATION '(' var_estimation_options_list ')' ';'
-                 { driver.run_var_estimation(); }
-               ;
-
-var_estimation_options_list : var_estimation_options_list COMMA var_estimation_options
-                            | var_estimation_options
-                            ;
-
-var_estimation_options : o_var_datafile
-                       | o_var_model_name
-                       ;
-
 nonstationary_var_list : nonstationary_var_list symbol
                          { driver.declare_nonstationary_var($2); }
                        | nonstationary_var_list COMMA symbol
@@ -3156,8 +3143,6 @@ o_series : SERIES EQUAL symbol { driver.option_str("series", $3); };
 o_series2 : SERIES EQUAL symbol { driver.option_num("series", $3); };
 o_datafile : DATAFILE EQUAL filename { driver.option_str("datafile", $3); };
 o_filename : FILENAME EQUAL filename { driver.option_str("filename", $3); };
-o_var_datafile : DATAFILE EQUAL filename { driver.option_str("var_estimation.datafile", $3); };
-o_var_model_name : symbol { driver.option_str("var_estimation.model_name", $1); };
 o_var_eq_tags : EQTAGS EQUAL vec_str { driver.option_vec_str("var.eqtags", $3); }
 o_dirname : DIRNAME EQUAL filename { driver.option_str("dirname", $3); };
 o_huge_number : HUGE_NUMBER EQUAL non_negative_number { driver.option_num("huge_number", $3); };
diff --git a/src/DynareFlex.ll b/src/DynareFlex.ll
index 4ec3ac08..5b5c6b84 100644
--- a/src/DynareFlex.ll
+++ b/src/DynareFlex.ll
@@ -115,7 +115,6 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4])
 <INITIAL>periods 	{BEGIN DYNARE_STATEMENT; return token::PERIODS;}
 <INITIAL>model_info {BEGIN DYNARE_STATEMENT; return token::MODEL_INFO;}
 <INITIAL>estimation {BEGIN DYNARE_STATEMENT; return token::ESTIMATION;}
-<INITIAL>var_estimation {BEGIN DYNARE_STATEMENT; return token::VAR_ESTIMATION;}
 <INITIAL>set_time {BEGIN DYNARE_STATEMENT; return token::SET_TIME;}
 <INITIAL>data {BEGIN DYNARE_STATEMENT; return token::DATA;}
 <INITIAL>varobs 	{BEGIN DYNARE_STATEMENT; return token::VAROBS;}
diff --git a/src/ParsingDriver.cc b/src/ParsingDriver.cc
index d262f8dc..b2a4085f 100644
--- a/src/ParsingDriver.cc
+++ b/src/ParsingDriver.cc
@@ -470,12 +470,6 @@ ParsingDriver::end_nonstationary_var(bool log_deflator, expr_t deflator)
   reset_data_tree();
 }
 
-void
-ParsingDriver::run_var_estimation()
-{
-  mod_file->addStatement(make_unique<VarEstimationStatement>(options_list));
-}
-
 void
 ParsingDriver::periods(const string &periods)
 {
diff --git a/src/ParsingDriver.hh b/src/ParsingDriver.hh
index ea339508..6f735aca 100644
--- a/src/ParsingDriver.hh
+++ b/src/ParsingDriver.hh
@@ -874,8 +874,6 @@ public:
   void perfect_foresight_setup();
   void perfect_foresight_solver();
   void prior_posterior_function(bool prior_func);
-  //! Runs VAR estimation process
-  void run_var_estimation();
   //! Method of Moments estimation statement
   void method_of_moments();
   //! Add a var_expectation_model statement
-- 
GitLab