11#ifndef COUENNEVAROBJECT_HPP
12#define COUENNEVAROBJECT_HPP
Cut Generator for linear convexifications.
CouenneObject()
empty constructor (for unused objects)
Class for MINLP problems with symbolic information.
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 = ...
~CouenneVarObject()
Destructor.
virtual CouenneObject * clone() const
Cloning method.
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
virtual OsiBranchingObject * createBranch(OsiSolverInterface *, const OsiBranchingInformation *, int) const
create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object
general include file for different compilers
Ipopt::SmartPtr< Ipopt::Journalist > JnlstPtr
double CouNumber
main number type in Couenne