
    Vh                         d dl Z  e j                  d        e j                  d       d dlZd dlmZmZmZmZ  G d d      Z	y)    Nnumpyscipy)&communicability_betweenness_centralityestrada_indexsubgraph_centralitysubgraph_centrality_expc                   *    e Zd Zd Zd Zd Zd Zd Zy)TestSubgraphc                    ddd}t        t        j                  d            }|j                         D ]$  \  }}||   t	        j
                  |d      k(  r$J  dddd	d
d}t        j                  g d      }t        |      }|j                         D ]$  \  }}||   t	        j
                  |d      k(  r$J  t        |      }|j                         D ]$  \  }}||   t	        j
                  |d      k(  r$J  y )NgNQu?r         Hz>absgjXF{CP?g}~@g}~@g^G<	@gJi|@1AlbertAricDanFranck)r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   nx
path_graphitemspytestapproxGraphr   selfanswerresultkvanswer1G1result1s           b/home/dcms/DCMS/lib/python3.12/site-packages/networkx/algorithms/centrality/tests/test_subgraph.pytest_subgraph_centralityz%TestSubgraph.test_subgraph_centrality   s   ',>?$R]]1%56LLN 	;DAq!9aT ::::	; $(&%(
 XX	
 &b)MMO 	<DAq1:qd!;;;;	<)"-MMO 	<DAq1:qd!;;;;	<    c                     t        j                  d      }t        j                  d      }t        j                  |      }t        j                  |      }t        j                  |      }t        j                  |      }y )N      )r   complete_graphr   r   )r    g199g200comm199comm199_expcomm200comm200_exps          r(   "test_subgraph_centrality_big_graphz/TestSubgraph.test_subgraph_centrality_big_graph.   sb      %  %((.006((.006r*   c                 F   t        t        j                  d            }|dddk(  sJ t        t        j                  d            }|ddik(  sJ t        t        j                  d            }|i k(  sJ dddd}t        t        j                  d            }|j                         D ]$  \  }}||   t	        j
                  |d	
      k(  r$J  t        t        j                  d            }|j                         D ]!  \  }}dt	        j
                  |d	
      k(  r!J  y )Nr   r   r   r   gKL?g      ?)r   r   r      r   r   g63?)r   r   r   r   r   r   r.   )r    r"   r!   r#   r$   s        r(   1test_communicability_betweenness_centrality_smallz>TestSubgraph.test_communicability_betweenness_centrality_small8   s   7a8HIQ1%%%7a8HI!Q7a8HI||'C4FG7a8HILLN 	;DAq!9aT ::::	; 88I8I!8LMLLN 	EDAq&&--t*DDDD	Er*   c                 ~   ddddd}t        t        j                  d            }|j                         D ]$  \  }}||   t	        j
                  |d      k(  r$J  ddd	d
dd}t        j                  g d      }t        |      }|j                         D ]$  \  }}||   t	        j
                  |d      k(  r$J  y )Ngf?g(lb?)r   r   r   r7      r   r   gNJq?gG0?gG0?gD;?gwG!?r   r   )r   r   r   r   r   r   r   r   s           r(   +test_communicability_betweenness_centralityz8TestSubgraph.test_communicability_betweenness_centralityK   s    """"	
 8a8HILLN 	;DAq!9aT ::::	; &''&)
 XX	
 9<MMO 	<DAq1:qd!;;;;	<r*   c                 z    d}t        t        j                               }|t        j                  |d      k(  sJ y )Ng'TD@r   r   )r   r   karate_club_graphr   r   )r    r!   r"   s      r(   test_estrada_indexzTestSubgraph.test_estrada_indexk   s3    #r3356v48888r*   N)__name__
__module____qualname__r)   r5   r8   r;   r>    r*   r(   r
   r
      s    <<7E&<@9r*   r
   )
r   importorskipnetworkxr   +networkx.algorithms.centrality.subgraph_algr   r   r   r   r
   rB   r*   r(   <module>rF      sA       G    G   _9 _9r*   