simplify var_model statement calls
parent
09e73f3bb4
commit
bb1cc0bebf
|
@ -378,23 +378,21 @@ VarModelStatement::VarModelStatement(const SymbolList &symbol_list_arg,
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
VarModelStatement::getVarModelInfoForVarExpectation(map<string, pair<SymbolList, int> > &var_model_info) const
|
VarModelStatement::getVarModelInfo(string &var_model_name,
|
||||||
|
map<string, pair<SymbolList, int> > &var_model_info,
|
||||||
|
map<string, vector<string> > &var_model_eqtags) const
|
||||||
{
|
{
|
||||||
|
var_model_name = name;
|
||||||
if (symbol_list.empty())
|
if (symbol_list.empty())
|
||||||
return;
|
{
|
||||||
|
OptionsList::vec_str_options_t::const_iterator it = options_list.vector_str_options.find("var.eqtags");
|
||||||
OptionsList::num_options_t::const_iterator it = options_list.num_options.find("var.order");
|
var_model_eqtags[name] = it->second;
|
||||||
var_model_info[name] = make_pair(symbol_list, atoi(it->second.c_str()));
|
}
|
||||||
}
|
else
|
||||||
|
{
|
||||||
void
|
OptionsList::num_options_t::const_iterator it = options_list.num_options.find("var.order");
|
||||||
VarModelStatement::getVarModelEqTags(map<string, vector<string> > &var_model_eqtags) const
|
var_model_info[name] = make_pair(symbol_list, atoi(it->second.c_str()));
|
||||||
{
|
}
|
||||||
if (!symbol_list.empty())
|
|
||||||
return;
|
|
||||||
|
|
||||||
OptionsList::vec_str_options_t::const_iterator it = options_list.vector_str_options.find("var.eqtags");
|
|
||||||
var_model_eqtags[name] = it->second;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -414,12 +412,6 @@ VarModelStatement::fillVarModelInfoFromEquations(vector<int> &eqnumber_arg, vect
|
||||||
max_lag = max_lag_arg;
|
max_lag = max_lag_arg;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
VarModelStatement::getVarModelName(string &var_model_name) const
|
|
||||||
{
|
|
||||||
var_model_name = name;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
VarModelStatement::checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings)
|
VarModelStatement::checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings)
|
||||||
{
|
{
|
||||||
|
|
|
@ -159,14 +159,14 @@ public:
|
||||||
const OptionsList &options_list_arg,
|
const OptionsList &options_list_arg,
|
||||||
const string &name_arg,
|
const string &name_arg,
|
||||||
const SymbolTable &symbol_table_arg);
|
const SymbolTable &symbol_table_arg);
|
||||||
void getVarModelInfoForVarExpectation(map<string, pair<SymbolList, int> > &var_model_info) const;
|
void getVarModelInfo(string &var_model_name,
|
||||||
void getVarModelEqTags(map<string, vector<string> > &var_model_eqtags) const;
|
map<string, pair<SymbolList, int> > &var_model_info,
|
||||||
|
map<string, vector<string> > &var_model_eqtags) const;
|
||||||
void fillVarModelInfoFromEquations(vector<int> &eqnumber_arg, vector<int> &lhs_arg,
|
void fillVarModelInfoFromEquations(vector<int> &eqnumber_arg, vector<int> &lhs_arg,
|
||||||
vector<set<pair<int, int> > > &rhs_arg,
|
vector<set<pair<int, int> > > &rhs_arg,
|
||||||
vector<bool> &nonstationary_arg,
|
vector<bool> &nonstationary_arg,
|
||||||
vector<bool> &diff_arg, vector<int> &orig_diff_var_arg,
|
vector<bool> &diff_arg, vector<int> &orig_diff_var_arg,
|
||||||
int max_lag_arg);
|
int max_lag_arg);
|
||||||
void getVarModelName(string &var_model_name) const;
|
|
||||||
virtual void checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings);
|
virtual void checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings);
|
||||||
virtual void writeOutput(ostream &output, const string &basename, bool minimal_workspace) const;
|
virtual void writeOutput(ostream &output, const string &basename, bool minimal_workspace) const;
|
||||||
void createVarModelMFunction(ostream &output, const map<string, set<int> > &var_expectation_functions_to_write) const;
|
void createVarModelMFunction(ostream &output, const map<string, set<int> > &var_expectation_functions_to_write) const;
|
||||||
|
|
|
@ -373,7 +373,8 @@ ModFile::transformPass(bool nostrict, bool stochastic, bool compute_xrefs, const
|
||||||
// Var Model
|
// Var Model
|
||||||
map<string, pair<SymbolList, int> > var_model_info_var_expectation;
|
map<string, pair<SymbolList, int> > var_model_info_var_expectation;
|
||||||
map<string, vector<string> > var_model_eq_tags;
|
map<string, vector<string> > var_model_eq_tags;
|
||||||
map<string, pair<pair<vector<int>, pair<vector<bool>, vector<int> > >, pair<pair<int, vector<bool> >, vector<int> > > > var_model_info_pac_expectation;
|
map<string, pair<pair<vector<int>, pair<vector<bool>, vector<int> > >, pair<pair<int, vector<bool> >, vector<int> > > >
|
||||||
|
var_model_info_pac_expectation;
|
||||||
for (vector<Statement *>::const_iterator it = statements.begin();
|
for (vector<Statement *>::const_iterator it = statements.begin();
|
||||||
it != statements.end(); it++)
|
it != statements.end(); it++)
|
||||||
{
|
{
|
||||||
|
@ -381,9 +382,7 @@ ModFile::transformPass(bool nostrict, bool stochastic, bool compute_xrefs, const
|
||||||
if (vms != NULL)
|
if (vms != NULL)
|
||||||
{
|
{
|
||||||
string var_model_name;
|
string var_model_name;
|
||||||
vms->getVarModelName(var_model_name);
|
vms->getVarModelInfoForVarExpectation(var_model_name, var_model_info_var_expectation, var_model_eq_tags);
|
||||||
vms->getVarModelEqTags(var_model_eq_tags);
|
|
||||||
vms->getVarModelInfoForVarExpectation(var_model_info_var_expectation);
|
|
||||||
vector<int> eqnumber, lhs, orig_diff_var;
|
vector<int> eqnumber, lhs, orig_diff_var;
|
||||||
vector<set<pair<int, int> > > rhs;
|
vector<set<pair<int, int> > > rhs;
|
||||||
vector<bool> nonstationary, diff;
|
vector<bool> nonstationary, diff;
|
||||||
|
|
Loading…
Reference in New Issue