preprocessor: to_string is in the new C++ standard
parent
b7b0a6f73a
commit
5730852828
17
ExprNode.cc
17
ExprNode.cc
|
@ -4316,13 +4316,20 @@ BinaryOpNode::substituteAdlAndDiff() const
|
||||||
|
|
||||||
expr_t arg1subst = arg1->substituteAdlAndDiff();
|
expr_t arg1subst = arg1->substituteAdlAndDiff();
|
||||||
int i = 1;
|
int i = 1;
|
||||||
int param_symb_id = datatree.symbol_table.getID(adlparam + "_lag_" + to_string(i));
|
ostringstream inttostr;
|
||||||
|
inttostr << i;
|
||||||
|
int param_symb_id = datatree.symbol_table.getID(adlparam + "_lag_" + inttostr.str());
|
||||||
expr_t retval = datatree.AddTimes(datatree.AddVariable(param_symb_id, 0), arg1subst->decreaseLeadsLags(i));
|
expr_t retval = datatree.AddTimes(datatree.AddVariable(param_symb_id, 0), arg1subst->decreaseLeadsLags(i));
|
||||||
i++;
|
i++;
|
||||||
for (; i <= (int) arg2->eval(eval_context_t()); i++)
|
for (; i <= (int) arg2->eval(eval_context_t());)
|
||||||
retval = datatree.AddPlus(retval,
|
{
|
||||||
datatree.AddTimes(datatree.AddVariable(datatree.symbol_table.getID(adlparam + "_lag_" + to_string(i)), 0),
|
inttostr.clear();
|
||||||
arg1subst->decreaseLeadsLags(i)));
|
inttostr.str("");
|
||||||
|
inttostr << i++;
|
||||||
|
retval = datatree.AddPlus(retval,
|
||||||
|
datatree.AddTimes(datatree.AddVariable(datatree.symbol_table.getID(adlparam + "_lag_" + inttostr.str()), 0),
|
||||||
|
arg1subst->decreaseLeadsLags(i)));
|
||||||
|
}
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2598,8 +2598,15 @@ ParsingDriver::add_adl(expr_t arg1, string *name, string *lag)
|
||||||
data_tree->AddNonNegativeConstant(*lag));
|
data_tree->AddNonNegativeConstant(*lag));
|
||||||
|
|
||||||
// Declare parameters here so that parameters can be initialized after the model block
|
// Declare parameters here so that parameters can be initialized after the model block
|
||||||
for (int i = 0; i < atoi(lag->c_str()); i++)
|
int i = 0;
|
||||||
declare_parameter(new string(*name + "_lag_" + to_string(i+1)));
|
ostringstream inttostr;
|
||||||
|
for (; i < atoi(lag->c_str()); i++)
|
||||||
|
{
|
||||||
|
inttostr.clear();
|
||||||
|
inttostr.str("");
|
||||||
|
inttostr << i + 1;
|
||||||
|
declare_parameter(new string(*name + "_lag_" + inttostr.str()));
|
||||||
|
}
|
||||||
|
|
||||||
delete name;
|
delete name;
|
||||||
delete lag;
|
delete lag;
|
||||||
|
|
Loading…
Reference in New Issue