
    ^j&              	           d dl Zd dl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y)    N)issparse)convert_pydata_sparse_to_scipy)csgraph_to_densecsgraph_from_densecsgraph_masked_from_densecsgraph_from_maskedTFc                    |s|st        d      |g}|	r|j                  t        j                         |
r|j                  t        j                         t        | |      } |s&t        |       r| j                  dk(  r| j                  } t        |       ry|ri| j                  dk(  r6| j                  |      } | j                          | j                  |d      } n| j                  |      j                  |d      } nt        | |      } nt        j                  j                  |       rB|r4| j                  }t        j                   | j"                  ||      } || |<   n`t%        |       } nT|rCt'        | |||
|		      } | j                  }t        j(                  | j"                  |
      } || |<   nt+        | ||	|
      } | j,                  dk7  rt        d      | j.                  d   | j.                  d   k7  rt        d      | S )z7Routine for validation and conversion of csgraph inputsz*Internal: dense or csr output must be true)	accept_fvcscbsr)copyF)
null_value)dtyper   )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))
ValueErrorappendnpinfnanr   r   formatTtocsreliminate_zerosastyper   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
   r    s                Y/opt/ringagent/.cad-venv/lib/python3.12/site-packages/scipy/sparse/csgraph/_validation.pyvalidate_graphr/      s    ,EFFI  ,W	JG (7+%0G))~~&!--^-<'')!..U.;!--^-<CCEPUCV&w>JG			W	%<<Dhhw||5}MG*GDM)'2G/5B;H9A>K	MG
 <<DjjU;G*GDM(]7D2:<G ||q>??}}Q7==++GHHN    )numpyr   scipy.sparser   scipy.sparse._sputilsr   scipy.sparse.csgraph._toolsr   r   r   r   float64DTYPEr   r/    r0   r.   <module>r8      sE     ! @ 
 	

 -2"!&u!"266!%	;r0   