0
2
0
... | ... |
@@ -2666,10 +2666,10 @@ |
2666 | 2666 |
/// \brief Adaptor class for composing the residual digraph for directed |
2667 | 2667 |
/// flow and circulation problems. |
2668 | 2668 |
/// |
2669 |
/// Residual can be used for composing the \e residual digraph for directed |
|
2670 |
/// flow and circulation problems. Let \f$ G=(V, A) \f$ be a directed graph |
|
2671 |
/// and let \f$ F \f$ be a number type. Let \f$ flow, cap: A\to F \f$ be |
|
2672 |
/// functions on the arcs. |
|
2669 |
/// ResidualDigraph can be used for composing the \e residual digraph |
|
2670 |
/// for directed flow and circulation problems. Let \f$ G=(V, A) \f$ |
|
2671 |
/// be a directed graph and let \f$ F \f$ be a number type. |
|
2672 |
/// Let \f$ flow, cap: A\to F \f$ be functions on the arcs. |
|
2673 | 2673 |
/// This adaptor implements a digraph structure with node set \f$ V \f$ |
2674 | 2674 |
/// and arc set \f$ A_{forward}\cup A_{backward} \f$, |
2675 | 2675 |
/// where \f$ A_{forward}=\{uv : uv\in A, flow(uv)<cap(uv)\} \f$ and |
... | ... |
@@ -2704,13 +2704,13 @@ |
2704 | 2704 |
/// is convertible to the \c Arc type of the adapted digraph. |
2705 | 2705 |
#ifdef DOXYGEN |
2706 | 2706 |
template<typename GR, typename CM, typename FM, typename TL> |
2707 |
class |
|
2707 |
class ResidualDigraph |
|
2708 | 2708 |
#else |
2709 | 2709 |
template<typename GR, |
2710 | 2710 |
typename CM = typename GR::template ArcMap<int>, |
2711 | 2711 |
typename FM = CM, |
2712 | 2712 |
typename TL = Tolerance<typename CM::Value> > |
2713 |
class |
|
2713 |
class ResidualDigraph : |
|
2714 | 2714 |
public FilterArcs< |
2715 | 2715 |
Undirector<const GR>, |
2716 | 2716 |
typename Undirector<const GR>::template CombinedArcMap< |
... | ... |
@@ -2730,7 +2730,7 @@ |
2730 | 2730 |
typedef TL Tolerance; |
2731 | 2731 |
|
2732 | 2732 |
typedef typename CapacityMap::Value Value; |
2733 |
typedef |
|
2733 |
typedef ResidualDigraph Adaptor; |
|
2734 | 2734 |
|
2735 | 2735 |
protected: |
2736 | 2736 |
|
... | ... |
@@ -2761,8 +2761,8 @@ |
2761 | 2761 |
/// |
2762 | 2762 |
/// Constructor of the residual digraph adaptor. The parameters are the |
2763 | 2763 |
/// digraph, the capacity map, the flow map, and a tolerance object. |
2764 |
Residual(const Digraph& digraph, const CapacityMap& capacity, |
|
2765 |
FlowMap& flow, const Tolerance& tolerance = Tolerance()) |
|
2764 |
ResidualDigraph(const Digraph& digraph, const CapacityMap& capacity, |
|
2765 |
FlowMap& flow, const Tolerance& tolerance = Tolerance()) |
|
2766 | 2766 |
: Parent(), _capacity(&capacity), _flow(&flow), _graph(digraph), |
2767 | 2767 |
_forward_filter(capacity, flow, tolerance), |
2768 | 2768 |
_backward_filter(capacity, flow, tolerance), |
... | ... |
@@ -2869,10 +2869,9 @@ |
2869 | 2869 |
/// \ingroup graph_adaptors |
2870 | 2870 |
/// \relates Residual |
2871 | 2871 |
template<typename GR, typename CM, typename FM> |
2872 |
Residual<GR, CM, FM> residual(const GR& digraph, |
|
2873 |
const CM& capacity_map, |
|
2874 |
FM& flow_map) { |
|
2875 |
return Residual<GR, CM, FM> (digraph, capacity_map, flow_map); |
|
2872 |
ResidualDigraph<GR, CM, FM> |
|
2873 |
residualDigraph(const GR& digraph, const CM& capacity_map, FM& flow_map) { |
|
2874 |
return ResidualDigraph<GR, CM, FM> (digraph, capacity_map, flow_map); |
|
2876 | 2875 |
} |
2877 | 2876 |
|
2878 | 2877 |
... | ... |
@@ -581,15 +581,15 @@ |
581 | 581 |
ea = a2; |
582 | 582 |
} |
583 | 583 |
|
584 |
void |
|
584 |
void checkResidualDigraph() { |
|
585 | 585 |
// Check concepts |
586 |
checkConcept<concepts::Digraph, Residual<concepts::Digraph> >(); |
|
587 |
checkConcept<concepts::Digraph, Residual<ListDigraph> >(); |
|
586 |
checkConcept<concepts::Digraph, ResidualDigraph<concepts::Digraph> >(); |
|
587 |
checkConcept<concepts::Digraph, ResidualDigraph<ListDigraph> >(); |
|
588 | 588 |
|
589 | 589 |
// Create a digraph and an adaptor |
590 | 590 |
typedef ListDigraph Digraph; |
591 | 591 |
typedef Digraph::ArcMap<int> IntArcMap; |
592 |
typedef |
|
592 |
typedef ResidualDigraph<Digraph, IntArcMap> Adaptor; |
|
593 | 593 |
|
594 | 594 |
Digraph digraph; |
595 | 595 |
IntArcMap capacity(digraph), flow(digraph); |
... | ... |
@@ -1470,7 +1470,7 @@ |
1470 | 1470 |
checkFilterNodes1(); |
1471 | 1471 |
checkFilterArcs(); |
1472 | 1472 |
checkUndirector(); |
1473 |
|
|
1473 |
checkResidualDigraph(); |
|
1474 | 1474 |
checkSplitNodes(); |
1475 | 1475 |
|
1476 | 1476 |
// Check the graph adaptors (using ListGraph) |
0 comments (0 inline)