Detailed Description
template<class T>
class gcg::HyperrowGraph< T >
Definition at line 48 of file hyperrowgraph.h.
#include <hyperrowgraph.h>
Public Member Functions | |
HyperrowGraph (SCIP *scip, Weights w) | |
virtual | ~HyperrowGraph () |
SCIP_RETCODE | writeToFile (int fd, SCIP_Bool edgeweights) |
virtual int | getNNodes () |
virtual int | getNEdges () |
virtual int | getNNeighbors (int i) |
virtual std::vector< int > | getNeighbors (int i) |
virtual std::vector< int > | getHyperedgeNodes (int i) |
virtual SCIP_RETCODE | readPartition (const char *filename) |
virtual std::vector< int > | getPartition () |
virtual SCIP_RETCODE | createDecompFromPartition (DEC_DECOMP **decomp) |
virtual SCIP_RETCODE | createPartialdecFromPartition (PARTIALDECOMP *oldpartialdec, PARTIALDECOMP **firstpartialdec, PARTIALDECOMP **secondpartialdec, DETPROBDATA *detprobdata) |
virtual SCIP_RETCODE | createPartialdecFromPartition (PARTIALDECOMP **firstpartialdec, PARTIALDECOMP **secondpartialdec, DETPROBDATA *detprobdata) |
virtual SCIP_RETCODE | createFromMatrix (SCIP_CONS **conss, SCIP_VAR **vars, int nconss_, int nvars_) |
virtual SCIP_RETCODE | createFromPartialMatrix (DETPROBDATA *detprobdata, PARTIALDECOMP *partialdec) |
Public Member Functions inherited from gcg::MatrixGraph< T > | |
MatrixGraph (SCIP *scip, Weights w) | |
virtual | ~MatrixGraph () |
void | setDummynodes (int dummynodes_) |
int | getDummynodes () const |
virtual int | getNNonzeroes () const |
Additional Inherited Members | |
Data Fields inherited from gcg::MatrixGraph< T > | |
std::string | name |
Protected Attributes inherited from gcg::MatrixGraph< T > | |
SCIP * | scip_ |
int | nconss |
int | nvars |
int | dummynodes |
Weights | weights |
GraphInterface * | graphiface |
int | nnonzeroes |
Constructor & Destructor Documentation
◆ HyperrowGraph()
gcg::HyperrowGraph< T >::HyperrowGraph | ( | SCIP * | scip, |
Weights | w | ||
) |
- Parameters
-
scip SCIP data structure w weights for the given graph
Definition at line 53 of file hyperrowgraph_def.h.
References gcg::MatrixGraph< T >::graphiface, and gcg::MatrixGraph< T >::name.
◆ ~HyperrowGraph()
|
virtual |
Definition at line 63 of file hyperrowgraph_def.h.
Member Function Documentation
◆ writeToFile()
|
virtual |
writes the graph to the given file. The format is graph dependent
- Parameters
-
fd filename where the graph should be written to edgeweights whether to write edgeweights
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 73 of file hyperrowgraph_def.h.
◆ getNNodes()
|
virtual |
return the number of nodes
Definition at line 113 of file hyperrowgraph_def.h.
◆ getNEdges()
|
virtual |
return the number of edges (or hyperedges)
Definition at line 107 of file hyperrowgraph_def.h.
◆ getNNeighbors()
|
virtual |
return node degree
Definition at line 119 of file hyperrowgraph_def.h.
◆ getNeighbors()
|
inlinevirtual |
Definition at line 79 of file hyperrowgraph.h.
References gcg::Hypergraph< T >::getNeighbors().
◆ getHyperedgeNodes()
|
virtual |
Definition at line 130 of file hyperrowgraph_def.h.
◆ readPartition()
|
inlinevirtual |
reads the partition from the given file. The format is graph dependent. The default is a file with one line for each node a
- Parameters
-
filename filename where the partition is stored
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 94 of file hyperrowgraph.h.
References gcg::Hypergraph< T >::readPartition().
◆ getPartition()
|
inlinevirtual |
return a partition of the nodes
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 103 of file hyperrowgraph.h.
References gcg::GraphInterface::getPartition().
◆ createDecompFromPartition()
|
virtual |
- Parameters
-
decomp decomposition structure to generate
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 142 of file hyperrowgraph_def.h.
References DECdecompCreate(), DECfilloutDecompFromConstoblock(), and partition().
◆ createPartialdecFromPartition() [1/2]
|
virtual |
amplifies a partialdec by dint of a graph created with open constraints and open variables of the partialdec
stores the conss included by the graph
< true, if the cons will be part of the graph
- Parameters
-
oldpartialdec partialdec which should be amplifies firstpartialdec pointer to buffer the new partialdec amplified by dint of the graph secondpartialdec pinter to buffer the new partialdec whose border is amplified by dint of the graph detprobdata detection process information and data
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 297 of file hyperrowgraph_def.h.
References gcg::PARTIALDECOMP::getNConss(), gcg::PARTIALDECOMP::getNOpenconss(), gcg::PARTIALDECOMP::getNOpenvars(), gcg::DETPROBDATA::getNVarsForCons(), gcg::PARTIALDECOMP::getOpenconss(), gcg::PARTIALDECOMP::getOpenvars(), gcg::DETPROBDATA::getVarsForCons(), and partition().
◆ createPartialdecFromPartition() [2/2]
|
virtual |
creates a new partialdec by dint of a graph created with all constraints and variables
- Parameters
-
firstpartialdec pointer to buffer the new partialdec created by dint of the graph secondpartialdec pointer to buffer the new partialdec whose border is amplified by dint of the graph detprobdata detection process information and data
Definition at line 210 of file hyperrowgraph_def.h.
References gcg::DETPROBDATA::getIndexForCons(), gcg::DETPROBDATA::isAssignedToOrigProb(), and partition().
◆ createFromMatrix()
|
virtual |
- Parameters
-
conss constraints for which graph should be created vars variables for which graph should be created nconss_ number of constraints nvars_ number of variables
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 413 of file hyperrowgraph_def.h.
References GCGisVarRelevant().
◆ createFromPartialMatrix()
|
virtual |
creates a graph with open constraints and open variables of the partialdec
< true, if the var will be part of the graph
< true, if the cons will be part of the graph
stores the conss included by the graph
stores the vars included by the graph
- Parameters
-
detprobdata detection process information and data partialdec partial decomposition to use for matrix
Reimplemented from gcg::MatrixGraph< T >.
Definition at line 504 of file hyperrowgraph_def.h.
References gcg::DETPROBDATA::getCons(), gcg::PARTIALDECOMP::getNConss(), gcg::PARTIALDECOMP::getNOpenconss(), gcg::PARTIALDECOMP::getNOpenvars(), gcg::PARTIALDECOMP::getNVars(), gcg::DETPROBDATA::getNVarsForCons(), gcg::PARTIALDECOMP::getOpenconss(), gcg::PARTIALDECOMP::getOpenvars(), gcg::DETPROBDATA::getVar(), and gcg::DETPROBDATA::getVarsForCons().