
    Ug	              	       t    d dl Zd dlmZmZ d dlmZ d dlmZm	Z	m
Z
mZ ej        Zeddddd ej        ddf	dZdS )    N)
csr_matrixissparse)convert_pydata_sparse_to_scipy)csgraph_to_densecsgraph_from_densecsgraph_masked_from_densecsgraph_from_maskedTFc                    |s|st          d          t          |           } |s!t          |           r| j        dk    r| j        } t          |           r,|rt          | t          |          } nt          | |          } nt          j	        
                    |           r@|r.| j        }t          j        | j        t          |          } || |<   nft          |           } nV|rAt          | |||
|	          } | j        }t          j        | j        t                    } || |<   nt#          | ||	|
          } | j        dk    rt          d	          | j        d
         | j        d         k    rt          d          | S )z7Routine for validation and conversion of csgraph inputsz*Internal: dense or csr output must be truecsc)dtypecopy)
null_value)r   r   nan_nullinfinity_null)r   )r   r   r      z#compressed-sparse graph must be 2-Dr      z,compressed-sparse graph must be shape (N, N))
ValueErrorr   r   formatTr   DTYPEr   npmaisMaskedArraymaskarraydatar	   r   asarrayr   ndimshape)csgraphdirectedr   
csr_outputdense_outputcopy_if_densecopy_if_sparsenull_value_innull_value_outr   r   r   s               _/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/sparse/csgraph/_validation.pyvalidate_graphr)      s     G, GEFFF,W55G  (7++ %0G0G) < 	K NKKKGG&w>JJJGG			W	%	% < 	3<Dhw|5}MMMG*GDMM)'22GG 	</5B;H9A>K	M M MG
 <DjU;;;G*GDMM(]7D2:< < <G |q>???}Q7=+++GHHHN    )numpyr   scipy.sparser   r   scipy.sparse._sputilsr   scipy.sparse.csgraph._toolsr   r   r   r	   float64r   infr)    r*   r(   <module>r2      s        - - - - - - - - @ @ @ @ @ @           
 	
 -2"!&u!"26!%	1 1 1 1 1 1r*   