Lines Matching defs:simplex

501   // coefficient, without needing to perform any simplex queries on the domain.
736 // B is basically the simplex tableau of our implementation except that instead
1217 // column, because when rolling back a lexicographic simplex, we always
1338 "IntegerRelation must have same dimensionality as simplex");
1645 /// Given a simplex for a polytope, construct a new simplex whose variables are
1660 : simplex(Simplex::makeProduct(originalSimplex, originalSimplex)),
1661 simplexConstraintOffset(simplex.getNumConstraints()) {}
1664 /// First pushes a snapshot for the current simplex state to the stack so
1669 snapshotStack.emplace_back(simplex.getSnapshot());
1670 simplex.addEquality(getCoeffsForDirection(dir));
1675 simplex.computeOptimum(Direction::Up, getCoeffsForDirection(dir));
1691 SimplexRollbackScopeExit scopeExit(simplex);
1692 unsigned conIndex = simplex.addRow(getCoeffsForDirection(dir));
1693 unsigned row = simplex.con[conIndex].pos;
1695 simplex.computeRowOptimum(Simplex::Direction::Up, row);
1697 dualDenom = simplex.tableau(row, 0);
1724 assert((simplex.con[i].orientation != Orientation::Column ||
1725 simplex.con[i + 1].orientation != Orientation::Column) &&
1728 if (simplex.con[i].orientation == Orientation::Column)
1729 dual.emplace_back(-simplex.tableau(row, simplex.con[i].pos));
1730 else if (simplex.con[i + 1].orientation == Orientation::Column)
1731 dual.emplace_back(simplex.tableau(row, simplex.con[i + 1].pos));
1744 simplex.rollback(snapshotStack.back());
1755 assert(2 * dir.size() == simplex.getNumVariables() &&
1765 Simplex simplex;
1767 /// the last constraint in the initial product simplex.
2117 assert(!isEmpty() && "cannot check for flatness of empty simplex!");