+
    Y°³jÃ*  ã            
       óä  € ^ RI t ^ RIt^ RIHt ^ RI Ht ^ RIHt ^ RI	H
t
 R tR tRR	 ltR R ltR tR tR tR t]P&                  ]P(                  ]P*                  3t]P.                  ]P0                  ]P2                  3t]P6                  ]P8                  ]P:                  3t]],           ],           t] P@                  PC                  R]4      ] P@                  PC                  R]PD                  ]PF                  ]PH                  ]PJ                  ]PL                  .4      ] P@                  PC                  RR
R.4      ] P@                  PC                  RR
R.4      ] P@                  PC                  RR
R.4      R 4       4       4       4       4       t'] P@                  PC                  R. R!O4      ] P@                  PC                  RR
R.4      ] P@                  PC                  RR
R.4      R 4       4       4       t(] P@                  PC                  R]PR                  ]PF                  ]PH                  ]PJ                  ]PL                  .4      ] P@                  PC                  R. R"O4      R 4       4       t*] P@                  PC                  R]PR                  ]PF                  ]PH                  ]PJ                  ]PL                  .4      ] P@                  PC                  R]4      ] P@                  PC                  RR
R.4      ] P@                  PC                  RR
R.4      ] P@                  PC                  RR
R.4      ] P@                  PC                  RRR.4      R 4       4       4       4       4       4       t+R t,R# )#é    N)Úassert_allclose)Úraises)Úsparse)Úcsgraphc                 óÎ   € \         P                  ! V P                  \         P                  4      ;'       g0    \         P                  ! V P                  \         P                  4      # ©N)ÚnpÚ
issubdtypeÚdtypeÚsignedintegerÚulong)Úmats   &Úp/home/luca/screen-checking/.venv/lib/python3.14/site-packages/scipy/sparse/csgraph/tests/test_graph_laplacian.pyÚcheck_int_typer   
   sA   € Ü�=Š=˜Ÿ™¤B×$4Ñ$4Ó5÷ ð ¼¿ºØ�	‰	”2—8‘8ó:ð ó    c                  óä   € \         \        \        3 FZ  p ^^.^.... RO. RO.^^.^^.^^..3 F9  p\        P                  ! WR7      p\        \        \        P                  V4       K;  	  K\  	  R# )é   ©r   N)r   é   é   )é   é   é   )	ÚintÚfloatÚcomplexr	   ÚarrayÚassert_raisesÚ
