Add with_lhs argument

This commit is contained in:
2021-04-15 12:39:48 -05:00
parent 18521331c9
commit 4dd4ef52bd
4 changed files with 41 additions and 28 deletions

View File

@@ -167,6 +167,7 @@ class GurobiSolver(InternalSolver):
self,
with_static: bool = True,
with_sa: bool = True,
with_lhs: bool = True,
) -> ConstraintFeatures:
model = self.model
assert model is not None
@@ -187,14 +188,15 @@ class GurobiSolver(InternalSolver):
if with_static:
rhs = tuple(model.getAttr("rhs", gp_constrs))
senses = tuple(model.getAttr("sense", gp_constrs))
lhs_l: List = [None for _ in gp_constrs]
for (i, gp_constr) in enumerate(gp_constrs):
expr = model.getRow(gp_constr)
lhs_l[i] = tuple(
(self._var_names[expr.getVar(j).index], expr.getCoeff(j))
for j in range(expr.size())
)
lhs = tuple(lhs_l)
if with_lhs:
lhs_l: List = [None for _ in gp_constrs]
for (i, gp_constr) in enumerate(gp_constrs):
expr = model.getRow(gp_constr)
lhs_l[i] = tuple(
(self._var_names[expr.getVar(j).index], expr.getCoeff(j))
for j in range(expr.size())
)
lhs = tuple(lhs_l)
if self._has_lp_solution:
dual_value = tuple(model.getAttr("pi", gp_constrs))