ó
    ƒ(ph  ã                   óJ   • S SK r " S S5      r " S S5      rS rS rS	S jrg)
é    Nc                   ó   • \ rS rSrS rSrg)Ú_FakeMatrixé   c                 ó2   • Xl         UR                  U l        g ©N)Ú_dataÚ__array_interface__©ÚselfÚdatas     ÚJ/var/www/html/venv/lib/python3.13/site-packages/scipy/linalg/_testutils.pyÚ__init__Ú_FakeMatrix.__init__   s   € ØŒ
Ø#'×#;Ñ#;ˆÕ ó    )r	   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__static_attributes__© r   r   r   r      s   † õ<r   r   c                   ó$   • \ rS rSrS rSS jrSrg)Ú_FakeMatrix2é
   c                 ó   • Xl         g r   ©r   r
   s     r   r   Ú_FakeMatrix2.__init__   s   € Ø
r   Nc                 ó\   • U(       a  U R                   R                  5       $ U R                   $ r   )r   Úcopy)r   Údtyper   s      r   Ú	__array__Ú_FakeMatrix2.__array__   s    € ÞØ—:‘:—?‘?Ó$Ð$Øz‰zÐr   r   )NN)r   r   r   r   r   r    r   r   r   r   r   r   
   s   † ò÷r   r   c                 óì  • [        U 5      S:X  a-  U S   S:X  a$  [        R                  " XS9nSUSSS24'   SUS'   U$ [        U 5      S:X  a_  U S   U S   :X  aS  [        R                  " XS9n[        R                  " U S   5      nSX#U4'   SX#SS USS S-   4'   SX#SS S-   USS 4'   U$ [        R                  R                  S5        [        R                  R                  " U 6 R                  U5      $ )zn
Get a test array of given shape and data type.
Returned NxN matrices are posdef, and 2xN are banded-posdef.

é   r   )r   éÿÿÿÿé   NiÒ  )ÚlenÚnpÚzerosÚarangeÚrandomÚseedÚrandnÚastype)Úshaper   ÚxÚjs       r   Ú
_get_arrayr1      sö   € ô ˆ5ƒzQƒ˜5 ™8 q›=äHŠHUÑ(ˆØˆˆ!ˆQ‰Rˆ%‰Øˆˆ!‰ØˆÜ	ˆU‹q‹˜U 1™X¨¨q©Ó1äHŠHUÑ(ˆÜIŠIe˜A‘hÓˆØˆˆQˆ$‰Ø ˆˆCˆRˆ&!CR&˜‘(Ð
ÑØ ˆˆCˆRˆ&‰(AcrFÐ
ÑØˆä
	‰	‰tÔÜy‰yŠ Ð&×-Ñ-¨eÓ4Ð4r   c                 ó   • U $ r   r   )r/   s    r   Ú_idr3   -   s   € Ø€Hr   c                 óô  • Uc>  [         R                  [         R                  [         R                  [         R                  /nU H§  nS Hž  n[
        [        [        4 H†  nU Vs/ s H  n[        Xc5      PM     nnU Vs/ s H  o…" UR                  U5      5      PM     n	nU " U	6   SU< SU< S3n
[        X—5       H#  u  p¼[         R                  R                  X¼U
S9  M%     Mˆ     M      M©     gs  snf s  snf )z9
Test that a call does not overwrite its input arguments
N)ÚCÚFzcall modified inputs [z, Ú])Úerr_msg)r'   Úfloat32Úfloat64Ú	complex64Ú
complex128r3   r   r   r1   r   ÚzipÚtestingÚassert_equal)ÚcallÚshapesÚdtypesr   ÚorderÚfakerÚsÚorig_inputsr/   ÚinputsÚmsgÚaÚbs                r   Úassert_no_overwriterK   1   sÒ   € ð
 ~Ü—*‘*œbŸj™j¬"¯,©,¼¿¹ÐFˆãˆÛˆEÜœ{¬LÓ9Ù=CÓDºV¸œz¨!Ö3¹VÐDÙ8CÓDº°1˜% §¡ u£Ö.¹ÐDÙf‘Ø.¨u©i°r¸%¹À!ÐDÜ Ö4‘DAÜ—J‘J×+Ñ+¨A¸#Ð+Ó>ó 5ó :ó  ò ùò EùÚDs   Á$C0
Á? C5
r   )Únumpyr'   r   r   r1   r3   rK   r   r   r   Ú<module>rM      s+   ðÛ ÷<ñ <÷ñ ò5ò2õ?r   