#include <auxiliaryNetwork.h>
Inheritance diagram for layeredAuxNetwork:
Public Member Functions | |
layeredAuxNetwork (abstractDiGraph &GC, TNode ss) throw () | |
~layeredAuxNetwork () throw () | |
unsigned long | Size () const throw () |
unsigned long | Allocated () const throw () |
investigator * | NewInvestigator () const throw () |
TNode | StartNode (TArc a) const throw (ERRange) |
TNode | EndNode (TArc a) const throw (ERRange) |
TArc | First (TNode v) const throw (ERRange,ERRejected) |
TArc | Right (TArc a, TNode v) const throw (ERRange,ERRejected) |
TCap | UCap (TArc a) const throw (ERRange) |
bool | CUCap () const throw () |
bool | Blocking (TArc a) const throw (ERRange) |
char | Orientation (TArc a) throw (ERRange) |
bool | COrientation () throw () |
void | WriteIncidences (goblinExport *F) throw () |
TFloat | Dist (TNode v) throw (ERRange) |
TFloat | Length (TArc a) const throw () |
bool | CLength () const throw () |
TFloat | C (TNode v, char i) const throw (ERRange) |
TFloat | CMax (char i) const throw (ERRange) |
TDim | Dim () const throw () |
bool | HiddenNode (TNode v) const throw (ERRange) |
void | Phase1 () throw (ERRejected) |
void | Init () throw () |
void | InsertProp (TArc a) throw (ERRange,ERRejected) |
void | Phase2 () throw (ERRejected) |
bool | Blocked (TNode v) const throw (ERRange) |
TFloat | FindPath (TNode t) throw (ERRange,ERRejected) |
void | TopErasure (TArc a) throw (ERRange,ERRejected) |
TFloat | Sub (TArc a) const throw () |
Protected Attributes | |
abstractDiGraph & | G |
TNode | s |
TArc * | pred |
investigator * | I |
char | Phase |
char * | align |
TArc * | outDegree |
TArc ** | successor |
TArc * | inDegree |
TArc * | currentDegree |
TArc ** | prop |
staticQueue< TNode > * | blocked |
An auxiliary network is a sparely represented DAG and defined relative to a flow network G (a digraph with fixed arc capacities) and a pair of nodes s, t for which a flow has to be maximized (t is not specified in the constructor, but only in augmenation phases).
The incidence structure of the auxiliary network is manipulated in phases. In the odd phases, incidences are generated for the arcs which occur on a shortest residual path. In the even phases (the augmentation phases), arcs are deleted when no further residual capacity is available.
|
|
|
|
|
Reimplemented from abstractDiGraph. Reimplemented in layeredShrNetwork. |
|
|
|
Sort out backward arcs.
Reimplemented from abstractMixedGraph. |
|
|
|
Check if the arc length labels are all the same.
Reimplemented from abstractMixedGraph. |
|
|
|
|
|
Check if the upper capacity bounds are all the same.
Reimplemented from abstractMixedGraph. |
|
Retrieve the coordinate representational dimension.
Reimplemented from abstractMixedGraph. |
|
|
|
Query the end node of a given arc.
Reimplemented from abstractMixedGraph. |
|
Reimplemented in layeredShrNetwork. |
|
Retrieve an arc with a given start node. The First(v) incidence is somewhat arbitrary, since icidence lists are cyclic. But when an arc is inserted, it is inserted into the incidence lists right after the First() incidence. If the graph is planely represented, and v is an exterior node, the first two incidences are usually exterior arcs, and inserting an arc with two exterior end nodes preserves the planar representation.
Implements abstractMixedGraph. |
|
Check wether a given graph node shall be visualized or not.
Reimplemented from abstractMixedGraph. |
|
Reimplemented in layeredShrNetwork. |
|
|
|
Retrieve an arc length.
Reimplemented from abstractMixedGraph. |
|
Allocate an investigator object for this graph.
Reimplemented from abstractMixedGraph. |
|
|
|
|
|
|
|
Query the successor of a given arc in the incidence list of its start node.
Implements abstractMixedGraph. |
|
Implements goblinRootObject. Reimplemented in layeredShrNetwork. |
|
Query the start node of a given arc.
Implements abstractMixedGraph. Reimplemented in layeredShrNetwork. |
|
Retrieve the subgraph multiplicity of a given arc.
Implements abstractMixedGraph. |
|
|
|
Retrieve an upper capacity bound.
Reimplemented from abstractMixedGraph. Reimplemented in layeredShrNetwork. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|