From eb74d48393c32f765a4adac8f723ef959f5b4aa9 Mon Sep 17 00:00:00 2001
From: Houtan Bastani <houtan@dynare.org>
Date: Thu, 13 Sep 2018 12:21:23 +0200
Subject: [PATCH] trend_component_model: replace `trends` option with `targets`
---
src/DynamicModel.cc | 16 ++++-----
src/DynareBison.yy | 6 ++--
src/DynareFlex.ll | 2 +-
src/ExprNode.cc | 44 +++++++++++------------
src/ExprNode.hh | 22 ++++++------
src/ParsingDriver.cc | 8 ++---
src/SubModel.cc | 86 ++++++++++++++++++++++----------------------
src/SubModel.hh | 28 +++++++--------
8 files changed, 106 insertions(+), 106 deletions(-)
diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc
index b42db040..8d77e5ef 100644
--- a/src/DynamicModel.cc
+++ b/src/DynamicModel.cc
@@ -3466,7 +3466,7 @@ DynamicModel::updateVarAndTrendModel() const
else if (i == 1)
{
eqnums = trend_component_model_table.getEqNums();
- trend_eqnums = trend_component_model_table.getTrendEqNums();
+ trend_eqnums = trend_component_model_table.getTargetEqNums();
}
map<string, vector<int>> trend_varr;
@@ -3509,7 +3509,7 @@ DynamicModel::updateVarAndTrendModel() const
catch (...)
{
}
- int trend_var_symb_id = equations[eqn]->get_arg2()->findTrendVariable(lhs_symb_id);
+ int trend_var_symb_id = equations[eqn]->get_arg2()->findTargetVariable(lhs_symb_id);
if (trend_var_symb_id >= 0)
{
if (symbol_table.isAuxiliaryVariable(trend_var_symb_id))
@@ -3541,7 +3541,7 @@ DynamicModel::updateVarAndTrendModel() const
else if (i == 1)
{
trend_component_model_table.setRhs(rhsr);
- trend_component_model_table.setTrendVar(trend_varr);
+ trend_component_model_table.setTargetVar(trend_varr);
}
}
}
@@ -3717,7 +3717,7 @@ void
DynamicModel::fillAutoregressiveMatrix(map<string, map<tuple<int, int, int>, expr_t>> &ARr, bool is_trend_component_model) const
{
auto eqnums = is_trend_component_model ?
- trend_component_model_table.getNonTrendEqNums() : var_model_table.getEqNums();
+ trend_component_model_table.getNonTargetEqNums() : var_model_table.getEqNums();
for (const auto & it : eqnums)
{
int i = 0;
@@ -3738,7 +3738,7 @@ DynamicModel::fillTrendComponentModelTable() const
map<string, vector<bool>> nonstationaryr;
map<string, vector<set<pair<int, int>>>> rhsr;
map<string, vector<string>> eqtags = trend_component_model_table.getEqTags();
- map<string, vector<string>> trend_eqtags = trend_component_model_table.getTrendEqTags();
+ map<string, vector<string>> trend_eqtags = trend_component_model_table.getTargetEqTags();
for (const auto & it : trend_eqtags)
{
vector<int> trend_eqnumber;
@@ -3854,8 +3854,8 @@ DynamicModel::fillErrorComponentMatrix(map<string, map<tuple<int, int, int>, exp
{
int i = 0;
map<tuple<int, int, int>, expr_t> EC;
- vector<int> trend_lhs = trend_component_model_table.getTrendLhs(it.first);
- vector<int> nontrend_eqnums = trend_component_model_table.getNonTrendEqNums(it.first);
+ vector<int> trend_lhs = trend_component_model_table.getTargetLhs(it.first);
+ vector<int> nontrend_eqnums = trend_component_model_table.getNonTargetEqNums(it.first);
vector<int> undiff_nontrend_lhs = getUndiffLHSForPac(it.first, diff_subst_table);
vector<int> parsed_undiff_nontrend_lhs;
@@ -4018,7 +4018,7 @@ DynamicModel::getUndiffLHSForPac(const string &aux_model_name,
vector<bool> diff = trend_component_model_table.getDiff(aux_model_name);
vector<int> orig_diff_var = trend_component_model_table.getOrigDiffVar(aux_model_name);
vector<int> eqnumber = trend_component_model_table.getEqNums(aux_model_name);
- vector<int> nontrend_eqnums = trend_component_model_table.getNonTrendEqNums(aux_model_name);
+ vector<int> nontrend_eqnums = trend_component_model_table.getNonTargetEqNums(aux_model_name);
for (auto eqn : nontrend_eqnums)
{
diff --git a/src/DynareBison.yy b/src/DynareBison.yy
index 90685fa9..c9c77610 100644
--- a/src/DynareBison.yy
+++ b/src/DynareBison.yy
@@ -111,7 +111,7 @@ class ParsingDriver;
%token PRINT PRIOR_MC PRIOR_TRUNC PRIOR_MODE PRIOR_MEAN POSTERIOR_MODE POSTERIOR_MEAN POSTERIOR_MEDIAN MLE_MODE PRUNING
%token <string> QUOTED_STRING
%token QZ_CRITERIUM QZ_ZERO_THRESHOLD DSGE_VAR DSGE_VARLAG DSGE_PRIOR_WEIGHT TRUNCATE PIPE_E PIPE_X PIPE_P
-%token RELATIVE_IRF REPLIC SIMUL_REPLIC RPLOT SAVE_PARAMS_AND_STEADY_STATE PARAMETER_UNCERTAINTY TRENDS
+%token RELATIVE_IRF REPLIC SIMUL_REPLIC RPLOT SAVE_PARAMS_AND_STEADY_STATE PARAMETER_UNCERTAINTY TARGETS
%token SHOCKS SHOCK_DECOMPOSITION SHOCK_GROUPS USE_SHOCK_GROUPS SIGMA_E SIMUL SIMUL_ALGO SIMUL_SEED ENDOGENOUS_TERMINAL_PERIOD
%token SMOOTHER SMOOTHER2HISTVAL SQUARE_ROOT_SOLVER STACK_SOLVE_ALGO STEADY_STATE_MODEL SOLVE_ALGO SOLVER_PERIODS ROBUST_LIN_SOLVE
%token STDERR STEADY STOCH_SIMUL SYLVESTER SYLVESTER_FIXED_POINT_TOL REGIMES REGIME REALTIME_SHOCK_DECOMPOSITION
@@ -385,7 +385,7 @@ trend_component_model_options_list : trend_component_model_options_list COMMA tr
;
trend_component_model_options : o_trend_component_model_name
- | o_trend_component_model_trends
+ | o_trend_component_model_targets
| o_trend_component_model_eq_tags
;
@@ -3209,7 +3209,7 @@ o_nobs : NOBS EQUAL vec_int
{ driver.option_vec_int("nobs", $3); }
;
o_trend_component_model_name : MODEL_NAME EQUAL symbol { driver.option_str("trend_component.name", $3); };
-o_trend_component_model_trends : TRENDS EQUAL vec_str { driver.option_vec_str("trend_component.trends", $3); }
+o_trend_component_model_targets : TARGETS EQUAL vec_str { driver.option_vec_str("trend_component.targets", $3); }
o_trend_component_model_eq_tags : EQTAGS EQUAL vec_str { driver.option_vec_str("trend_component.eqtags", $3); }
o_conditional_variance_decomposition : CONDITIONAL_VARIANCE_DECOMPOSITION EQUAL vec_int
{ driver.option_vec_int("conditional_variance_decomposition", $3); }
diff --git a/src/DynareFlex.ll b/src/DynareFlex.ll
index 9869e1bb..ae3b0631 100644
--- a/src/DynareFlex.ll
+++ b/src/DynareFlex.ll
@@ -490,7 +490,7 @@ 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>write_equation_tags {return token::WRITE_EQUATION_TAGS;}
<DYNARE_STATEMENT>eqtags {return token::EQTAGS;}
-<DYNARE_STATEMENT>trends {return token::TRENDS;}
+<DYNARE_STATEMENT>targets {return token::TARGETS;}
<DYNARE_STATEMENT>indxap {return token::INDXAP;}
<DYNARE_STATEMENT>apband {return token::APBAND;}
<DYNARE_STATEMENT>indximf {return token::INDXIMF;}
diff --git a/src/ExprNode.cc b/src/ExprNode.cc
index 63ec686d..f9e8a10e 100644
--- a/src/ExprNode.cc
+++ b/src/ExprNode.cc
@@ -557,7 +557,7 @@ NumConstNode::findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_
}
int
-NumConstNode::findTrendVariable(int lhs_symb_id) const
+NumConstNode::findTargetVariable(int lhs_symb_id) const
{
return -1;
}
@@ -1506,7 +1506,7 @@ VariableNode::findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_
}
int
-VariableNode::findTrendVariable(int lhs_symb_id) const
+VariableNode::findTargetVariable(int lhs_symb_id) const
{
return -1;
}
@@ -3219,9 +3219,9 @@ UnaryOpNode::findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table)
}
int
-UnaryOpNode::findTrendVariable(int lhs_symb_id) const
+UnaryOpNode::findTargetVariable(int lhs_symb_id) const
{
- return arg->findTrendVariable(lhs_symb_id);
+ return arg->findTargetVariable(lhs_symb_id);
}
expr_t
@@ -5146,7 +5146,7 @@ BinaryOpNode::isInStaticForm() const
}
bool
-BinaryOpNode::findTrendVariableHelper1(int lhs_symb_id, int rhs_symb_id) const
+BinaryOpNode::findTargetVariableHelper1(int lhs_symb_id, int rhs_symb_id) const
{
if (lhs_symb_id == rhs_symb_id)
return true;
@@ -5164,8 +5164,8 @@ BinaryOpNode::findTrendVariableHelper1(int lhs_symb_id, int rhs_symb_id) const
}
int
-BinaryOpNode::findTrendVariableHelper(const expr_t arg1, const expr_t arg2,
- int lhs_symb_id) const
+BinaryOpNode::findTargetVariableHelper(const expr_t arg1, const expr_t arg2,
+ int lhs_symb_id) const
{
set<int> params;
arg1->collectVariables(SymbolType::parameter, params);
@@ -5182,9 +5182,9 @@ BinaryOpNode::findTrendVariableHelper(const expr_t arg1, const expr_t arg2,
auto *test_arg1 = dynamic_cast<VariableNode *>(testarg2->get_arg1());
auto *test_arg2 = dynamic_cast<VariableNode *>(testarg2->get_arg2());
if (test_arg1 != nullptr && test_arg2 != nullptr )
- if (findTrendVariableHelper1(lhs_symb_id, endogs.begin()->first))
+ if (findTargetVariableHelper1(lhs_symb_id, endogs.begin()->first))
return endogs.rbegin()->first;
- else if (findTrendVariableHelper1(lhs_symb_id, endogs.rbegin()->first))
+ else if (findTargetVariableHelper1(lhs_symb_id, endogs.rbegin()->first))
return endogs.begin()->first;
}
}
@@ -5192,15 +5192,15 @@ BinaryOpNode::findTrendVariableHelper(const expr_t arg1, const expr_t arg2,
}
int
-BinaryOpNode::findTrendVariable(int lhs_symb_id) const
+BinaryOpNode::findTargetVariable(int lhs_symb_id) const
{
- int retval = findTrendVariableHelper(arg1, arg2, lhs_symb_id);
+ int retval = findTargetVariableHelper(arg1, arg2, lhs_symb_id);
if (retval < 0)
- retval = findTrendVariableHelper(arg2, arg1, lhs_symb_id);
+ retval = findTargetVariableHelper(arg2, arg1, lhs_symb_id);
if (retval < 0)
- retval = arg1->findTrendVariable(lhs_symb_id);
+ retval = arg1->findTargetVariable(lhs_symb_id);
if (retval < 0)
- retval = arg2->findTrendVariable(lhs_symb_id);
+ retval = arg2->findTargetVariable(lhs_symb_id);
return retval;
}
@@ -6341,13 +6341,13 @@ TrinaryOpNode::findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff
}
int
-TrinaryOpNode::findTrendVariable(int lhs_symb_id) const
+TrinaryOpNode::findTargetVariable(int lhs_symb_id) const
{
- int retval = arg1->findTrendVariable(lhs_symb_id);
+ int retval = arg1->findTargetVariable(lhs_symb_id);
if (retval < 0)
- retval = arg2->findTrendVariable(lhs_symb_id);
+ retval = arg2->findTargetVariable(lhs_symb_id);
if (retval < 0)
- retval = arg3->findTrendVariable(lhs_symb_id);
+ retval = arg3->findTargetVariable(lhs_symb_id);
return retval;
}
@@ -6831,11 +6831,11 @@ AbstractExternalFunctionNode::findUnaryOpNodesForAuxVarCreation(DataTree &static
}
int
-AbstractExternalFunctionNode::findTrendVariable(int lhs_symb_id) const
+AbstractExternalFunctionNode::findTargetVariable(int lhs_symb_id) const
{
for (auto argument : arguments)
{
- int retval = argument->findTrendVariable(lhs_symb_id);
+ int retval = argument->findTargetVariable(lhs_symb_id);
if (retval >= 0)
return retval;
}
@@ -8488,7 +8488,7 @@ VarExpectationNode::findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree,
}
int
-VarExpectationNode::findTrendVariable(int lhs_symb_id) const
+VarExpectationNode::findTargetVariable(int lhs_symb_id) const
{
return -1;
}
@@ -9033,7 +9033,7 @@ PacExpectationNode::findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree,
}
int
-PacExpectationNode::findTrendVariable(int lhs_symb_id) const
+PacExpectationNode::findTargetVariable(int lhs_symb_id) const
{
return -1;
}
diff --git a/src/ExprNode.hh b/src/ExprNode.hh
index 679221d0..77106f23 100644
--- a/src/ExprNode.hh
+++ b/src/ExprNode.hh
@@ -523,7 +523,7 @@ class ExprNode
//! Substitute diff operator
virtual void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const = 0;
virtual void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const = 0;
- virtual int findTrendVariable(int lhs_symb_id) const = 0;
+ virtual int findTargetVariable(int lhs_symb_id) const = 0;
virtual expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const = 0;
virtual expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const = 0;
@@ -643,7 +643,7 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -744,7 +744,7 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -869,7 +869,7 @@ public:
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
bool createAuxVarForUnaryOpNode() const;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -1014,9 +1014,9 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- bool findTrendVariableHelper1(int lhs_symb_id, int rhs_symb_id) const;
- int findTrendVariableHelper(const expr_t arg1, const expr_t arg2, int lhs_symb_id) const;
- int findTrendVariable(int lhs_symb_id) const override;
+ bool findTargetVariableHelper1(int lhs_symb_id, int rhs_symb_id) const;
+ int findTargetVariableHelper(const expr_t arg1, const expr_t arg2, int lhs_symb_id) const;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -1136,7 +1136,7 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -1257,7 +1257,7 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -1462,7 +1462,7 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
@@ -1560,7 +1560,7 @@ public:
expr_t substituteVarExpectation(const map<string, expr_t> &subst_table) const override;
void findDiffNodes(DataTree &static_datatree, diff_table_t &diff_table) const override;
void findUnaryOpNodesForAuxVarCreation(DataTree &static_datatree, diff_table_t &nodes) const override;
- int findTrendVariable(int lhs_symb_id) const override;
+ int findTargetVariable(int lhs_symb_id) const override;
expr_t substituteDiff(DataTree &static_datatree, diff_table_t &diff_table, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substituteUnaryOpNodes(DataTree &static_datatree, diff_table_t &nodes, subst_table_t &subst_table, vector<BinaryOpNode *> &neweqs) const override;
expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) override;
diff --git a/src/ParsingDriver.cc b/src/ParsingDriver.cc
index 121edb16..dcad3c39 100644
--- a/src/ParsingDriver.cc
+++ b/src/ParsingDriver.cc
@@ -1489,12 +1489,12 @@ ParsingDriver::trend_component_model()
error("You must pass the eqtags option to the trend_component_model statement.");
auto eqtags = itvs->second;
- const auto itvs1 = options_list.vector_str_options.find("trend_component.trends");
+ const auto itvs1 = options_list.vector_str_options.find("trend_component.targets");
if (itvs1 == options_list.vector_str_options.end())
- error("You must pass the trends option to the trend_component_model statement.");
- auto trends = itvs1->second;
+ error("You must pass the targets option to the trend_component_model statement.");
+ auto targets = itvs1->second;
- mod_file->trend_component_model_table.addTrendComponentModel(name, eqtags, trends);
+ mod_file->trend_component_model_table.addTrendComponentModel(name, eqtags, targets);
options_list.clear();
}
diff --git a/src/SubModel.cc b/src/SubModel.cc
index ae0792fa..03cd3dee 100644
--- a/src/SubModel.cc
+++ b/src/SubModel.cc
@@ -29,7 +29,7 @@ TrendComponentModelTable::TrendComponentModelTable(SymbolTable &symbol_table_arg
void
TrendComponentModelTable::addTrendComponentModel(string name_arg,
vector<string> eqtags_arg,
- vector<string> trend_eqtags_arg)
+ vector<string> target_eqtags_arg)
{
if (isExistingTrendComponentModelName(name_arg))
{
@@ -37,17 +37,17 @@ TrendComponentModelTable::addTrendComponentModel(string name_arg,
exit(EXIT_FAILURE);
}
eqtags[name_arg] = move(eqtags_arg);
- trend_eqtags[name_arg] = move(trend_eqtags_arg);
+ target_eqtags[name_arg] = move(target_eqtags_arg);
names.insert(move(name_arg));
}
void
-TrendComponentModelTable::setVals(map<string, vector<int>> eqnums_arg, map<string, vector<int>> trend_eqnums_arg,
+TrendComponentModelTable::setVals(map<string, vector<int>> eqnums_arg, map<string, vector<int>> target_eqnums_arg,
map<string, vector<int>> lhs_arg,
map<string, vector<expr_t>> lhs_expr_t_arg, map<string, vector<bool>> nonstationary_arg)
{
eqnums = move(eqnums_arg);
- trend_eqnums = move(trend_eqnums_arg);
+ target_eqnums = move(target_eqnums_arg);
lhs = move(lhs_arg);
lhs_expr_t = move(lhs_expr_t_arg);
nonstationary = move(nonstationary_arg);
@@ -56,23 +56,23 @@ TrendComponentModelTable::setVals(map<string, vector<int>> eqnums_arg, map<strin
{
vector<int> nontrend_vec;
for (auto eq : it.second)
- if (find(trend_eqnums[it.first].begin(), trend_eqnums[it.first].end(), eq) == trend_eqnums[it.first].end())
+ if (find(target_eqnums[it.first].begin(), target_eqnums[it.first].end(), eq) == target_eqnums[it.first].end())
nontrend_vec.push_back(eq);
- nontrend_eqnums[it.first] = nontrend_vec;
+ nontarget_eqnums[it.first] = nontrend_vec;
}
for (const auto &name : names)
{
- vector<int> nontrend_lhs_vec, trend_lhs_vec;
+ vector<int> nontarget_lhs_vec, target_lhs_vec;
vector<int> lhsv = getLhs(name);
vector<int> eqnumsv = getEqNums(name);
- for (int nontrend_it : getNonTrendEqNums(name))
- nontrend_lhs_vec.push_back(lhsv.at(distance(eqnumsv.begin(), find(eqnumsv.begin(), eqnumsv.end(), nontrend_it))));
- nontrend_lhs[name] = nontrend_lhs_vec;
+ for (int nontrend_it : getNonTargetEqNums(name))
+ nontarget_lhs_vec.push_back(lhsv.at(distance(eqnumsv.begin(), find(eqnumsv.begin(), eqnumsv.end(), nontrend_it))));
+ nontarget_lhs[name] = nontarget_lhs_vec;
- for (int trend_it : getTrendEqNums(name))
- trend_lhs_vec.push_back(lhsv.at(distance(eqnumsv.begin(), find(eqnumsv.begin(), eqnumsv.end(), trend_it))));
- trend_lhs[name] = trend_lhs_vec;
+ for (int trend_it : getTargetEqNums(name))
+ target_lhs_vec.push_back(lhsv.at(distance(eqnumsv.begin(), find(eqnumsv.begin(), eqnumsv.end(), trend_it))));
+ target_lhs[name] = target_lhs_vec;
}
}
@@ -83,9 +83,9 @@ TrendComponentModelTable::setRhs(map<string, vector<set<pair<int, int>>>> rhs_ar
}
void
-TrendComponentModelTable::setTrendVar(map<string, vector<int>> trend_vars_arg)
+TrendComponentModelTable::setTargetVar(map<string, vector<int>> target_vars_arg)
{
- trend_vars = move(trend_vars_arg);
+ target_vars = move(target_vars_arg);
}
void
@@ -160,14 +160,14 @@ vector<int>
TrendComponentModelTable::getNontrendLhs(const string &name_arg) const
{
checkModelName(name_arg);
- return nontrend_lhs.find(name_arg)->second;
+ return nontarget_lhs.find(name_arg)->second;
}
vector<int>
-TrendComponentModelTable::getTrendLhs(const string &name_arg) const
+TrendComponentModelTable::getTargetLhs(const string &name_arg) const
{
checkModelName(name_arg);
- return trend_lhs.find(name_arg)->second;
+ return target_lhs.find(name_arg)->second;
}
vector<int>
@@ -185,9 +185,9 @@ TrendComponentModelTable::getLhsExprT(const string &name_arg) const
}
map<string, vector<string>>
-TrendComponentModelTable::getTrendEqTags() const
+TrendComponentModelTable::getTargetEqTags() const
{
- return trend_eqtags;
+ return target_eqtags;
}
map<string, vector<int>>
@@ -197,29 +197,29 @@ TrendComponentModelTable::getEqNums() const
}
map<string, vector<int>>
-TrendComponentModelTable::getTrendEqNums() const
+TrendComponentModelTable::getTargetEqNums() const
{
- return trend_eqnums;
+ return target_eqnums;
}
vector<int>
-TrendComponentModelTable::getTrendEqNums(const string &name_arg) const
+TrendComponentModelTable::getTargetEqNums(const string &name_arg) const
{
checkModelName(name_arg);
- return trend_eqnums.find(name_arg)->second;
+ return target_eqnums.find(name_arg)->second;
}
map<string, vector<int>>
-TrendComponentModelTable::getNonTrendEqNums() const
+TrendComponentModelTable::getNonTargetEqNums() const
{
- return nontrend_eqnums;
+ return nontarget_eqnums;
}
vector<int>
-TrendComponentModelTable::getNonTrendEqNums(const string &name_arg) const
+TrendComponentModelTable::getNonTargetEqNums(const string &name_arg) const
{
checkModelName(name_arg);
- return nontrend_eqnums.find(name_arg)->second;
+ return nontarget_eqnums.find(name_arg)->second;
}
vector<int>
@@ -285,14 +285,14 @@ TrendComponentModelTable::writeOutput(const string &basename, ostream &output) c
for (auto it : eqnums.at(name))
output << it + 1 << " ";
output << "];" << endl
- << "M_.trend_component." << name << ".trend_eqn = [";
- for (auto it : trend_eqnums.at(name))
+ << "M_.trend_component." << name << ".target_eqn = [";
+ for (auto it : target_eqnums.at(name))
output << it + 1 << " ";
output << "];" << endl
- << "M_.trend_component." << name << ".trends = [";
+ << "M_.trend_component." << name << ".targets = [";
for (auto it : eqnums.at(name))
- if (find(trend_eqnums.at(name).begin(), trend_eqnums.at(name).end(), it)
- == trend_eqnums.at(name).end())
+ if (find(target_eqnums.at(name).begin(), target_eqnums.at(name).end(), it)
+ == target_eqnums.at(name).end())
output << "false ";
else
output << "true ";
@@ -331,29 +331,29 @@ TrendComponentModelTable::writeOutput(const string &basename, ostream &output) c
i++;
}
- output << "M_.trend_component." << name << ".trend_vars = [";
- for (auto it : trend_vars.at(name))
+ output << "M_.trend_component." << name << ".target_vars = [";
+ for (auto it : target_vars.at(name))
output << (it >= 0 ? symbol_table.getTypeSpecificID(it) + 1 : -1) << " ";
output << "];" << endl;
- vector<int> trend_lhs_vec = getTrendLhs(name);
- vector<int> nontrend_lhs_vec = getNontrendLhs(name);
+ vector<int> target_lhs_vec = getTargetLhs(name);
+ vector<int> nontarget_lhs_vec = getNontrendLhs(name);
ar_ec_output << "if strcmp(model_name, '" << name << "')" << endl
<< " % AR" << endl
- << " ar = zeros(" << nontrend_lhs_vec.size() << ", " << nontrend_lhs_vec.size() << ", " << getMaxLag(name) << ");" << endl;
+ << " ar = zeros(" << nontarget_lhs_vec.size() << ", " << nontarget_lhs_vec.size() << ", " << getMaxLag(name) << ");" << endl;
for (const auto & it : AR.at(name))
{
int eqn, lag, lhs_symb_id;
tie (eqn, lag, lhs_symb_id) = it.first;
- int colidx = (int) distance(nontrend_lhs_vec.begin(), find(nontrend_lhs_vec.begin(), nontrend_lhs_vec.end(), lhs_symb_id));
+ int colidx = (int) distance(nontarget_lhs_vec.begin(), find(nontarget_lhs_vec.begin(), nontarget_lhs_vec.end(), lhs_symb_id));
ar_ec_output << " ar(" << eqn + 1 << ", " << colidx + 1 << ", " << lag << ") = ";
it.second->writeOutput(ar_ec_output, ExprNodeOutputType::matlabDynamicModel);
ar_ec_output << ";" << endl;
}
ar_ec_output << endl
<< " % EC" << endl
- << " ec = zeros(" << nontrend_lhs_vec.size() << ", " << nontrend_lhs_vec.size() << ", 1);" << endl;
+ << " ec = zeros(" << nontarget_lhs_vec.size() << ", " << nontarget_lhs_vec.size() << ", 1);" << endl;
for (const auto & it : EC.at(name))
{
int eqn, lag, colidx;
@@ -386,11 +386,11 @@ TrendComponentModelTable::writeJsonOutput(ostream &output) const
if (&it != &eqtags.at(name).back())
output << ", ";
}
- output << "], \"trend_eqtags\": [";
- for (const auto &it : trend_eqtags.at(name))
+ output << "], \"target_eqtags\": [";
+ for (const auto &it : target_eqtags.at(name))
{
output << "\"" << it << "\"";
- if (&it != &trend_eqtags.at(name).back())
+ if (&it != &target_eqtags.at(name).back())
output << ", ";
}
output << "]}";
diff --git a/src/SubModel.hh b/src/SubModel.hh
index 65016a7f..92ed9982 100644
--- a/src/SubModel.hh
+++ b/src/SubModel.hh
@@ -11,7 +11,7 @@
* Dynare is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
+ * GNU General Public License for more details.SS
*
* You should have received a copy of the GNU General Public License
* along with Dynare. If not, see <http://www.gnu.org/licenses/>.
@@ -39,12 +39,12 @@ class TrendComponentModelTable
private:
SymbolTable &symbol_table;
set<string> names;
- map<string, vector<string>> eqtags, trend_eqtags;
- map<string, vector<int>> eqnums, trend_eqnums, nontrend_eqnums, max_lags, lhs, trend_lhs, nontrend_lhs, orig_diff_var;
+ map<string, vector<string>> eqtags, target_eqtags;
+ map<string, vector<int>> eqnums, target_eqnums, nontarget_eqnums, max_lags, lhs, target_lhs, nontarget_lhs, orig_diff_var;
map<string, vector<set<pair<int, int>>>> rhs;
map<string, vector<bool>> diff, nonstationary;
map<string, vector<expr_t>> lhs_expr_t;
- map<string, vector<int>> trend_vars;
+ map<string, vector<int>> target_vars;
map<string, map<tuple<int, int, int>, expr_t>> AR; // AR: name -> (eqn, lag, lhs_symb_id) -> expr_t
map<string, map<tuple<int, int, int>, expr_t>> EC; // EC: name -> (eqn, lag, col) -> expr_t
public:
@@ -52,17 +52,17 @@ public:
//! Add a trend component model
void addTrendComponentModel(string name_arg, vector<string> eqtags_arg,
- vector<string> trend_eqtags_arg);
+ vector<string> target_eqtags_arg);
inline bool isExistingTrendComponentModelName(const string &name_arg) const;
inline bool empty() const;
map<string, vector<string>> getEqTags() const;
vector<string> getEqTags(const string &name_arg) const;
- map<string, vector<string>> getTrendEqTags() const;
+ map<string, vector<string>> getTargetEqTags() const;
map<string, vector<int>> getEqNums() const;
- map<string, vector<int>> getTrendEqNums() const;
- vector<int> getTrendEqNums(const string &name_arg) const;
+ map<string, vector<int>> getTargetEqNums() const;
+ vector<int> getTargetEqNums(const string &name_arg) const;
vector<int> getEqNums(const string &name_arg) const;
vector<int> getMaxLags(const string &name_arg) const;
int getMaxLag(const string &name_arg) const;
@@ -70,20 +70,20 @@ public:
vector<expr_t> getLhsExprT(const string &name_arg) const;
vector<bool> getDiff(const string &name_arg) const;
vector<int> getOrigDiffVar(const string &name_arg) const;
- map<string, vector<int>> getNonTrendEqNums() const;
- vector<int> getNonTrendEqNums(const string &name_arg) const;
+ map<string, vector<int>> getNonTargetEqNums() const;
+ vector<int> getNonTargetEqNums(const string &name_arg) const;
vector<bool> getNonstationary(const string &name_arg) const;
vector<int> getNontrendLhs(const string &name_arg) const;
- vector<int> getTrendLhs(const string &name_arg) const;
+ vector<int> getTargetLhs(const string &name_arg) const;
- void setVals(map<string, vector<int>> eqnums_arg, map<string, vector<int>> trend_eqnums_arg,
+ void setVals(map<string, vector<int>> eqnums_arg, map<string, vector<int>> target_eqnums_arg,
map<string, vector<int>> lhs_arg,
map<string, vector<expr_t>> lhs_expr_t_arg, map<string, vector<bool>> nonstationary_arg);
void setRhs(map<string, vector<set<pair<int, int>>>> rhs_arg);
void setMaxLags(map<string, vector<int>> max_lags_arg);
void setDiff(map<string, vector<bool>> diff_arg);
void setOrigDiffVar(map<string, vector<int>> orig_diff_var_arg);
- void setTrendVar(map<string, vector<int>> trend_vars_arg);
+ void setTargetVar(map<string, vector<int>> target_vars_arg);
void setAR(map<string, map<tuple<int, int, int>, expr_t>> AR_arg);
void setEC(map<string, map<tuple<int, int, int>, expr_t>> EC_arg);
@@ -95,7 +95,7 @@ public:
private:
void checkModelName(const string &name_arg) const;
- void setNonTrendEqnums();
+ void setNonTargetEqnums();
};
inline bool
--
GitLab