11 #ifndef COUENNEVAROBJECT_HPP
12 #define COUENNEVAROBJECT_HPP
Cut Generator for linear convexifications.
OsiObject for auxiliary variables $w=f(x)$.
Class for MINLP problems with symbolic information.
OsiObject for variables in a MINLP.
virtual double infeasibility(const OsiBranchingInformation *info, int &way) const
compute infeasibility of this variable x as the sum/min/max of all infeasibilities of auxiliaries w w...
virtual double checkInfeasibility(const OsiBranchingInformation *info) const
compute infeasibility of this variable, |w - f(x)|, where w is the auxiliary variable defined as w = ...
virtual CouenneObject * clone() const
Cloning method.
~CouenneVarObject()
Destructor.
virtual OsiBranchingObject * createBranch(OsiSolverInterface *, const OsiBranchingInformation *, int) const
create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object
CouNumber computeBranchingPoint(const OsiBranchingInformation *info, int &bestWay, const CouenneObject *&criticalObject) const
Method computing the branching point.
virtual bool isCuttable() const
are we on the bad or good side of the expression?
int varSelection_
branching scheme used.
CouenneVarObject(const CouenneVarObject &src)
Copy constructor.
CouenneVarObject(CouenneCutGenerator *c, CouenneProblem *p, exprVar *ref, Bonmin::BabSetupBase *base, JnlstPtr jnlst, int varSelection)
Constructor with information for branching point selection strategy.
virtual double feasibleRegion(OsiSolverInterface *, const OsiBranchingInformation *) const
fix nonlinear coordinates of current integer-nonlinear feasible solution
general include file for different compilers
double CouNumber
main number type in Couenne