§
    ÇÁ³g!  ã                   ót   — d Z ddlZddlZddlmZmZmZmZmZm	Z	 ddl
mZmZmZmZmZmZ  G d„ d¦  «        ZdS )z" Test functions for linalg module
é    N)ÚlinalgÚarangeÚfloat64ÚarrayÚdotÚ	transpose)Úassert_Úassert_raisesÚassert_equalÚassert_array_equalÚassert_array_almost_equalÚassert_array_lessc                   ó  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zej                             d
ddg¦  «        d„ ¦   «         Zej                             dddgdz   ej        d¦  «        g¦  «        d„ ¦   «         Zd„ ZdS )ÚTestRegressionc                 ó
  — t          g d¢¦  «        }t          dt          ¬¦  «        }d|_        |dz  }t	          j        |¦  «        \  }}|                     ¦   «          |                     ¦   «          t          ||¦  «         d S )N)yþºÓ�'ÎY@        yF.“<2/3À        yšÊ¹LTã¿WŒ¡9>°/@yšÊ¹LTã¿WŒ¡9>°/Ày=J€õ½&À        yt…�V)å¿·BÜÅÉÕ$@yt…�V)å¿·BÜÅÉÕ$ÀyZynFr62@        yÝ(�Ã3%@        yÖ´:@        yCr~è¿        y§Y·qs`Û<        yt&²üáAÛ¼        é©   ©Údtype)é   r   é   )r   r   r   Úshaper   ÚeigÚsortr   )ÚselfÚrvaÚaÚvaÚves        ú`/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/numpy/linalg/tests/test_regression.pyÚtest_eig_buildzTestRegression.test_eig_build   s…   € åð ,ð ,ð ,ñ -ô -ˆõ �7¥'Ð*Ñ*Ô*ˆØˆŒØ�‰FˆÝ”˜A‘”‰ˆˆBØ
