Ë
    0Ò^j¬  ã                   óz   — d Z ddlZddlmZ ddlmZmZ ddl	m
Z ddlZddlmZ d„ Z G d„ d«      Z G d	„ d
«      Zy)z1Test functions for the sparse.linalg.norm module
é    N)Únorm)Úassert_allcloseÚassert_equal)Úraisesc            
      óH  — t        j                  g d¢«      } t        j                  g d¢«      }t        j                  g d¢«      }t        j                  j	                  || |ffd¬«      }t        j                  j                  || |ffd¬«      }dt         j                  d fD ]V  }dD ]O  }||fD ]F  }t        |j                  «       ||¬«      }t        |||¬«      }	t        |	d	«      sJ ‚t        |	|«       ŒH ŒQ ŒX t        j                  j	                  ||ffd
¬«      }
t        j                  j                  ||g d¢ffd¬«      }dt         j                  d fD ]F  }dD ]?  }|
|fD ]6  }t        |j                  «       ||¬«      }t        t        |||¬«      |«       Œ8 ŒA ŒH y )N)r   r   é   r   )r   r   é   é   )é   é   é   é	   )r	   r   )Úshaper   )r   r   N©r   r   ©r   r   ©ÚordÚaxisÚdtype)r   )r   r   r   r   )r   r   )r   N)ÚnpÚarrayÚscipyÚsparseÚ	coo_arrayÚ
coo_matrixÚinfÚnpnormÚtoarrayÚspnormÚhasattrr   )ÚrowÚcolÚdataÚtest_arrÚtest_matr   ÚaxÚAÚexpectedÚactualÚtest_arr_1dÚtest_mat_cols               ún/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/sparse/linalg/tests/test_norm.pyÚtest_sparray_normr-      s—  € Ü
�(‰(’<Ó
 €CÜ
�(‰(’<Ó
 €CÜ�8‰8’LÓ!€DÜ�|‰|×%Ñ% t¨c°3¨ZÐ&8ÀÐ%ÓG€HÜ�|‰|×&Ñ&¨¨s°C¨jÐ'9ÀÐ&ÓH€HØ”2—6‘6˜4Ð ò /ˆØ.ò 	/ˆBØ Ð)ò /�Ü! !§)¡)£+°3¸RÔ@�Ü  s°Ô4�Ü˜v wÔ/Ð/Ð/Ü˜V XÕ.ñ	/ñ	/ð/ô —,‘,×(Ñ(¨$°°¨¸tÐ(ÓD€KÜ—<‘<×*Ñ*¨D°3ºÐ2EÐ+FÈfÐ*ÓU€LØ”2—6‘6˜4Ð ò DˆØò 	DˆBØ! <Ð0ò D�Ü! !§)¡)£+°3¸RÔ@�ÜœV A¨3°RÔ8¸(ÕCñDñ	DñDó    c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestNormc                 óž   — t        j                  d«      dz
  }|j                  d«      }t        j                  j                  |«      | _        y )Nr   r   ©r
   r
   )r   ÚarangeÚreshaper   r   Ú	csr_arrayÚb)ÚselfÚar6   s      r,   Úsetup_methodzTestNorm.setup_method'   s8   € Ü�I‰I�a‹L˜1ÑˆØ�I‰I�fÓˆÜ—‘×'Ñ'¨Ó*ˆ�r.   c                 óv  — t        t        | j                  «      d«       t        t        | j                  d«      d«       t        t        | j                  t        j                  «      d«       t        t        | j                  t        j                   «      d«       t        t        | j                  d«      d«       t        t        | j                  d«      d«       t        t        | j                  j                  t        j                  «      d«      d	«       t        t        t        | j                  d
«       y )NçÚNO±Þû@Úfror   r	   r   r   éÿÿÿÿé   gÅ±Õd@éþÿÿÿ)	r   r   r6   r   r   ÚastypeÚfloat64Úassert_raisesÚNotImplementedError)r7   s    r,   Útest_matrix_normzTestNorm.test_matrix_norm,   sÃ   € ô 	œ˜tŸv™v›Ð(9Ô:Üœ˜tŸv™v uÓ-Ð/@ÔAäœ˜tŸv™v¤r§v¡vÓ.°Ô2Üœ˜tŸv™v¬¯© wÓ/°Ô3Üœ˜tŸv™v qÓ)¨1Ô-Üœ˜tŸv™v rÓ*¨AÔ.Üœ˜tŸv™vŸ}™}¬R¯Z©ZÓ8¸!Ó<Ð>OÔPô 	Ô)¬6°4·6±6¸2Õ>r.   c                 óÒ  — | j                   d f| j                   df| j                   j                  dffD ]±  \  }}t        t        ||¬«      d«       t        t        |d|¬«      d«       t        t        |t        j
                  |¬«      d«       t        t        |t        j
                   |¬«      d«       t        t        |d|¬«      d	«       t        t        |d
