
    VhV	                         d dl Z  e j                  d       d dlZd dlmZmZmZmZ dZd Z	d Z
d Zd Ze j                  j                  d	ej                  ej                  f      d
        Zy)    Nnumpy)lattice_referenceomegarandom_referencesigma*   c                     t        j                  dddt              } t        | dt              }t        j                  |       }t        j                  |      }||kD  sJ t        j                  t         j                        5  t        t        t        j                                      d d d        t        j                  t         j                        5  t        t        t        j                                      d d d        t        j                  d      }t        |dt              }y # 1 sw Y   xY w# 1 sw Y   =xY w)N2      皙?seed   niterr   )r   r   )      )nxconnected_watts_strogatz_graphrngr   average_clusteringpytestraisesNetworkXErrornextGraphNetworkXNotImplementedDiGraph)GGrCCrHHls         Y/home/dcms/DCMS/lib/python3.12/site-packages/networkx/algorithms/tests/test_smallworld.pytest_random_referencer'      s    
))"a3?A	!13	/B
a A			r	"Br6M6	r''	( +bhhj)*+	r00	1 -bjjl+,- 	!"A	!13	/B+ +- -s   'D-'D9-D69Ec                     t        j                  dddt              } t        | dt              }t        j                  |       }t        j                  |      }||kD  sJ t        j                  t         j                  t        t        j                                t        j                  t         j                  t        t        j                                t        j                  d      }t        |d      }y )Nr
   r   r   r   r   r   )r   )r   r   r   r   average_shortest_path_lengthr   r   r   r   r   r   )r    GlLLlr$   r%   s         r&   test_lattice_referencer-      s    
))"a=A	1AC	0B
''*A		(	(	,B6M6
MM"""$5rxxzB
MM"++->

M
!"A	1A	&B    c                      t        j                  dddt              } t        j                  dddt              }t        | ddt              }t        |ddt              }||k  sJ y )Nr
   r   r   r   r   r   r   nrandr   )r   r   r   r   )Gsr!   sigmassigmars       r&   
test_sigmar5   )   sZ    		*	*2q#C	@B		*	*2q!#	>B2Qac2F2Qac2FF??r.   c                  $   t        j                  dddt              } t        j                  dddt              }t        j                  dddt              }t        | ddt              }t        |ddt              }t        |ddt              }||k  r||k  sJ t        j                  dd      }t        j
                         }t        j                  |      }t        j                  |d	
      }	|||||	f}|D ]  }
d|
cxk  rdk  rJ  J  y )Nr
   r   r   r   r   r   r0      r   )r1   )r   r   r   r   barbell_graphkarate_club_graph)r*   r!   r2   omegalomegaromegas	G_barbellG_karateomega_barbellomega_karateos              r&   
test_omegarC   1   s    		*	*2q!#	>B		*	*2q!#	>B		*	*2q#C	@B2Qac2F2Qac2F2Qac2FF?v..   A&I##%HHHY'M88HA.Lffm\BF Q|!|||r.   fc                     t        j                         }|j                  g d       t        j                  t         j
                  d      5   | |       d d d        y # 1 sw Y   y xY w)N)r   r   r   r   zGraph has fewer that 2 edges)match)r   r   add_nodes_fromr   r   r   )rD   r    s     r&   test_graph_no_edgesrH   G   sL    

A\"	r''/M	N 	!  s   	AA()r   importorskipnetworkxr   r   r   r   r   r   r'   r-   r5   rC   markparametrizerH    r.   r&   <module>rN      sq       G   F F0 ', r22B4H4HIJ Kr.   