Simplification: use std::max when computing maxima
parent
36fa97e5c5
commit
fd6e700ec7
|
@ -5609,30 +5609,22 @@ DynamicModel::setLeadsLagsOrig()
|
||||||
int lag = dynvar.second;
|
int lag = dynvar.second;
|
||||||
SymbolType type = symbol_table.getType(dynvar.first);
|
SymbolType type = symbol_table.getType(dynvar.first);
|
||||||
|
|
||||||
if (max_lead_orig < lag)
|
max_lead_orig = max(lag, max_lead_orig);
|
||||||
max_lead_orig= lag;
|
max_lag_orig = max(-lag, max_lag_orig);
|
||||||
else if (-max_lag_orig > lag)
|
|
||||||
max_lag_orig = -lag;
|
|
||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case SymbolType::endogenous:
|
case SymbolType::endogenous:
|
||||||
if (max_endo_lead_orig < lag)
|
max_endo_lead_orig = max(lag, max_endo_lead_orig);
|
||||||
max_endo_lead_orig = lag;
|
max_endo_lag_orig = max(-lag, max_endo_lag_orig);
|
||||||
else if (-max_endo_lag_orig > lag)
|
|
||||||
max_endo_lag_orig = -lag;
|
|
||||||
break;
|
break;
|
||||||
case SymbolType::exogenous:
|
case SymbolType::exogenous:
|
||||||
if (max_exo_lead_orig < lag)
|
max_exo_lead_orig = max(lag, max_exo_lead_orig);
|
||||||
max_exo_lead_orig = lag;
|
max_exo_lag_orig = max(-lag, max_exo_lag_orig);
|
||||||
else if (-max_exo_lag_orig > lag)
|
|
||||||
max_exo_lag_orig = -lag;
|
|
||||||
break;
|
break;
|
||||||
case SymbolType::exogenousDet:
|
case SymbolType::exogenousDet:
|
||||||
if (max_exo_det_lead_orig < lag)
|
max_exo_det_lead_orig = max(lag, max_exo_det_lead_orig);
|
||||||
max_exo_det_lead_orig = lag;
|
max_exo_det_lag_orig = max(-lag, max_exo_det_lag_orig);
|
||||||
else if (-max_exo_det_lag_orig > lag)
|
|
||||||
max_exo_det_lag_orig = -lag;
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
@ -5669,30 +5661,25 @@ DynamicModel::computeDerivIDs()
|
||||||
We don't want these to be affected by lead/lags on parameters: they
|
We don't want these to be affected by lead/lags on parameters: they
|
||||||
are accepted for facilitating variable flipping, but are simply
|
are accepted for facilitating variable flipping, but are simply
|
||||||
ignored. */
|
ignored. */
|
||||||
if (max_lead < lag && type != SymbolType::parameter)
|
if (type != SymbolType::parameter)
|
||||||
max_lead = lag;
|
{
|
||||||
else if (-max_lag > lag && type != SymbolType::parameter)
|
max_lead = max(lag, max_lead);
|
||||||
max_lag = -lag;
|
max_lag = max(-lag, max_lag);
|
||||||
|
}
|
||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case SymbolType::endogenous:
|
case SymbolType::endogenous:
|
||||||
if (max_endo_lead < lag)
|
max_endo_lead = max(lag, max_endo_lead);
|
||||||
max_endo_lead = lag;
|
max_endo_lag = max(-lag, max_endo_lag);
|
||||||
else if (-max_endo_lag > lag)
|
|
||||||
max_endo_lag = -lag;
|
|
||||||
break;
|
break;
|
||||||
case SymbolType::exogenous:
|
case SymbolType::exogenous:
|
||||||
if (max_exo_lead < lag)
|
max_exo_lead = max(lag, max_exo_lead);
|
||||||
max_exo_lead = lag;
|
max_exo_lag = max(-lag, max_exo_lag);
|
||||||
else if (-max_exo_lag > lag)
|
|
||||||
max_exo_lag = -lag;
|
|
||||||
break;
|
break;
|
||||||
case SymbolType::exogenousDet:
|
case SymbolType::exogenousDet:
|
||||||
if (max_exo_det_lead < lag)
|
max_exo_det_lead = max(lag, max_exo_det_lead);
|
||||||
max_exo_det_lead = lag;
|
max_exo_det_lag = max(-lag, max_exo_det_lag);
|
||||||
else if (-max_exo_det_lag > lag)
|
|
||||||
max_exo_det_lag = -lag;
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue