[Lemon-commits] [lemon_svn] marci: r506 - in hugo/trunk/src/work: jacint marci
Lemon SVN
svn at lemon.cs.elte.hu
Mon Nov 6 20:39:50 CET 2006
Author: marci
Date: Thu Apr 22 18:07:17 2004
New Revision: 506
Modified:
hugo/trunk/src/work/jacint/preflowproba.h
hugo/trunk/src/work/marci/edmonds_karp_demo.cc
hugo/trunk/src/work/marci/graph_wrapper.h
hugo/trunk/src/work/marci/makefile
Log:
preflow mods
Modified: hugo/trunk/src/work/jacint/preflowproba.h
==============================================================================
--- hugo/trunk/src/work/jacint/preflowproba.h (original)
+++ hugo/trunk/src/work/jacint/preflowproba.h Thu Apr 22 18:07:17 2004
@@ -40,8 +40,8 @@
*/
-#ifndef HUGO_PREFLOW_H
-#define HUGO_PREFLOW_H
+#ifndef HUGO_PREFLOW_PROBA_H
+#define HUGO_PREFLOW_PROBA_H
#define H0 20
#define H1 1
@@ -55,7 +55,7 @@
template <typename Graph, typename T,
typename CapMap=typename Graph::EdgeMap<T>,
typename FlowMap=typename Graph::EdgeMap<T> >
- class Preflow {
+ class PreflowProba {
typedef typename Graph::Node Node;
typedef typename Graph::Edge Edge;
@@ -78,7 +78,7 @@
typedef typename ResGW::Edge ResEdge;
public:
- Preflow(Graph& _G, Node _s, Node _t, CapMap& _capacity,
+ PreflowProba(Graph& _G, Node _s, Node _t, CapMap& _capacity,
FlowMap& _flow, bool _constzero, bool _res ) :
G(_G), s(_s), t(_t), capacity(_capacity), flow(_flow), constzero(_constzero), res(_res) {}
@@ -682,7 +682,7 @@
} //namespace hugo
-#endif //PREFLOW_H
+#endif //PREFLOW_PROBA_H
Modified: hugo/trunk/src/work/marci/edmonds_karp_demo.cc
==============================================================================
--- hugo/trunk/src/work/marci/edmonds_karp_demo.cc (original)
+++ hugo/trunk/src/work/marci/edmonds_karp_demo.cc Thu Apr 22 18:07:17 2004
@@ -9,6 +9,7 @@
#include <time_measure.h>
//#include <graph_wrapper.h>
#include <preflow.h>
+#include <preflowproba.h>
#include <for_each_macros.h>
using namespace hugo;
@@ -70,7 +71,9 @@
Timer ts;
Graph::EdgeMap<int> flow(G); //0 flow
Preflow<Graph, int, Graph::EdgeMap<int>, Graph::EdgeMap<int> >
- pre_flow_test(G, s, t, cap, flow);
+ pre_flow_test(G, s, t, cap, flow, true);
+ PreflowProba<Graph, int, Graph::EdgeMap<int>, Graph::EdgeMap<int> >
+ pre_flow_proba(G, s, t, cap, flow, true, true);
MaxFlow<Graph, int, Graph::EdgeMap<int>, Graph::EdgeMap<int> >
max_flow_test(G, s, t, cap, flow);
@@ -83,6 +86,15 @@
}
{
+ std::cout << "wrapped preflow ..." << std::endl;
+ FOR_EACH_LOC(Graph::EdgeIt, e, G) flow.set(e, 0);
+ ts.reset();
+ pre_flow_proba.run();
+ std::cout << "elapsed time: " << ts << std::endl;
+ std::cout << "flow value: "<< pre_flow_test.flowValue() << std::endl;
+ }
+
+ {
std::cout << "physical blocking flow augmentation ..." << std::endl;
FOR_EACH_LOC(Graph::EdgeIt, e, G) flow.set(e, 0);
ts.reset();
Modified: hugo/trunk/src/work/marci/graph_wrapper.h
==============================================================================
--- hugo/trunk/src/work/marci/graph_wrapper.h (original)
+++ hugo/trunk/src/work/marci/graph_wrapper.h Thu Apr 22 18:07:17 2004
@@ -696,6 +696,11 @@
Node bNode(OutEdgeIt e) const {
return ((e.forward) ? graph->bNode(e.out) : graph->bNode(e.in)); }
+ Node aNode(InEdgeIt e) const {
+ return ((e.forward) ? graph->aNode(e.in) : graph->aNode(e.out)); }
+ Node bNode(InEdgeIt e) const {
+ return ((e.forward) ? graph->bNode(e.in) : graph->bNode(e.out)); }
+
// int nodeNum() const { return graph->nodeNum(); }
//FIXME
void edgeNum() const { }
Modified: hugo/trunk/src/work/marci/makefile
==============================================================================
--- hugo/trunk/src/work/marci/makefile (original)
+++ hugo/trunk/src/work/marci/makefile Thu Apr 22 18:07:17 2004
@@ -6,7 +6,7 @@
BOOSTROOT ?= /home/marci/boost
INCLUDEDIRS ?= -I../../include -I.. -I../{marci,jacint,alpar,klao,akos,athos} -I$(BOOSTROOT)
LEDAINCLUDE ?= -I$(LEDAROOT)/incl
-CXXFLAGS = -g -O -W -Wall $(INCLUDEDIRS) -ansi -pedantic -ftemplate-depth-30
+CXXFLAGS = -g -O3 -W -Wall $(INCLUDEDIRS) -ansi -pedantic -ftemplate-depth-30
LEDABINARIES = leda_graph_demo leda_bfs_dfs max_bipartite_matching_demo
BINARIES = edmonds_karp_demo iterator_bfs_demo macro_test lg_vs_sg bfsit_vs_byhand bipartite_graph_wrapper_test
@@ -41,8 +41,8 @@
leda_bfs_dfs: leda_bfs_dfs.o
$(CXX3) -Wall -O -L$(LEDAROOT) -o leda_bfs_dfs leda_bfs_dfs.o -lG -lL -lm
-edmonds_karp_demo:
- $(CXX3) $(CXXFLAGS) -o edmonds_karp_demo edmonds_karp_demo.cc
+#edmonds_karp_demo:
+# $(CXX3) $(CXXFLAGS) -o edmonds_karp_demo edmonds_karp_demo.cc
# $(CXX3) $(CXXFLAGS) -pg -o edmonds_karp_demo_prof edmonds_karp_demo.cc
gw_vs_not:
More information about the Lemon-commits
mailing list