diff --git a/src/DataTree.cc b/src/DataTree.cc index 19bc8fa0c44c3991bc1e1f0e8453a6c2158519ba..fb903727e09da0f93c4d6533539f3508363ef179 100644 --- a/src/DataTree.cc +++ b/src/DataTree.cc @@ -67,12 +67,12 @@ DataTree::DataTree(const DataTree &d) : initConstants(); for (const auto & it : d.node_list) - it->cloneDynamic(*this); + it->clone(*this); assert(node_list.size() == d.node_list.size()); for (const auto & it : d.local_variables_table) - local_variables_table[it.first] = it.second->cloneDynamic(*this); + local_variables_table[it.first] = it.second->clone(*this); } DataTree & @@ -100,14 +100,14 @@ DataTree::operator=(const DataTree &d) initConstants(); for (const auto & it : d.node_list) - it->cloneDynamic(*this); + it->clone(*this); assert(node_list.size() == d.node_list.size()); local_variables_vector = d.local_variables_vector; for (const auto & it : d.local_variables_table) - local_variables_table[it.first] = it.second->cloneDynamic(*this); + local_variables_table[it.first] = it.second->clone(*this); return *this; } diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc index 1cf02763d8e3048fc4ebae7585b8f5f8e866cd63..13a468492fb446d054a6830cf0cff3d5d34b4051 100644 --- a/src/DynamicModel.cc +++ b/src/DynamicModel.cc @@ -34,7 +34,7 @@ void DynamicModel::copyHelper(const DynamicModel &m) { - auto f = [this](const ExprNode *e) { return e->cloneDynamic(*this); }; + auto f = [this](const ExprNode *e) { return e->clone(*this); }; for (const auto &it : m.static_only_equations) static_only_equations.push_back(dynamic_cast<BinaryOpNode *>(f(it))); @@ -5028,7 +5028,7 @@ DynamicModel::replaceMyEquations(DynamicModel &dynamic_model) const { dynamic_model.equations.clear(); for (size_t i = 0; i < equations.size(); i++) - dynamic_model.addEquation(equations[i]->cloneDynamic(dynamic_model), + dynamic_model.addEquation(equations[i]->clone(dynamic_model), equations_lineno[i]); } @@ -5049,7 +5049,7 @@ DynamicModel::computeRamseyPolicyFOCs(const StaticModel &static_model, const boo // Add Planner Objective to equations to include in computeDerivIDs assert(static_model.equations.size() == 1); - addEquation(static_model.equations[0]->cloneDynamic(*this), static_model.equations_lineno[0]); + addEquation(static_model.equations[0]->clone(*this), static_model.equations_lineno[0]); // Get max endo lead and max endo lag set<pair<int, int>> dynvars; diff --git a/src/ExprNode.cc b/src/ExprNode.cc index 8a6aa8bfdf29930c010ace335edff0ebf051accb..37f74572b1f4a95cd310ddca63cc2d1bdc5d2545 100644 --- a/src/ExprNode.cc +++ b/src/ExprNode.cc @@ -433,9 +433,9 @@ NumConstNode::computeXrefs(EquationInfo &ei) const } expr_t -NumConstNode::cloneDynamic(DataTree &dynamic_datatree) const +NumConstNode::clone(DataTree &datatree) const { - return dynamic_datatree.AddNonNegativeConstant(datatree.num_constants.get(id)); + return datatree.AddNonNegativeConstant(datatree.num_constants.get(id)); } int @@ -1417,9 +1417,9 @@ VariableNode::get_type() const } expr_t -VariableNode::cloneDynamic(DataTree &dynamic_datatree) const +VariableNode::clone(DataTree &datatree) const { - return dynamic_datatree.AddVariable(symb_id, lag); + return datatree.AddVariable(symb_id, lag); } int @@ -3192,10 +3192,10 @@ UnaryOpNode::computeXrefs(EquationInfo &ei) const } expr_t -UnaryOpNode::cloneDynamic(DataTree &dynamic_datatree) const +UnaryOpNode::clone(DataTree &datatree) const { - expr_t substarg = arg->cloneDynamic(dynamic_datatree); - return buildSimilarUnaryOpNode(substarg, dynamic_datatree); + expr_t substarg = arg->clone(datatree); + return buildSimilarUnaryOpNode(substarg, datatree); } int @@ -5056,11 +5056,11 @@ BinaryOpNode::computeXrefs(EquationInfo &ei) const } expr_t -BinaryOpNode::cloneDynamic(DataTree &dynamic_datatree) const +BinaryOpNode::clone(DataTree &datatree) const { - expr_t substarg1 = arg1->cloneDynamic(dynamic_datatree); - expr_t substarg2 = arg2->cloneDynamic(dynamic_datatree); - return buildSimilarBinaryOpNode(substarg1, substarg2, dynamic_datatree); + expr_t substarg1 = arg1->clone(datatree); + expr_t substarg2 = arg2->clone(datatree); + return buildSimilarBinaryOpNode(substarg1, substarg2, datatree); } int @@ -6412,12 +6412,12 @@ TrinaryOpNode::computeXrefs(EquationInfo &ei) const } expr_t -TrinaryOpNode::cloneDynamic(DataTree &dynamic_datatree) const +TrinaryOpNode::clone(DataTree &datatree) const { - expr_t substarg1 = arg1->cloneDynamic(dynamic_datatree); - expr_t substarg2 = arg2->cloneDynamic(dynamic_datatree); - expr_t substarg3 = arg3->cloneDynamic(dynamic_datatree); - return buildSimilarTrinaryOpNode(substarg1, substarg2, substarg3, dynamic_datatree); + expr_t substarg1 = arg1->clone(datatree); + expr_t substarg2 = arg2->clone(datatree); + expr_t substarg3 = arg3->clone(datatree); + return buildSimilarTrinaryOpNode(substarg1, substarg2, substarg3, datatree); } int @@ -7749,12 +7749,12 @@ ExternalFunctionNode::computeXrefs(EquationInfo &ei) const } expr_t -ExternalFunctionNode::cloneDynamic(DataTree &dynamic_datatree) const +ExternalFunctionNode::clone(DataTree &datatree) const { vector<expr_t> dynamic_arguments; for (auto argument : arguments) - dynamic_arguments.push_back(argument->cloneDynamic(dynamic_datatree)); - return dynamic_datatree.AddExternalFunction(symb_id, dynamic_arguments); + dynamic_arguments.push_back(argument->clone(datatree)); + return datatree.AddExternalFunction(symb_id, dynamic_arguments); } expr_t @@ -8115,12 +8115,12 @@ FirstDerivExternalFunctionNode::compileExternalFunctionOutput(ostream &CompileCo } expr_t -FirstDerivExternalFunctionNode::cloneDynamic(DataTree &dynamic_datatree) const +FirstDerivExternalFunctionNode::clone(DataTree &datatree) const { vector<expr_t> dynamic_arguments; for (auto argument : arguments) - dynamic_arguments.push_back(argument->cloneDynamic(dynamic_datatree)); - return dynamic_datatree.AddFirstDerivExternalFunction(symb_id, dynamic_arguments, + dynamic_arguments.push_back(argument->clone(datatree)); + return datatree.AddFirstDerivExternalFunction(symb_id, dynamic_arguments, inputIndex); } @@ -8438,13 +8438,13 @@ SecondDerivExternalFunctionNode::writeJsonExternalFunctionOutput(vector<string> } expr_t -SecondDerivExternalFunctionNode::cloneDynamic(DataTree &dynamic_datatree) const +SecondDerivExternalFunctionNode::clone(DataTree &datatree) const { vector<expr_t> dynamic_arguments; for (auto argument : arguments) - dynamic_arguments.push_back(argument->cloneDynamic(dynamic_datatree)); - return dynamic_datatree.AddSecondDerivExternalFunction(symb_id, dynamic_arguments, - inputIndex1, inputIndex2); + dynamic_arguments.push_back(argument->clone(datatree)); + return datatree.AddSecondDerivExternalFunction(symb_id, dynamic_arguments, + inputIndex1, inputIndex2); } expr_t @@ -8544,9 +8544,9 @@ VarExpectationNode::toStatic(DataTree &static_datatree) const } expr_t -VarExpectationNode::cloneDynamic(DataTree &dynamic_datatree) const +VarExpectationNode::clone(DataTree &datatree) const { - return dynamic_datatree.AddVarExpectation(model_name); + return datatree.AddVarExpectation(model_name); } void @@ -9010,9 +9010,9 @@ PacExpectationNode::toStatic(DataTree &static_datatree) const } expr_t -PacExpectationNode::cloneDynamic(DataTree &dynamic_datatree) const +PacExpectationNode::clone(DataTree &datatree) const { - return dynamic_datatree.AddPacExpectation(string(model_name)); + return datatree.AddPacExpectation(string(model_name)); } void diff --git a/src/ExprNode.hh b/src/ExprNode.hh index ebba6bb7bf57307510bd816b312e005f28d9eaea..fade3ab685b36bb892de7c9dcd13c65235e001de 100644 --- a/src/ExprNode.hh +++ b/src/ExprNode.hh @@ -539,7 +539,7 @@ class ExprNode virtual expr_t substitutePacExpectation(map<const PacExpectationNode *, const BinaryOpNode *> &subst_table) = 0; //! Add ExprNodes to the provided datatree - virtual expr_t cloneDynamic(DataTree &dynamic_datatree) const = 0; + virtual expr_t clone(DataTree &datatree) const = 0; //! Move a trend variable with lag/lead to time t by dividing/multiplying by its growth factor virtual expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const = 0; @@ -665,7 +665,7 @@ public: bool isVariableNodeEqualTo(SymbolType type_arg, int variable_id, int lag_arg) const override; expr_t replaceTrendVar() const override; expr_t detrend(int symb_id, bool log_trend, expr_t trend) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const override; bool isInStaticForm() const override; void addParamInfoToPac(pair<int, int> &lhs_arg, int optim_share_arg, pair<int, pair<vector<int>, vector<bool>>> &ec_params_and_vars_arg, set<pair<int, pair<int, int>>> ¶ms_and_vars_arg, set<pair<int, pair<pair<int, int>, double>>> ¶ms_vars_and_scaling_factor_arg) override; @@ -762,7 +762,7 @@ public: bool isVariableNodeEqualTo(SymbolType type_arg, int variable_id, int lag_arg) const override; expr_t replaceTrendVar() const override; expr_t detrend(int symb_id, bool log_trend, expr_t trend) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const override; bool isInStaticForm() const override; void addParamInfoToPac(pair<int, int> &lhs_arg, int optim_share_arg, pair<int, pair<vector<int>, vector<bool>>> &ec_params_and_vars_arg, set<pair<int, pair<int, int>>> ¶ms_and_vars_arg, set<pair<int, pair<pair<int, int>, double>>> ¶ms_vars_and_scaling_factor_arg) override; @@ -888,7 +888,7 @@ public: bool isVariableNodeEqualTo(SymbolType type_arg, int variable_id, int lag_arg) const override; expr_t replaceTrendVar() const override; expr_t detrend(int symb_id, bool log_trend, expr_t trend) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const override; bool isInStaticForm() const override; void addParamInfoToPac(pair<int, int> &lhs_arg, int optim_share_arg, pair<int, pair<vector<int>, vector<bool>>> &ec_params_and_vars_arg, set<pair<int, pair<int, int>>> ¶ms_and_vars_arg, set<pair<int, pair<pair<int, int>, double>>> ¶ms_vars_and_scaling_factor_arg) override; @@ -1036,7 +1036,7 @@ public: bool isVariableNodeEqualTo(SymbolType type_arg, int variable_id, int lag_arg) const override; expr_t replaceTrendVar() const override; expr_t detrend(int symb_id, bool log_trend, expr_t trend) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const override; //! Function to write out the oPowerNode in expr_t terms as opposed to writing out the function itself expr_t unpackPowerDeriv() const; @@ -1157,7 +1157,7 @@ public: bool isVariableNodeEqualTo(SymbolType type_arg, int variable_id, int lag_arg) const override; expr_t replaceTrendVar() const override; expr_t detrend(int symb_id, bool log_trend, expr_t trend) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const override; bool isInStaticForm() const override; void addParamInfoToPac(pair<int, int> &lhs_arg, int optim_share_arg, pair<int, pair<vector<int>, vector<bool>>> &ec_params_and_vars_arg, set<pair<int, pair<int, int>>> ¶ms_and_vars_arg, set<pair<int, pair<pair<int, int>, double>>> ¶ms_vars_and_scaling_factor_arg) override; @@ -1282,7 +1282,7 @@ public: virtual void writePrhs(ostream &output, ExprNodeOutputType output_type, const temporary_terms_t &temporary_terms, const temporary_terms_idxs_t &temporary_terms_idxs, const deriv_node_temp_terms_t &tef_terms, const string &ending) const; expr_t replaceTrendVar() const override; expr_t detrend(int symb_id, bool log_trend, expr_t trend) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override = 0; + expr_t clone(DataTree &datatree) const override = 0; expr_t removeTrendLeadLag(map<int, expr_t> trend_symbols_map) const override; bool isInStaticForm() const override; void addParamInfoToPac(pair<int, int> &lhs_arg, int optim_share_arg, pair<int, pair<vector<int>, vector<bool>>> &ec_params_and_vars_arg, set<pair<int, pair<int, int>>> ¶ms_and_vars_arg, set<pair<int, pair<pair<int, int>, double>>> ¶ms_vars_and_scaling_factor_arg) override; @@ -1340,7 +1340,7 @@ public: expr_t toStatic(DataTree &static_datatree) const override; void computeXrefs(EquationInfo &ei) const override; expr_t buildSimilarExternalFunctionNode(vector<expr_t> &alt_args, DataTree &alt_datatree) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; }; class FirstDerivExternalFunctionNode : public AbstractExternalFunctionNode @@ -1383,7 +1383,7 @@ public: expr_t toStatic(DataTree &static_datatree) const override; void computeXrefs(EquationInfo &ei) const override; expr_t buildSimilarExternalFunctionNode(vector<expr_t> &alt_args, DataTree &alt_datatree) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; }; class SecondDerivExternalFunctionNode : public AbstractExternalFunctionNode @@ -1428,7 +1428,7 @@ public: expr_t toStatic(DataTree &static_datatree) const override; void computeXrefs(EquationInfo &ei) const override; expr_t buildSimilarExternalFunctionNode(vector<expr_t> &alt_args, DataTree &alt_datatree) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; }; class VarExpectationNode : public ExprNode @@ -1448,7 +1448,7 @@ public: vector< vector<temporary_terms_t>> &v_temporary_terms, int equation) const override; expr_t toStatic(DataTree &static_datatree) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; int maxEndoLead() const override; int maxExoLead() const override; int maxEndoLag() const override; @@ -1547,7 +1547,7 @@ public: vector< vector<temporary_terms_t>> &v_temporary_terms, int equation) const override; expr_t toStatic(DataTree &static_datatree) const override; - expr_t cloneDynamic(DataTree &dynamic_datatree) const override; + expr_t clone(DataTree &datatree) const override; int maxEndoLead() const override; int maxExoLead() const override; int maxEndoLag() const override; diff --git a/src/ModelEquationBlock.cc b/src/ModelEquationBlock.cc index edb05c0def0cef2e24161713db95c07ad365633e..c9977b4241eb69502cebec8e71396c20d1561f8e 100644 --- a/src/ModelEquationBlock.cc +++ b/src/ModelEquationBlock.cc @@ -36,7 +36,7 @@ SteadyStateModel::SteadyStateModel(const SteadyStateModel &m) : static_model {m.static_model} { for (const auto &it : m.def_table) - def_table.push_back(make_pair(it.first, it.second->cloneDynamic(*this))); + def_table.push_back(make_pair(it.first, it.second->clone(*this))); } SteadyStateModel & @@ -48,7 +48,7 @@ SteadyStateModel::operator=(const SteadyStateModel &m) def_table.clear(); for (const auto &it : m.def_table) - def_table.push_back(make_pair(it.first, it.second->cloneDynamic(*this))); + def_table.push_back(make_pair(it.first, it.second->clone(*this))); return *this; } @@ -300,7 +300,7 @@ Epilogue::Epilogue(const Epilogue &m) : exogs {m.exogs} { for (const auto &it : m.def_table) - def_table.push_back(make_pair(it.first, it.second->cloneDynamic(*this))); + def_table.push_back(make_pair(it.first, it.second->clone(*this))); } Epilogue & @@ -313,7 +313,7 @@ Epilogue::operator=(const Epilogue &m) def_table.clear(); for (const auto &it : m.def_table) - def_table.push_back(make_pair(it.first, it.second->cloneDynamic(*this))); + def_table.push_back(make_pair(it.first, it.second->clone(*this))); return *this; } diff --git a/src/ModelTree.cc b/src/ModelTree.cc index bb129b4218a53e6e17f14cd4fd168cc72dcdd2e2..6ae678bd81809e0e1c31c2f40bd516f62fb32e42 100644 --- a/src/ModelTree.cc +++ b/src/ModelTree.cc @@ -35,7 +35,7 @@ using namespace MFS; void ModelTree::copyHelper(const ModelTree &m) { - auto f = [this](expr_t e) { return e->cloneDynamic(*this); }; + auto f = [this](expr_t e) { return e->clone(*this); }; // Equations for (const auto & it : m.equations) diff --git a/src/StaticModel.cc b/src/StaticModel.cc index 1c97aebf8e75e4811090f0fa63a1f516a57e61da..83fb76352368133fd06767825e02363a65a7bb87 100644 --- a/src/StaticModel.cc +++ b/src/StaticModel.cc @@ -32,7 +32,7 @@ void StaticModel::copyHelper(const StaticModel &m) { - auto f = [this](expr_t e) { return e->cloneDynamic(*this); }; + auto f = [this](expr_t e) { return e->clone(*this); }; auto convert_vector_tt = [this,f](vector<temporary_terms_t> vtt) {