ValueErrorr   Ú	laplacian)ÚtÚmÚAs      r   Útest_laplacian_value_errorr$      so   € Ü”%œÓ ˆØ�a�&Ø�C�5�'ÚšiÐ(Ø�q�6˜A˜q˜6 A q 6Ð*ó,ˆAô —’˜Ô$ˆAÜœ*¤g×&7Ñ&7¸Ö;ó,ó !r   Fc                 ó(  € \         P                  ! V 4      '       d   V P                  4       p \        P                  ! V 4      p RV ,          p\        VP                  ^ ,          4       FG  pWV^,           R13,          P                  4       WRV13,          P                  4       ,           W#V3&   KI  	  V'       dX   \        P                  ! V4      P                  4       pR WD^ 8H  &   W$R,          R,          ,          pW$R,          R,          ,          pV# )ç      ð?Ng      à?g      ð¿)ºNNNN)Nr'   )
r   ÚissparseÚtoarrayr	   ÚasarrayÚrangeÚshapeÚsumÚdiagÚcopy)ÚxÚnormedÚyÚjÚds   &&   r   Ú_explicit_laplacianr5      sÂ   € Ü‡‚�q×ÒØ�I‰I‹KˆÜ
�
Š
�1‹€AØˆq�€AÜ�1—7‘7˜1•:ÖˆØ�Q�q•S‘T�6•—‘“ 1 r¨ r T¥7§;¡;£=Õ0ˆˆAˆ#‹ñ çÜ�GŠG�A‹J�O‰OÓˆØˆˆq‰&‰	Ø	ˆv�Y˜�]ÕˆØ	ˆv�Y˜�]ÕˆØ€Hr   Tc                 ó¾  € \        V R 4      '       g    \        V \        \        \        R7      4      p \        P
                  ! V 4      '       d   T pVP                  4       p M\        P                  ! V 4      p\        P                  ! V 4      p\        P                  ! VRR7      pV P                  ^ ,          p\        WR7      p\        P                  ! WVR7      p\        P                  ! W1VR7      p	V'       d   \        W4       \        W54       M@V'       d   \        V 4      '       g(   \        W€4       VP                   R8X  d   \        W“4       \        W‰P                  4       4       W‰P                  4       3 F\  p
V'       g1   \        V
P#                  ^ R7      \        P$                  ! V4      4       \        V
P&                  V
4       \        W§4       K^  	  R# )	r,   )r	   r   T)r/   )r1   )r1   r/   Úcoo)ÚaxisN)ÚhasattrÚevalÚdictr	   r   r(   r)   Ú	csr_arrayr/   r,   r5   r   r    r   Ú_assert_allclose_sparser   Úformatr-   ÚzerosÚT)r   r1   r/   Úsp_matÚmat_copyÚsp_mat_copyÚn_nodesÚexplicit_laplacianr    Úsp_laplacianÚtesteds   &&&        r   Ú _check_symmetric_graph_laplacianrH   )   sL  € Ü�3˜× Ò Ü�3œ¤¬6Ô2Ó3ˆä‡‚�s×ÒØˆØ�n‰nÓ‰ä×!Ò! #Ó&ˆä�wŠw�s‹|€HÜ×"Ò" 6°Ô5€Kà�i‰i˜�l€GÜ,¨SÔ@ÐÜ×!Ò! #¸4Ô@€IÜ×$Ò$ VØ*.ô0€L÷ Ü˜Ô&Ü Õ4çœ>¨#×.Ò.Ü˜IÔ+Ø�}‰} Ô%Ü'¨Ô=ä�I×3Ñ3Ó5Ô6à×2Ñ2Ó4Ó5ˆßÜ˜FŸJ™J¨A˜JÓ.´·²¸Ó0AÔBÜ˜Ÿ™ &Ô)Ü˜Ö3ó	 6r   c                  óX   € Rp V  F!  pR F  pR F  p\        WV4       K  	  K  	  K#  	  R# )ú,np.arange(10) * np.arange(10)[:, np.newaxis]N)rJ   znp.ones((7, 7))z
np.eye(19)z=sparse.diags_array([1.0, 1.0], offsets=[-1, 1], shape=(4, 4))zGsparse.diags_array([1.0, 1.0], offsets=[-1, 1], shape=(4, 4)).toarray()zGsparse.diags_array([1.0, 1.0], offsets=[-1, 1], shape=(4, 4)).todense()z3np.vander(np.arange(4)) + np.vander(np.arange(4)).T)TF)rH   )Úsymmetric_matsr   r1   r/   s       r   Útest_symmetric_graph_laplacianrL   N   s3   € ð€Nó ˆÛ!ˆFÛ#�Ü0°¸dÖCó $ó "ó r   c                 óÎ   € \         P                  ! V 4      '       d   V P                  4       p \         P                  ! V4      '       d   VP                  4       p\        W3/ VB  R # r   )r   r(   r)   r   )ÚaÚbÚkwargss   &&,r   r=   r=   ^   sC   € ä‡‚�q×ÒØ�I‰I‹KˆÜ‡‚�q×ÒØ�I‰I‹KˆÜ�AÑ#˜FÔ#r   c           	      ó.  € V! WR 7      p\         P                  ! VVRVVRR7      w  ršV'       do   \        V4      '       d^   V	P                  \        P
                  8X  g   Q hV
P                  \        P
                  8X  g   Q h\        W‘RR7       \        W¢RR7       MŠV	P                  V8X  g   Q hV