�Š‰	Œ	ˆ	Ø�Š‰
Œ
ˆ
Ý! " cÑ*Ô*Ð*Ð*Ð*ó    c                 óŒ   — g d¢}t          g d¢g d¢g d¢g¦  «        }t          j        |¦  «        \  }}t          ||¦  «         d S )N)g"¤òŸÃ&Q@gg ÜödV@gƒ»7¯ÿªZ@)g'ŽU­ùlS@ç4h¦ƒ@ç%p±ÃJ/@)r#   g›+÷À>V@ç ”Þqi0ñ¿)r$   r%   gJ%~½©‹X@)r   r   Úeighr   )r   ÚrvalsÚcovÚvalsÚvecss        r   Útest_eigh_buildzTestRegression.test_eigh_build'   sj   € à8Ð8Ð8ˆåÐ>Ð>Ð>Ø=Ð=Ð=Ø>Ð>Ð>ð@ñ Aô Aˆõ ”[ Ñ%Ô%‰
ˆˆdÝ! $¨Ñ.Ô.Ð.Ð.Ð.r!   c                 ó  — t          ddgddgddgddgg¦  «        }|j        \  }}t          j        |¦  «        \  }}}t	          t          |d d …|d …f         ¦  «        |¦  «        }t          |t          j        d¦  «        ¦  «         d S )Nç        ç      ð?ç       @ç      @)é   r1   )	r   r   r   Úsvdr   r   r   ÚnpÚzeros)r   r   ÚmÚnÚuÚsÚvhÚbs           r   Útest_svd_buildzTestRegression.test_svd_build2   s�   € å�B˜�8˜b "˜X¨¨B x°"°b°Ð:Ñ;Ô;ˆØŒw‰ˆˆ1Ý”:˜a‘=”=‰ˆˆ1ˆbå•	˜!˜A˜A˜A˜q˜r˜r˜Eœ(Ñ#Ô# QÑ'Ô'ˆå! !¥R¤X¨fÑ%5Ô%5Ñ6Ô6Ð6Ð6Ð6r!   c                 óf   — t          t          t          j        t	          g d¢¦  «        d¦  «         d S )N)r.   r/   r0   Úfro)r
   Ú
ValueErrorr   Únormr   )r   s    r   Útest_norm_vector_badargz&TestRegression.test_norm_vector_badarg<   s,   € õ 	•j¥&¤+­u°\°\°\Ñ/BÔ/BÀEÑJÔJÐJÐJÐJr!   c                 óÆ   — t          ddgddggd¬¦  «        }t          |d¬¦  «        }t          j        |¦  «        }t          j        |¦  «        }t          ||¦  «         d S )Ng¬C$ù 3@gàŽ&ÍÕuÀg.¼Ü·#@z>f8r   z<f8)r   r   Úcholeskyr   )r   r   r:   ÚapÚbps        r   Útest_lapack_endianz!TestRegression.test_lapack_endianA   ss   € å�I 
Ð+Ø *Ð-ð/Ø6;ð=ñ =ô =ˆå�!˜5Ð!Ñ!Ô!ˆåŒ_˜QÑÔˆÝŒ_˜QÑÔˆÝ˜2˜rÑ"Ô"Ð"Ð"Ð"r!   c                 ón   — t          j        dd¦  «        }t           j                             |¦  «         d S )Niè  éB   )r3   Úeyer   r2   )r   Úxs     r   Útest_large_svd_32bitz#TestRegression.test_large_svd_32bitK   s-   € åŒF�4˜ÑÔˆÝ
Œ	�Š�aÑÔÐÐÐr!   c           	      óþ  — dD ]ù}t           t          fD ]è}t          j        ||¬¦  «        }t	          j        |d¬¦  «        }t          j        t          j        |¦  «        dk    ¦  «        }t          |d¦  «         t          t          j         	                    |¦  «        d¦  «         t          dt          j                             |d¬¦  «        ¦  «         t	          j        |¦  «        }t          ||¦  «         ŒéŒúd S )	N))é   é   )rM   rM   )rM   rL   r   F)Ú
compute_uvg      à?é   r1   ©Úord)ÚfloatÚcomplexr3   Úonesr   r2   Úcount_nonzeroÚabsoluter   Úmatrix_rankr   r?   Úsvdvalsr   )r   r   Útr   ÚwÚcÚ	w_svdvalss          r   Útest_svd_no_uvzTestRegression.test_svd_no_uvP   sì   € à+ð 
	8ð 
	8ˆEÝ�G�^ð 	8ð 	8�Ý”G˜E¨Ð+Ñ+Ô+�Ý”J˜q¨UÐ3Ñ3Ô3�ÝÔ$¥R¤[°¡^¤^°cÒ%9Ñ:Ô:�Ý˜Q Ñ"Ô"Ð"Ý�RœY×2Ò2°1Ñ5Ô5°qÑ9Ô9Ð9Ý! !¥R¤Y§^¢^°A¸1 ^Ñ%=Ô%=Ñ>Ô>Ð>å"œN¨1Ñ-Ô-�	Ý)¨!¨YÑ7Ô7Ð7Ð7ð	8ð
	8ð 
	8r!   c                 ó–  — t          j        t          j        ddg¦  «        ddgt          ¬¦  «        }t          j        |¦  «        }t          |ddg¦  «         t          |j        t          j        d¦  «        k    ¦  «         t          j        |d¬¦  «        }t          |ddg¦  «         t          |j        t          j        d¦  «        k    ¦  «         t          j        |d¬¦  «        }t          |ddg¦  «         t          |j        t          j        d¦  «        k    ¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |t           j
        ¬¦  «         t          t          t          j        |t           j
         ¬¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |d	¬¦  «         t          t          t          j        |d
¬¦  «         t          j        t          j        ddg¦  «        ddgg d¢gt          ¬¦  «        }t          j        |¦  «        }t          |ddg¦  «         t          |j        t          j        d¦  «        k    ¦  «         t          j        |d¬¦  «        }t          |ddg¦  «         t          |j        t          j        d¦  «        k    ¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |t           j
        ¬¦  «         t          t          t          j        |t           j
         ¬¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |d	¬¦  «         t          t          t          j        |d¬¦  «         t          t          t          j        |d
