Boost C++ Libraries: Ticket #4447: brandes betweenness crashes when there are more than 45 nodes involved https://svn.boost.org/trac10/ticket/4447 <p> brandes betweenness crashes when there are more than 45 nodes involved. see the following code: </p> <p> void calcBetweeness() </p> <blockquote> <p> { typedef boost::adjacency_list&lt;boost::vecS, boost::vecS, boost::undirectedS&gt; </p> <blockquote> <p> Graph; </p> </blockquote> <p> typedef boost::graph_traits&lt;Graph&gt;::vertex_descriptor Vertex; typedef boost::graph_traits&lt;Graph&gt;::vertex_iterator Vertex_Iter; typedef boost::graph_traits&lt;Graph&gt;::edge_descriptor Edge; typedef boost::graph_traits&lt;Graph&gt;::edge_iterator Edge_Iter; typedef boost::property_map&lt;Graph, boost::vertex_name_t&gt;::type Name_Map_t; typedef boost::property_map&lt;Graph, boost::edge_index_t&gt;::type Edge_Map_t; </p> </blockquote> <blockquote> <p> int n_vrtx = 46; Graph g_star(n_vrtx); for (int i = 4; i &lt; n_vrtx; ++i) </p> <blockquote> <p> { add_edge(vertex(0, g_star), vertex(i, g_star), g_star); add_edge(vertex(1, g_star), vertex(i, g_star), g_star); add_edge(vertex(2, g_star), vertex(i, g_star), g_star); add_edge(vertex(3, g_star), vertex(i, g_star), g_star); } </p> </blockquote> </blockquote> <blockquote> <p> Vertex_Iter vertex_iterator_begin, vertex_iterator_end; </p> </blockquote> <blockquote> <p> std::vector&lt;double&gt; centrality(n_vrtx); boost::brandes_betweenness_centrality(g_star, boost::centrality_map( </p> <blockquote> <p> boost::make_iterator_property_map(centrality.begin(), get( </p> <blockquote> <p> boost::vertex_index, g_star)))); </p> </blockquote> </blockquote> </blockquote> <blockquote> <p> for (tie(vertex_iterator_begin, vertex_iterator_end) = vertices(g_star); vertex_iterator_begin </p> <blockquote> <p> != vertex_iterator_end; ++vertex_iterator_begin) </p> </blockquote> <p> { cout &lt;&lt; "Vertex: " &lt;&lt; *vertex_iterator_begin &lt;&lt; "\tBC: " </p> <blockquote> <blockquote> <p> &lt;&lt; centrality[*vertex_iterator_begin] &lt;&lt; endl; </p> </blockquote> </blockquote> <p> } </p> </blockquote> <blockquote> <p> return; } </p> </blockquote> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/4447 Trac 1.4.3 Jeremiah Willcock Fri, 16 Jul 2010 18:24:36 GMT owner changed https://svn.boost.org/trac10/ticket/4447#comment:1 https://svn.boost.org/trac10/ticket/4447#comment:1 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Andrew Sutton</span> to <span class="trac-author">Jeremiah Willcock</span> </li> </ul> Ticket Jeremiah Willcock Fri, 16 Jul 2010 18:26:13 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/4447#comment:2 https://svn.boost.org/trac10/ticket/4447#comment:2 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">worksforme</span> </li> </ul> <p> I ran your test with both 46 and 100 vertices, and it runs correctly and passes Valgrind in both cases. </p> Ticket