biconnected.components        package:igraph        R Documentation

_B_i_c_o_n_n_e_c_t_e_d _c_o_m_p_o_n_e_n_t_s

_D_e_s_c_r_i_p_t_i_o_n:

     Finding the biconnected components of a graph

_U_s_a_g_e:

     biconnected.components(graph)

_A_r_g_u_m_e_n_t_s:

   graph: The input graph. It is treated as an undirected graph, even
          if it is directed.

_D_e_t_a_i_l_s:

     A graph is biconnected if the removal of any single vertex (and
     its adjacent edges) does not disconnect it.

     A biconnected component of a graph is a maximal biconnected
     subgraph of it. The biconnected components of a graph can be given
     by the partition of its edges: every edge is a member of exactly
     one biconnected component. Note that this is not true for
     vertices: the same vertex can be part of many biconnected
     components.

_V_a_l_u_e:

     A named list with three components: 

      no: Numeric scalar, an integer giving the number of biconnected
          components in the graph.

components: The components themselves, a list of numeric vectors. Each
          vector is a set of edge ids giving the edges in a biconnected
          component.

articulation_points: The articulation points of the graph. See
          'articulation.points'.


     See examples below on how to extract the vertex ids of the
     biconnected components from the result.

_A_u_t_h_o_r(_s):

     Gabor Csardi csardi@rmki.kfki.hu

_S_e_e _A_l_s_o:

     'articulation.points', 'clusters', 'is.connected',
     'vertex.connectivity'

_E_x_a_m_p_l_e_s:

     g <- graph.disjoint.union( graph.full(5), graph.full(5) )
     clu <- clusters(g)$membership
     g <- add.edges(g, c(which(clu==0), which(clu==1))-1)
     bc <- biconnected.components(g)
     vertices <- lapply(bc$components, function(x) unique(as.vector(get.edges(g, x))))