P                  V8X  g   Q h\        P                  ! V4      P                  V4      p\        P                  ! V4      P                  V4      p\        W‘RR7       \        W¢RR7       V'       gf   V'       d   \        V4      '       gK   \        V4      \        P                  J d   \        W˜4       R# VP                  R8X  d   \        W˜4       R# R# R# R# )r   TN©r1   Úreturn_diagÚuse_out_degreer/   r   çê-�™—q=©Úatolr7   )r   r    r   r   r	   Úfloat64r=   r*   ÚastypeÚtypeÚndarrayr   r>   ©r#   Ú	desired_LÚ	desired_dr1   rT   r/   r   Úarr_typer   ÚLr4   s   &&&&&&&&   r   Ú_check_laplacian_dtype_nonera   g   s6  € ñ �1Ô
"€CÜ×ÒØØØØ%ØØô�D€A÷ ”. ×%Ò%Ø�w‰wœ"Ÿ*™*Ô$Ð$Ð$Ø�w‰wœ"Ÿ*™*Ô$Ð$Ð$Ü °5Õ9Ü °5Ö9à�w‰w˜%ÔÐÐØ�w‰w˜%ÔÐÐÜ—J’J˜yÓ)×0Ñ0°Ó7ˆ	Ü—J’J˜yÓ)×0Ñ0°Ó7ˆ	Ü °5Õ9Ü °5Õ9çßœ>¨#×.Ò.Ü�C‹yœBŸJ™JÓ&Ü Ö'Ø—‘˜uÔ$Ü'¨Ö/ñ %ñ /ñ r   c           	      óB  € V! WR 7      p\         P                  ! VVRVVVR7      w  ršV	P                  V8X  g   Q hV
P                  V8X  g   Q h\        P                  ! V4      P                  V4      p\        P                  ! V4      P                  V4      p\        W‘RR7       \        W¢RR7       V'       gf   V'       d   \        V4      '       gK   \        V4      \        P                  J d   \        W˜4       R# VP                  R8X  d   \        W˜4       R# R# R# R# )r   TrR   rU   rV   r7   N)r   r    r   r	   r*   rY   r=   r   rZ   r[   r   r>   r\   s   &&&&&&&&   r   Ú_check_laplacian_dtyperc   ˆ   sé   € ñ �1Ô
"€CÜ×ÒØØØØ%ØØô�D€Að �7‰7�eÔÐÐØ�7‰7�eÔÐÐÜ—
’
˜9Ó%×,Ñ,¨UÓ3€IÜ—
’
˜9Ó%×,Ñ,¨UÓ3€IÜ˜A¨uÕ5Ü˜A¨uÕ5çßœ>¨#×.Ò.Ü�C‹yœBŸJ™JÓ&Ü Ö'Ø—‘˜uÔ$Ü'¨Ö/ñ %ñ /ñ r   r   r_   r/   r1   rT   c                 ó¼  € . RO. RO. RO.pV! \         P                  ! V4      VR7      pVP                  4       pV'       g   V '       d   . RO. RO. RO.p. R	OpV'       d   V '       d   . R
O. RO. RO.p. ROpV'       g   V '       g   . RO. RO. RO.p. ROpV'       d   V '       g   . R
O. RO. RO.p. ROp\        VXXVV VVVR7       \	        VVVVV VVVR7       R# )r   r   )r1   rT   r/   r   r_   N©r   r   r   ©r   r   r   ©r   r   r   )r   éÿÿÿÿr   )éüÿÿÿr   r   )r   r   r   )r   g      à¿r   )éþÿÿÿr   r   )r   r   r   )r   rh   r   )ri   r   r   )r   r   r   )r   r   r   )r	   r   r/   ra   rc   )	rT   r1   r/   r   r_   r#   ÚA_copyr`   r4   s	   &&&&&    r   Útest_asymmetric_laplacianrl   ©   sç   € ò 
Ú	Ú	ð	€Añ 	”—’˜!“ EÔ*€AØ�V‰V‹X€Fç—nâÚÚðˆò ˆç—.âÚÚðˆò ˆçŸ.âÚÚðˆò ˆç—nâÚÚðˆò ˆäØ	Ø	Ø	ØØ%ØØØõ	ô ØØ	Ø	ØØ%ØØØ÷	r   Úfmtc                 óZ   € \         P                  ! R R .R^.RV R7      p\        W1V4       R# )r&   )Úoffsetsr,   r>   Nrh   )r   r   )r   Údiags_arrayrH   )rm   r1   r/   r   s   &&& r   Útest_sparse_formatsrq   î   s,   € ô
 ×