|¬«      d«       Œ³ y )Nr   r   ©r   r;   r<   r   r	   r   r   r=   r>   ©r6   ÚTr   r   r   r   )r7   Úmr   s      r,   Útest_matrix_norm_axiszTestNorm.test_matrix_norm_axis;   s¶   € ØŸ™ ˜¨¯©°Ð(8¸4¿6¹6¿8¹8ÀVÐ:LÐMò 	9‰GˆAˆtÜœF 1¨4Ô0Ð2CÔDÜœF 1 e°$Ô7Ð9JÔKÜœF 1¤b§f¡f°4Ô8¸!Ô<ÜœF 1¤r§v¡v g°DÔ9¸1Ô=ÜœF 1 a¨dÔ3°QÔ7ÜœF 1 b¨tÔ4°aÕ8ñ	9r.   c           	      ó   — g d¢}| j                   df| j                   j                  dffD ]¡  \  }}||f|dz
  |dz
  ffD ]‹  }t        t        |d|¬«      g d¢«       t        t        |t        j
                  |¬«      g d¢«       t        t        ||¬«      |«       t        t        |d|¬«      |«       t        t        |d |¬«      |«       Œ� Œ£ y )	N)ç…¹ŽT@gÙlßÌvø@rL   r   r   r	   rF   )r   r>   r   )r   r
   r   r   rG   )r7   ÚvrI   r8   r   s        r,   Útest_vector_normzTestNorm.test_vector_normD   s¼   € ÚHˆØ—V‘V˜Q�K $§&¡&§(¡(¨A Ð.ò 	C‰DˆAˆqØ˜A˜5 ! A¡#¨¨!© wÐ.ò C�Ü¤ q¨!°$Ô 7ºÔCÜ¤ q¬"¯&©&°tÔ <ºiÔHÜ¤ q¨tÔ 4°aÔ8Ü¤ q¨a°dÔ ;¸QÔ?Ü¤ q¨d¸Ô >ÀÕBñCñ	Cr.   c                 ó  — | j                   }t        t        t        |d d«       t        t        t        |d dg«       t        t        t        |d d«       t        t        t        |d d«       t        t        t        |d d«       t        t        t        |d d«       t        t        t        |d d«       t        t        t        |d d«       t        t        t        |d d«       t        t        t        |d	d
«       t        t        t        |d	d«       y )Ng      ø?r	   © )r   r   r	   )r   r   )r   r	   )éýÿÿÿr   rQ   Úplate_of_shrimpr   r   )r6   rB   Ú	TypeErrorr   Ú
ValueError)r7   rI   s     r,   Útest_norm_exceptionszTestNorm.test_norm_exceptionsN   s¿   € Ø�F‰FˆÜ”i¤¨¨D°#Ô6Ü”i¤¨¨D°1°#Ô6Ü”j¤&¨!¨T°2Ô6Ü”j¤&¨!¨T°9Ô=Ü”j¤&¨!¨T°6Ô:Ü”j¤&¨!¨T°6Ô:Ü”j¤&¨!¨T°7Ô;Ü”j¤&¨!¨T°1Ô5Ü”j¤&¨!¨T°2Ô6Ü”j¤&¨!Ð->ÀÔBÜ”j¤&¨!Ð->ÀÕGr.   N)Ú__name__Ú
__module__Ú__qualname__r9   rD   rJ   rN   rU   rP   r.   r,   r0   r0   &   s   „ ò+ò
?ò9òCóHr.   r0   c                   óô  — e Zd Zej                  j
                  ej                  j                  ej                  j                  ej                  j                  ej                  j                  ej                  j                  ej                  j                  fZ ej                  d«      dz
  j                  d«      g d¢g d¢gg d¢g d¢g ej                   dd	gd	dggej"                  ¬
