Constraint for nodes, e.g., in/outdegree stuff. More...
#include <ogdf/graphalg/MinSteinerTreeDirectedCut.h>
Inheritance diagram for ogdf::MinSteinerTreeDirectedCut< T >::DegreeConstraint:Public Member Functions | |
| DegreeConstraint (abacus::Master *master, node n, double coeffIn, double coeffOut, abacus::CSense::SENSE sense, double rhs) | |
| virtual double | coeff (const abacus::Variable *v) const override |
| coefficient of variable in constraint | |
| node | theNode () const |
| the associated node | |
Public Member Functions inherited from abacus::Constraint | |
| Constraint (const Constraint &rhs) | |
| Copy constructor. | |
| Constraint (Master *master) | |
| Initializes an empty constraint. | |
| Constraint (Master *master, const Sub *sub, CSense::SENSE sense, double rhs, bool dynamic, bool local, bool liftable) | |
| Initializes a constraint. | |
| virtual | ~Constraint () |
| ConClass * | classification (Active< Variable, Constraint > *var=nullptr) const |
| Returns a pointer to the classification of the constraint. | |
| virtual double | distance (double *x, Active< Variable, Constraint > *actVar) const |
| Returns the Euclidean distance of x associated with variable set actVar to the hyperplane induced by the constraint. | |
| virtual int | genRow (Active< Variable, Constraint > *var, Row &row) const |
| Generates the row format of the constraint associated with the variable set var. | |
| bool | liftable () const |
| Checks if the constraint is liftable. | |
| void | printRow (std::ostream &out, Active< Variable, Constraint > *var) const |
| Writes the row format of the constraint associated with the variable set var to output stream out. | |
| virtual double | rhs () const |
| Returns the right hand side of the constraint. | |
| CSense * | sense () |
| Returns a pointer to the sense of the constraint. | |
| const CSense * | sense () const |
| Returns a const pointer to the sense of the constraint. | |
| virtual double | slack (Active< Variable, Constraint > *variables, double *x) const |
| Computes the slack of the vector x associated with the variable set variables. | |
| virtual bool | valid (Sub *sub) const |
| Checks if the constraint is valid for the subproblem sub. | |
| virtual bool | violated (Active< Variable, Constraint > *variables, double *x, double *sl=nullptr) const |
| Checks if a constraint is violated by a vector x associated with a variable set. | |
| virtual bool | violated (double slack) const |
| Checks if a constraint is violated given the slack of a vector. | |
Public Member Functions inherited from abacus::ConVar | |
| ConVar (Master *master, const Sub *sub, bool dynamic, bool local) | |
| Creates an instance of type ConVar. | |
| virtual | ~ConVar () |
| bool | active () const |
| Checks if the constraint/variable is active in at least one active subproblem. | |
| virtual bool | dynamic () const |
| Return true if the constraint/variable is dynamic. | |
| virtual bool | equal (const ConVar *cv) const |
| Should compare if the constraint/variable is identical (in a mathematical sense) with the constraint/variable cv. | |
| bool | global () const |
| Returns true if the constraint/variable is globally valid, false otherwise. | |
| virtual unsigned | hashKey () const |
| Should provide a key for the constraint/variable that can be used to insert it into a hash table. | |
| bool | local () const |
| Returns true if the constraint/variable is only locally valid, false otherwise. | |
| virtual const char * | name () const |
| Should return the name of the constraint/variable. | |
| virtual void | print (std::ostream &out) const |
| Writes the constraint/variable to the output stream out. | |
| virtual double | rank () const |
| The function should return a rank associated with the constraint/variable. | |
| const Sub * | sub () const |
| Returns a const pointer to the subproblem associated with the constraint/variable. | |
| void | sub (Sub *sub) |
| Associates a new subproblem with the constraint/variable. | |
| bool | expanded () const |
| Returns true if the expanded format of a constraint/variable is available, false otherwise. | |
| virtual void | expand () const |
| Expands a constraint/variable. | |
| virtual void | compress () const |
| Compresses a constraint/variable. | |
| virtual bool | deletable () const |
| Returns true if the constraint/variable can be destructed. | |
Public Member Functions inherited from abacus::AbacusRoot | |
| virtual | ~AbacusRoot () |
| The destructor. | |
Private Attributes | |
| double | m_coeffIn |
| coefficient of ingoing edges | |
| double | m_coeffOut |
| coefficient of outgoing edges | |
| node | m_node |
| the associated node | |
Additional Inherited Members | |
Static Public Member Functions inherited from abacus::AbacusRoot | |
| static bool | ascii2bool (const string &str) |
| Converts the string str to a boolean value. | |
| static bool | endsWith (const string &str, const string &end) |
| Returns true if str ends with end, false otherwise. | |
| static double | fracPart (double x) |
| Returns the absolute value of the fractional part of x. | |
| static const char * | onOff (bool value) |
| Converts a boolean variable to the strings "on" and "off". | |
Protected Member Functions inherited from abacus::Constraint | |
| virtual ConClass * | classify (Active< Variable, Constraint > *var) const |
| The default implementation returns a 0 pointer. | |
| virtual InfeasCon::INFEAS | voidLhsViolated (double newRhs) const |
| Can be called if after variable elimination the left hand side of the constraint has become void and the right hand side has been adapted to newRhs. | |
Protected Attributes inherited from abacus::Constraint | |
| ConClass * | conClass_ |
| bool | liftable_ |
| This member is true if also coefficients of variables which have been inactive at generation time can be computed, false otherwise. | |
| double | rhs_ |
| The right hand side of the constraint. | |
| CSense | sense_ |
| The sense of the constraint. | |
Protected Attributes inherited from abacus::ConVar | |
| bool | dynamic_ |
| If this member is true then the constraint/variable can be also removed from the active formulation after it is added the first time. | |
| bool | expanded_ |
| true, if expanded version of constraint/variables available. | |
| bool | local_ |
| true if the constraint/variable is only locally valid | |
| Master * | master_ |
| A pointer to the corresponding master of the optimization. | |
| int | nActive_ |
| The number of active subproblems of which the constraint/variable belongs to the set of active constraints/variables. | |
| int | nLocks_ |
| The number of locks which have been set on the constraint/variable. | |
| int | nReferences_ |
| The number of references to the pool slot the constraint is stored in. | |
| const Sub * | sub_ |
| A pointer to the subproblem associated with the constraint/variable. | |
Constraint for nodes, e.g., in/outdegree stuff.
Definition at line 814 of file MinSteinerTreeDirectedCut.h.
|
inline |
Definition at line 816 of file MinSteinerTreeDirectedCut.h.
|
inlineoverridevirtual |
coefficient of variable in constraint
Implements abacus::Constraint.
Definition at line 824 of file MinSteinerTreeDirectedCut.h.
|
inline |
the associated node
Definition at line 839 of file MinSteinerTreeDirectedCut.h.
|
private |
coefficient of ingoing edges
Definition at line 845 of file MinSteinerTreeDirectedCut.h.
|
private |
coefficient of outgoing edges
Definition at line 847 of file MinSteinerTreeDirectedCut.h.
|
private |
the associated node
Definition at line 843 of file MinSteinerTreeDirectedCut.h.