Ò
˜c 3˜Z°"°a°ÀÈsÔ
S€CÜ$ S°$Ö7r   ÚformÚfunctionÚloc                 ó¤  € ^pV ! \         P                  ! W",          4      P                  W"4      4      p\        P                  ! VRVR7      w  rE\        P                  ! VRRVR7      w  rg\        P                  ! VRRVR7      w  r‰\        P                  ! VRRRVR7      w  r«W3P
                  ,          p\        P                  ! VRVR7      w  rÍ\        P                  ! VRRVR7      w  rï\        W•V,           4       \        W�4       \        W¿4       / pR FM  pVR8X  d   \        V4      VV&   K  \        V4      ! \         P                  ! W#P                  R7      4      VV&   KO  	  \        VR	,          VR,          VR,          P
                  ,           4       \        VR	,          VR,          4       \        VR
,          VR,          4       R# )r   T)rS   rr   )rS   rT   rr   )rS   Úsymmetrizedrr   )rS   rv   r1   rr   )rS   r1   rr   ÚL_inÚL_outÚLsÚ	Ls_normedÚLssÚ
Lss_normedr   r   N)rw   rx   ry   rz   r{   r|   )r	   ÚarangeÚreshaper   r    r@   r   r:   Úeyer   r=   )r_   rr   Únr   rw   Úd_inrx   Úd_outry   Údsrz   Ú	ds_normedr{   Údssr|   Ú
dss_normedr4   r`   s   &&                r   Útest_laplacian_symmetrizedr‡   ÷   s�  € ð 	
€AÙ
”2—9’9˜Q�UÓ#×+Ñ+¨AÓ1Ó
2€CÜ×"Ò"ØØØô�J€Dô
 ×$Ò$ØØØØô	�L€Eô ×ÒØØØØô	�F€Bô #×,Ò,ØØØØØôÑ€Ið �5‰5…L€CÜ× Ò  °$¸TÔB�H€CÜ$×.Ò.ØØØØô	Ñ€Jô �B˜u�Ô%Ü�BÔÜ�IÔ*à
€AÛFˆØ�7Œ?Ü˜“7ˆAˆa‹Dä˜”7œ2Ÿ6š6 !¯9©9Ô5Ó6ˆAˆa‹Dñ	 Gô ˜A˜d�G Q v¥Y°°7µ·±Õ%=Ô>Ü˜A˜d�G Q u¥XÔ.Ü˜A˜k�N¨A¨l­OÖ<r   rv   c           
      óª  € ^p. R	O. R
O. RO.pV! \         P                  ! V4      V R7      p\        P                  ! VRVVVV R7      w  r‰\        P                  ! VRVVVV RR7      w  r«\	        W›4       \        WŠ4       \        P                  ! VRVVVV VR7      w  rÍ\	        WÙ4       VP                  V 8X  g   Q hV! \         P                  ! WgP                  R7      4      P                  V 4      p\        WèRRR7       \         P                  ! ^4      P                  ^^4      pV'       d   V \        9   g   \	        V! V4      W�,          4       R# R# )r   r   T)rS   r1   rv   rT   r   r   )rS   r1   rv   rT   r   rr   gH¯¼šò×Š>)ÚrtolrW   Nre   rf   rg   )r	   r   r   r    r   r=   r   r   rY   r}   r~   Ú
INT_DTYPES)r   r_   r1   rv   rT   rr   r€   r   ÚLoÚdoÚLaÚdar`   r4   ÚLmr0   s   &&&&&&          r   Útest_formatr�   4  s2  € ð 	
€AÚ’i¢Ð
+€CÙ
”2—8’8˜C“=¨Ô
.€CÜ×ÒØØØØØ%Øô�F€Bô ×ÒØØØØØ%ØØô�F€Bô �BÔÜ˜BÔ#ä×ÒØØØØØ%ØØô�D€Aô �AÔØ�7‰7�eÔÐÐÙ	
Œ2�6Š6�!Ÿ9™9Ô%Ó	&×	-Ñ	-¨eÓ	4€BÜ˜B¨°DÕ9Ü
�	Š	�!‹×Ñ˜Q Ó"€Aß�u¤
Ô*Ü™˜!›˜b�fÖ%ñ 	r   c                  óà   € \         P                  ! \        R R7      ;_uu_ 4        \        P                  ! \
        P                  ! ^4      RR7      p RRR4       R#   + '       g   i     R# ; i)zInvalid form: 'toto')ÚmatchÚtoto)rr   N)Úpytestr   r   r   r    r	   r   )Ú_s    r   Útest_format_error_messager–   m  s>   € Ü	�Š”zÐ)?×	@Ö	@Ü×ÒœbŸfšf Q›i¨fÔ5ˆ÷ 
A×	@×	@Ò	@ús   ¥-AÁA-	)F)T)ÚcsrÚcscr7   ÚlilÚdokÚdiaÚbsr)r   rs   rt   )-r”   Únumpyr	   Únumpy.testingr   r   r   Úscipyr   Úscipy.sparser   r   r$   r5   rH   rL   r=   ra   rc   ÚintcÚlongÚlonglongrŠ   Úfloat32rX   Ú
longdoubleÚREAL_DTYPESÚ	complex64Ú
complex128ÚclongdoubleÚCOMPLEX_DTYPESÚDTYPESÚmarkÚparametrizer   Ú
csr_matrixÚ
coo_matrixr<   Ú	coo_arrayrl   rq   r*   r‡   r�   r–   © r   r   Ú<module>r²      s%  ðÛ Û Ý )Ý *Ý å  òò<ôô"4òJDò $ò0òB0ð6 �g‰g�r—w‘w §¡Ð,€
Ø�z‰z˜2Ÿ:™: r§}¡}Ð5€Ø—,‘, §¡¨r¯~©~Ð>€Ø	�kÕ	! NÕ	2€ð ‡�×Ñ˜ &Ó)Ø‡�×Ñ˜ b§h¡hØ&,×&7Ñ&7Ø&,×&7Ñ&7Ø&,×&6Ñ&6Ø&,×&6Ñ&6ð	&8ó 9ð
 ‡�×Ñ˜ $¨ Ó/Ø‡�×Ñ˜ D¨% =Ó1Ø‡�×ÑÐ)¨D°%¨=Ó9ñ9ó :ó 2ó 0ó9ó *ð9ðx ‡�×Ñ˜ò !6ó 7à‡�×Ñ˜ D¨% =Ó1Ø‡�×Ñ˜ $¨ Ó/ñ8ó 0ó 2ó7ð8ð
 ‡�×ÑØ�—‘Ø×"Ñ"Ø×"Ñ"Ø×!Ñ!Ø×!Ñ!ð	#óð ‡�×Ñ˜Ò!<Ó=ñ2=ó >óð2=ðj ‡�×ÑØ�—‘Ø×"Ñ"Ø×"Ñ"Ø×!Ñ!Ø×!Ñ!ð	#óð ‡�×Ñ˜ &Ó)Ø‡�×Ñ˜ D¨% =Ó1Ø‡�×Ñ˜¨¨u¨Ó6Ø‡�×ÑÐ)¨D°%¨=Ó9Ø‡�×Ñ˜ *¨dÐ!3Ó4ñ*ó 5ó :ó 7ó 2ó *óð*ôZ6r   