diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc index 20bbde1ea934e722a4818043a5c17bbf36bd4cfb..9369fc6bf9cc7f55410c99edb2e6941e0565083c 100644 --- a/src/DynamicModel.cc +++ b/src/DynamicModel.cc @@ -88,7 +88,6 @@ DynamicModel::DynamicModel(const DynamicModel &m) : block_exo_index{m.block_exo_index}, block_det_exo_index{m.block_det_exo_index}, block_other_endo_index{m.block_other_endo_index}, - variable_block_lead_lag{m.variable_block_lead_lag}, var_expectation_functions_to_write{m.var_expectation_functions_to_write} { copyHelper(m); @@ -141,7 +140,6 @@ DynamicModel::operator=(const DynamicModel &m) block_exo_index = m.block_exo_index; block_det_exo_index = m.block_det_exo_index; block_other_endo_index = m.block_other_endo_index; - variable_block_lead_lag = m.variable_block_lead_lag; var_expectation_functions_to_write = m.var_expectation_functions_to_write; copyHelper(m); @@ -4812,7 +4810,7 @@ DynamicModel::computingPass(bool jacobianExo, int derivsOrder, int paramsDerivsO cout << "Finding the optimal block decomposition of the model ..." << endl; - auto variable_lag_lead = computeBlockDecompositionAndFeedbackVariablesForEachBlock(); + computeBlockDecompositionAndFeedbackVariablesForEachBlock(); reduceBlocksAndTypeDetermination(linear_decomposition); @@ -4829,18 +4827,6 @@ DynamicModel::computingPass(bool jacobianExo, int derivsOrder, int paramsDerivsO global_temporary_terms = true; if (!no_tmp_terms) computeTemporaryTermsOrdered(); - int k = 0; - variable_block_lead_lag.clear(); - variable_block_lead_lag.resize(equations.size()); - for (int i = 0; i < static_cast<int>(blocks.size()); i++) - { - for (int j = 0; j < blocks[i].size; j++) - { - int l = endo_idx_block2orig[k]; - variable_block_lead_lag[l] = { i, variable_lag_lead[l].first, variable_lag_lead[l].second }; - k++; - } - } } else { diff --git a/src/DynamicModel.hh b/src/DynamicModel.hh index 9cd29c13b4b492960c56c3cece07ee49d3d8fb6e..4f3d419ed432e6890077eb1776b99167289ab462 100644 --- a/src/DynamicModel.hh +++ b/src/DynamicModel.hh @@ -203,11 +203,6 @@ private: //! Write reverse cross references void writeRevXrefs(ostream &output, const map<pair<int, int>, set<int>> &xrefmap, const string &type) const; - //! List for each variable its block number and its maximum lag and lead inside the block - vector<tuple<int, int, int>> variable_block_lead_lag; - //! List for each equation its block number - vector<int> equation_block; - //! Used for var_expectation and var_model map<string, set<int>> var_expectation_functions_to_write; diff --git a/src/ModelTree.cc b/src/ModelTree.cc index 3b45efa28dc162494a29e3b0f96c82af1faf8fb8..207c9d99218565daacb254d630bf5fb060e7b994 100644 --- a/src/ModelTree.cc +++ b/src/ModelTree.cc @@ -647,7 +647,7 @@ ModelTree::getVariableLeadLagByBlock() const return { equation_lag_lead, variable_lag_lead }; } -lag_lead_vector_t +void ModelTree::computeBlockDecompositionAndFeedbackVariablesForEachBlock() { int nb_var = symbol_table.endo_nbr(); @@ -783,8 +783,6 @@ ModelTree::computeBlockDecompositionAndFeedbackVariablesForEachBlock() } updateReverseVariableEquationOrderings(); - - return variable_lag_lead; } void diff --git a/src/ModelTree.hh b/src/ModelTree.hh index d7a2adb91e1941b3b6a64654588435b563f128dd..87acc746e384590492306d945934c826851fd7d8 100644 --- a/src/ModelTree.hh +++ b/src/ModelTree.hh @@ -304,7 +304,7 @@ protected: Initializes the “blocks” structure, and fills the following fields: size, mfs_size, n_static, n_forward, n_backward, n_mixed. Also initializes the endo2block and eq2block structures. */ - lag_lead_vector_t computeBlockDecompositionAndFeedbackVariablesForEachBlock(); + void computeBlockDecompositionAndFeedbackVariablesForEachBlock(); /* Reduce the number of block by merging the same type of equations in the prologue and the epilogue, and determine the type of each block. diff --git a/src/StaticModel.cc b/src/StaticModel.cc index e7c84cad8c3c8dde43f37de6aafcb7ae053d9b5b..6df1a0c51628bac84db03930fe4a16cd11b42cd9 100644 --- a/src/StaticModel.cc +++ b/src/StaticModel.cc @@ -1133,7 +1133,7 @@ StaticModel::computingPass(int derivsOrder, int paramsDerivsOrder, const eval_co cout << "Finding the optimal block decomposition of the model ..." << endl; - auto variable_lag_lead = computeBlockDecompositionAndFeedbackVariablesForEachBlock(); + computeBlockDecompositionAndFeedbackVariablesForEachBlock(); reduceBlocksAndTypeDetermination(false); diff --git a/src/StaticModel.hh b/src/StaticModel.hh index 1a93f313b70f9699bc81fb06011448b9324c8ba5..6a49dcd1c8ea85db5cce17f7edad5a9871dd5aed 100644 --- a/src/StaticModel.hh +++ b/src/StaticModel.hh @@ -96,10 +96,6 @@ private: //! Indicate if the temporary terms are computed for the overall model (true) or not (false). Default value true bool global_temporary_terms{true}; - //!List for each block and for each lag-leag all the other endogenous variables and exogenous variables - using var_t = set<int>; - using lag_var_t = map<int, var_t>; - //! Helper functions for writeStaticModel void writeStaticModelHelper(const string &basename, const string &name, const string &retvalname,