«      fZd„ Zd„ Zd„ Zy)ÚTestVsNumpyNormr   r   r2   )r   r	   r
   )r=   r   r   )r   r   r
   )r=   r   y              @i€ÿÿÿé   )r   c           	      óP  — | j                   D �]  }| j                  D �]  } ||«      }t        t        |«      t	        |«      «       t        t        |d«      t	        |d«      «       t        t        |t
        j                  «      t	        |t
        j                  «      «       t        t        |t
        j                   «      t	        |t
        j                   «      «       t        t        |d«      t	        |d«      «       t        t        |d«      t	        |d«      «       �Œ �Œ y )Nr<   r   r=   ©Ú_sparse_typesÚ_test_matricesr   r   r   r   r   )r7   Úsparse_typeÚMÚSs       r,   Útest_sparse_matrix_normsz(TestVsNumpyNorm.test_sparse_matrix_normsr   sÏ   € Ø×-Ñ-ó 	>ˆKØ×(Ñ(ó >�Ù “N�Ü¤ q£	¬6°!«9Ô5Ü¤ q¨%Ó 0´&¸¸EÓ2BÔCÜ¤ q¬"¯&©&Ó 1´6¸!¼R¿V¹VÓ3DÔEÜ¤ q¬2¯6©6¨'Ó 2´F¸1¼r¿v¹v¸gÓ4FÔGÜ¤ q¨!£¬f°Q¸«lÔ;Ü¤ q¨"£¬v°a¸«}Ö=ò>ñ	>r.   c                 ó*  — | j                   D �]  }| j                  D ]ñ  } ||«      }dD ]q  }t        t        ||¬«      t	        ||¬«      «       dt
        j                  t
        j                   ddfD ]&  }t        t        |||¬«      t	        |||¬«      «       Œ( Œs dD ]l  }t        t        ||¬«      t	        ||¬«      «       t        t        |d|¬«      t	        |d|¬«      «       t        t        |d|¬«      t	        |d|¬«      «       Œn Œó �Œ y )N)Nr   r   rF   r<   r   r=   ))r?   r=   )r=   r?   )r   r?   Úfr]   ©r7   r`   ra   rb   r   r   s         r,   Ú"test_sparse_matrix_norms_with_axisz2TestVsNumpyNorm.test_sparse_matrix_norms_with_axis}   s  € Ø×-Ñ-ó 	AˆKØ×(Ñ(ò A�Ù “N�Ø0ò C�DÜ#¤F¨1°4Ô$8¼&ÀÈÔ:NÔOØ$¤b§f¡f¬r¯v©v¨g°q¸"Ð<ò C˜Ü'¬¨q°#¸DÔ(AÜ(.¨q°#¸DÔ(AõCñCðCð 8ò A�DÜ#¤F¨1°4Ô$8¼&ÀÈÔ:NÔOÜ#¤F¨1¨c¸Ô$=Ü$*¨1¨c¸Ô$=ô?ä#¤F¨1¨e¸$Ô$?Ü$*¨1¨e¸$Ô$?õAñ	AòAñ	Ar.   c                 óJ  — | j                   D ]”  }| j                  D ]ƒ  } ||«      }dD ]t  }t        t        ||¬«      t	        ||¬«      «       d dt
        j                  t
        j                   ddddfD ]&  }t        t        |||¬«      t	        |||¬«      «       Œ( Œv Œ… Œ– y )N)r   r   r=   r?   )r   )r   )r=   )r?   rF   r	   r   g      à?gáz®GáÚ?r   r]   rf   s         r,   Útest_sparse_vector_normsz(TestVsNumpyNorm.test_sparse_vector_normsŽ   s®   € Ø×-Ñ-ò 	CˆKØ×(Ñ(ò C�Ù “N�ØHò C�DÜ#¤F¨1°4Ô$8¼&ÀÈÔ:NÔOØ# Q¬¯©´·±°¸¸CÀÀqÐHò C˜Ü'¬¨q°#¸DÔ(AÜ(.¨q°#¸DÔ(AõCñCñCñCñ	Cr.   N)rV   rW   rX   r   r   Ú	bsr_arrayr   Ú	csc_arrayr5   Ú	dia_arrayÚ	dok_arrayÚ	lil_arrayr^   r   r3   r4   r   Úint8r_   rc   rg   ri   rP   r.   r,   rZ   rZ   ]   sÖ   „ à�L‰L×"Ñ"Ø�L‰L×"Ñ"Ø�L‰L×"Ñ"Ø�L‰L×"Ñ"Ø�L‰L×"Ñ"Ø�L‰L×"Ñ"Ø�L‰L×"Ñ"ð€Mð ˆR�Y‰Y�q‹\˜AÑ×&Ñ& vÓ.âÚðò Úðð ˆB�H‰H�t˜S�k C¨ ;Ð/°r·w±wÔ?ð	€Nò	>òAó"Cr.   rZ   )Ú__doc__Únumpyr   Únumpy.linalgr   r   Únumpy.testingr   r   Úpytestr   rB   Úscipy.sparser   Úscipy.sparse.linalgr   r-   r0   rZ   rP   r.   r,   ú<module>rw      s=   ðñó Ý 'ß 7Ý *ã Ý .ò
D÷.4Hñ 4H÷n9Cò 9Cr.   