Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

CutConstraint.h
Go to the documentation of this file.
1 
37 #pragma once
38 
41 
43 
44 namespace ogdf {
45 namespace cluster_planarity {
46 
47 class CutConstraint : public BaseConstraint {
48 public:
50 
51  virtual ~CutConstraint();
52 
53  // Computes and returns the coefficient for the given variable
54  virtual double coeff(const abacus::Variable* v) const override {
55  const EdgeVar* ev = static_cast<const EdgeVar*>(v);
56  return static_cast<double>(coeff(ev->sourceNode(), ev->targetNode()));
57  }
58 
59  inline int coeff(const NodePair& n) const override { return coeff(n.source, n.target); }
60 
61  int coeff(node n1, node n2) const;
62 
63  void printMe(std::ostream& out) const {
64  out << "[CutCon: ";
65  for (const NodePair& p : m_cutEdges) {
66  out << p << ",";
67  }
68  out << "]";
69  }
70 
71 private:
72  // The list containing the node pairs corresponding to the cut edges
74 };
75 
76 }
77 }
ogdf
The namespace for all OGDF objects.
Definition: AugmentationModule.h:36
ogdf::cluster_planarity::EdgeVar::targetNode
node targetNode() const
Definition: EdgeVar.h:62
abacus::ConVar::sub
const Sub * sub() const
Returns a const pointer to the subproblem associated with the constraint/variable.
Definition: convar.h:199
constraint.h
constraint.
ogdf::NodePair
Definition: Graph_d.h:2101
ogdf::cluster_planarity::CutConstraint::m_cutEdges
List< NodePair > m_cutEdges
Definition: CutConstraint.h:73
ogdf::NodePair::source
node source
Definition: Graph_d.h:2102
ogdf::cluster_planarity::CutConstraint::printMe
void printMe(std::ostream &out) const
Definition: CutConstraint.h:63
EdgeVar.h
Declaration of the variable class for the Branch&Cut algorithm for the Maximum C-Planar SubGraph prob...
ogdf::cluster_planarity::CutConstraint::CutConstraint
CutConstraint(abacus::Master *master, abacus::Sub *sub, List< NodePair > &edges)
ogdf::NodePair::target
node target
Definition: Graph_d.h:2103
abacus::Variable
Forms the virtual base class for all possible variables given in pool format.
Definition: variable.h:59
ogdf::List
Doubly linked lists (maintaining the length of the list).
Definition: List.h:42
ogdf::cluster_planarity::BaseConstraint
Basic constraint type.
Definition: basics.h:60
ogdf::cluster_planarity::EdgeVar::sourceNode
node sourceNode() const
Definition: EdgeVar.h:60
ogdf::cluster_planarity::CutConstraint::~CutConstraint
virtual ~CutConstraint()
ogdf::cluster_planarity::CutConstraint::coeff
int coeff(const NodePair &n) const override
Definition: CutConstraint.h:59
abacus::Sub
The subproblem.
Definition: sub.h:68
basics.h
Declaration of the master class for the Branch&Cut algorithm for the Maximum C-Planar SubGraph proble...
ogdf::NodeElement
Class for the representation of nodes.
Definition: Graph_d.h:233
ogdf::cluster_planarity::CutConstraint
Definition: CutConstraint.h:47
ogdf::cluster_planarity::EdgeVar
Definition: EdgeVar.h:44
ogdf::cluster_planarity::CutConstraint::coeff
virtual double coeff(const abacus::Variable *v) const override
Returns the coefficient of the variable v in the constraint.
Definition: CutConstraint.h:54
abacus::Master
The master of the optimization.
Definition: master.h:69