o
    5ήc5
                     @   sT   d dl Zd dlmZ d dlmZmZ d dlmZm	Z	m
Z
 dd Zdd Zd	d
 ZdS )    N)assert_equal)reverse_cuthill_mckeestructural_rank)
csc_matrix
csr_matrix
coo_matrixc               
   C   s   t jg dg dg dg dg dg dg dg dgtd} t| }t|}t g d}t|| |jd	|_|jd	|_t|d
}t|| d S )N)   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   dtype)            r         r   int64T)	nparrayintr   r   r   indicesastypeindptr)Agraphpermcorrect_perm r   Q/tmp/pip-target-vg8gfxp4/lib/python/scipy/sparse/csgraph/tests/test_reordering.py test_graph_reverse_cuthill_mckee   s&   
	

r   c                  C   sb   t jdtd} t g d}t g d}t| ||ff }t|}t g d}t|| d S )N?   r	   )?r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      r    r    r    	   r!   r!   
   r"   r"   r"   r"      r#   r#   r#      r$   r$      r%   r%   r%      r&   r&   r&      r'   r'   r'   r'   )?r   r   r   r    r"   r   r   r!   r#   r   r   r   r"   r   r   r#   r   r   r$   r&   r   r   r%   r'   r   r   r&   r   r   r   r'   r   r    r"   r%   r   r!   r#   r   r   r    r"   r'   r   r   r!   r#   r   r$   r&   r   r    r%   r'   r   r   r$   r&   r   r   r"   r%   r'   )r$   r&   r   r   r"   r    r   r'   r   r%   r   r   r!   r#   r   r   )r   onesr   r   r   tocsrr   r   )datarowscolsr   r   r   r   r   r   )test_graph_reverse_cuthill_mckee_ordering   s   r-   c                  C   s   t g dg dg dg} tt| d tg d}tg d}t|}t|||ffdd}tt|d	 t g d
g dg}tt|d tt|jd d S )N)r   r   r   )r   r   r   )r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r    r    )shaper   )r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   	ones_liker   T)r   r+   r,   r*   BCr   r   r   test_graph_structural_rank2   s   
r3   )numpyr   numpy.testingr   scipy.sparse.csgraphr   r   scipy.sparser   r   r   r   r-   r3   r   r   r   r   <module>   s    