U
    ¹mœd/  ã                   @   sB   d dl Z e  d¡Ze  d¡ d dlZd dlmZ G dd„ dƒZdS )é    NÚnumpyZscipy)Úhavel_hakimi_graphc                   @   s    e Zd Zedd„ ƒZdd„ ZdS )ÚTestBetheHessianc                 C   s(   dddddg}t |ƒ| _t d¡| _d S )Né   é   é   r   )r   ÚGÚnxZ
path_graphÚP)ÚclsÚdeg© r   ú`/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/networkx/linalg/tests/test_bethehessian.pyÚsetup_class   s    
zTestBetheHessian.setup_classc                 C   sÎ   t  dddgdddgdddgg¡}dddg}t j tj| jdd� ¡ |¡ t j tj| jd|d� ¡ |t  ||¡ ¡ t j tj| j	dd� ¡ t 
| j	¡ ¡ ¡ t j t | j	¡ ¡ tj| j	d	d� ¡ ¡ d
S )zBethe Hessian matrixé   éþÿÿÿr   é   r   r   )Úr)r   Znodelistg      ô?N)ÚnpÚarrayÚtestingZassert_equalr	   Zbethe_hessian_matrixr
   ZtodenseZix_r   Zlaplacian_matrix)ÚselfÚHZpermutationr   r   r   Útest_bethe_hessian   s$    þ
þþþz#TestBetheHessian.test_bethe_hessianN)Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   r   r   r   r   r   r   
   s   
r   )ZpytestZimportorskipr   Znetworkxr	   Znetworkx.generators.degree_seqr   r   r   r   r   r   Ú<module>   s
   