¬¦  «         t          t          t          j        |d¬¦  «         d S )Nr   rO   r   r   rP   r1   r=   Únucéÿÿÿÿéþÿÿÿ)r   r   r   rL   )r3   r   Úobjectr   r?   r   r	   r   r
   r>   ÚinfÚ	TypeError)r   Ú
testvectorr?   Ú
testmatrixs       r   Útest_norm_object_arrayz%TestRegression.test_norm_object_array^   si  € å”X�rœx¨¨A¨Ñ/Ô/°°AÐ6½fÐEÑEÔEˆ
åŒ{˜:Ñ&Ô&ˆÝ˜4 ! Q Ñ(Ô(Ð(Ý�”
�bœh yÑ1Ô1Ò1Ñ2Ô2Ð2åŒ{˜:¨1Ð-Ñ-Ô-ˆÝ˜4 ! Q Ñ(Ô(Ð(Ý�”
�bœh yÑ1Ô1Ò1Ñ2Ô2Ð2åŒ{˜:¨1Ð-Ñ-Ô-ˆÝ˜4 ! Q Ñ(Ô(Ð(Ý�”
�bœh yÑ1Ô1Ò1Ñ2Ô2Ð2å•j¥&¤+¨z¸uÐEÑEÔEÐEÝ•j¥&¤+¨z¸uÐEÑEÔEÐEÝ•j¥&¤+¨z½r¼vÐFÑFÔFÐFÝ•j¥&¤+¨zÅÄ¸wÐGÑGÔGÐGÝ•j¥&¤+¨z¸qÐAÑAÔAÐAÝ•j¥&¤+¨z¸rÐBÑBÔBÐBÝ•j¥&¤+¨z¸rÐBÑBÔBÐBå”X¥¤¨!¨Q¨Ñ 0Ô 0°!°QÐ7Ø7Ð7Ð7ð9Ý@FðHñ Hô Hˆ
õ Œ{˜:Ñ&Ô&ˆÝ˜4 ! Q Ñ(Ô(Ð(Ý�”
�bœh yÑ1Ô1Ò1Ñ2Ô2Ð2åŒ{˜:¨5Ð1Ñ1Ô1ˆÝ˜4 ! Q Ñ(Ô(Ð(Ý�”
�bœh yÑ1Ô1Ò1Ñ2Ô2Ð2å•i¥¤¨j¸eÐDÑDÔDÐDÝ•j¥&¤+¨z½r¼vÐFÑFÔFÐFÝ•j¥&¤+¨zÅÄ¸wÐGÑGÔGÐGÝ•j¥&¤+¨z¸qÐAÑAÔAÐAÝ•j¥&¤+¨z¸qÐAÑAÔAÐAÝ•j¥&¤+¨z¸rÐBÑBÔBÐBÝ•i¥¤¨j¸aÐ@Ñ@Ô@Ð@Ý•i¥¤¨j¸bÐAÑAÔAÐAÝ•j¥&¤+¨z¸qÐAÑAÔAÐAÐAÐAr!   c                 ó   — d}d}t           j                             ||¦  «        dt           j                             ||¦  «        z  z   }t           j                             ||¦  «        dt           j                             ||¦  «        z  z   }|                     |¦  «        }t	          j        ||d ¬¦  «        \  }}}}	t          ||¦  «         d S )Né   éF   y              ð?)Úrcond)r3   ÚrandomÚrandnr   r   Úlstsqr   )
r   ÚsizeÚn_rhsÚGr7   r:   Úu_lstsqÚresÚrankÚsvs
             r   Útest_lstsq_complex_larger_rhsz,TestRegression.test_lstsq_complex_larger_rhs‹   s®   € àˆØˆÝŒI�OŠO˜D $Ñ'Ô'¨"­r¬y¯ª¸tÀTÑ/JÔ/JÑ*JÑJˆÝŒI�OŠO˜D %Ñ(Ô(¨2µ´	·²ÀÀeÑ0LÔ0LÑ+LÑLˆØ�EŠE�!‰HŒHˆå!'¤¨a°¸$Ð!?Ñ!?Ô!?Ñˆ��d˜Bå! '¨1Ñ-Ô-Ð-Ð-Ð-r!   ÚupperTFc                 ó†   — t           j                             t          j        d¦  «        |¬¦  «        }|j        dk    sJ ‚d S )N)r   r   )rw   r   )r3   r   rB   r4   ro   )r   rw   rs   s      r   Útest_cholesky_empty_arrayz(TestRegression.test_cholesky_empty_array—   s;   € õ Œi× Ò ¥¤¨&Ñ!1Ô!1¸Ð Ñ?Ô?ˆØŒx˜1Š}ˆ}ˆ}ˆ}ˆ}ˆ}r!   Úrtolr-   rM   ©rM   c                 óŠ   — t          j        d¦  «        }t           j                             ||¬¦  «        }|j        dk    sJ ‚d S )N)rM   rL   r1   )rz   r{   )r3   r4   r   rW   r   )r   rz   rI   rs   s       r   Útest_matrix_rank_rtol_argumentz-TestRegression.test_matrix_rank_rtol_argument�   sF   € õ ŒH�YÑÔˆÝŒi×#Ò# A¨DÐ#Ñ1Ô1ˆØŒy˜DÒ Ð Ð Ð Ð Ð r!   c                 ó�  — t          j        dt           j        ¬¦  «        }t          j        |d|z  f¦  «        j        }t          j        ddgddgg¦  «        }t          j        d|z  |f¦  «        j        }t          d¦  «        D ]?}||z  }t          j        ||¦  «                              ¦   «         }|dk    r
J d¦   «         ‚Œ@d S )	Ni ¡ r   iöÿÿÿr   rO   éÈ   FzHunexpected result from matmul, probably due to OpenBLAS threading issues)	r3   r   r   ÚvstackÚTr   ÚrangeÚiscloseÚsum)r   rI   ÚsrcÚmatrixÚexpectedÚiÚresultÚ
mismatchess           r   Útest_openblas_threadingz&TestRegression.test_openblas_threading¤   sâ   € õ ŒI�f¥B¤JÐ/Ñ/Ô/ˆÝŒi˜˜C ™E˜
Ñ#Ô#Ô%ˆÝ”˜A˜q˜6 A q 6Ð*Ñ+Ô+ˆÝ”9˜c !™e Q˜ZÑ(Ô(Ô*ˆÝ�s‘”ð 	Að 	AˆAØ˜6‘\ˆFÝœ: f¨hÑ7Ô7Ð7×<Ò<Ñ>Ô>ˆJØ˜QŠˆðAð  @ñ Aô Að Að ð	Að 	Ar!   N)Ú__name__Ú
__module__Ú__qualname__r    r+   r;   r@   rE   rJ   r]   rg   rv   ÚpytestÚmarkÚparametrizery   r3   r4   r}   r‹   © r!   r   r   r      s.  € € € € € ð+ð +ð +ð.	/ð 	/ð 	/ð7ð 7ð 7ðKð Kð Kð
#ð #ð #ðð ð ð
8ð 8ð 8ð+Bð +Bð +BðZ
.ð 
.ð 
.ð „[×Ò˜W t¨U mÑ4Ô4ðð ñ 5Ô4ðð
 „[×Ò˜V c¨C¨5°1©9°h°b´h¸t±n´nÐ%EÑFÔFð!ð !ñ GÔFð!ðAð Að Að Að Ar!   r   )Ú__doc__r�   Únumpyr3   r   r   r   r   r   r   Únumpy.testingr	   r
   r   r   r   r   r   r’   r!   r   ú<module>r–      sì   ððð ð €€€à Ð Ð Ð Ø @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ðcAð cAð cAð cAð cAñ cAô cAð cAð cAð cAr!   