
    (phk                        S SK JrJrJr  S SKJrJrJrJrJ	r	J
r
JrJrJrJrJrJrJr  S SKJrJrJr  S SKJr  S SKJr  S SKrS SKJrJr  \R<                  R>                  S 5       r S	 r!S
 r"S r#\R<                  RI                  S\\/5      \R<                  RI                  SSS/5      S 5       5       r%\R<                  RI                  S\\/5      \R<                  RI                  SSS/5      S 5       5       r&g)    )assert_array_almost_equalassert_allcloseassert_)arrayeyezeros
empty_likeemptytril_indices_fromtriltriu_indices_fromspacingfloat32float64	complex64
complex128)randrandintseed)ldl)ComplexWarningN)raiseswarnsc                      [        S5      n [        [        [        U S S 2S S24   5        [	        [
        5         [        U S-  5        S S S 5        g ! , (       d  f       g = f)N                    ?)r   assert_raises
ValueErrorr   r   r   )As    U/var/www/html/venv/lib/python3.13/site-packages/scipy/linalg/tests/test_decomp_ldl.py	test_argsr"      sB    AA*c1QU8,	~	AbD	 
		s   A
Ac                      [        S[        S9n [        [        S5      5      u  pn[        U[	        U 5      5        [        U[	        U 5      5        [        U[        / [        S95        g )N)r   r   dtype)r
   complexr   r   r	   r   int)aldps       r!   test_empty_arrayr,      sM    fG$A%- GA!aA/aA/ar!56    c                  j   [        / SQ/ SQ/ SQ/ SQ/5      n [        / SQ/ SQ/ SQ/ SQ/5      n[        / S	Q/ S
Q/ SQ/ SQ/ SQ/5      n[        / SQ/ SQ/ SQ/ SQ/ SQ/5      n[        / SQ/ SQ/ SQ/ SQ/5      nXU4 H  n[        U5      u  pcn[        UR                  U5      R                  UR                  5      U[        S5      SS9  [        USS9u  pn[        UR                  U5      R                  UR                  5      U[        S5      SS9  M     [        U SS9u  pcn[        UR                  U5      R                  UR                  5      U [        S5      SS9  [        U SSS9u  pn[        UR                  U5      R                  UR                  5      U [        S5      SS9  [        UR                  5       R                  SS9u  pcn[        [        UR                  U5      R                  UR                  5       R                  5      U-
  5      [        S5      [        S5      SS9  g )N)y(\ؿQ(\@{Gzq=
ףpGzffffff@q=
ףp?)r/   yQ!@(\?)\((\?HzG@q=
ףp)r0   r2   yp=
ףQp=
ףzG)r1   r3   r4   yQῸQ?)g      @
         )g      $@r      r6   )g      ?r8      	   )g      2@r6   r:   r   )g      J@a   p   k   2   )g     @X@r   Y   b      )g      \@r@   @   !      )g     Z@rA   rD   <   I   )g      I@rB   rE   rG   M   )       @r   r      )rI   rL   r5   )g      rL   rE   rM   rJ   )g        r5   rM   rE   )g      @rM   rJ   rN   r5   )y(\                        rO   rO   )yHzG?y=
ףp!        rO   rO   )yGz@zG?yq=
ףpQ?yQ        rO   )yHzG@      y{GzzGy)\(?)\(yq=
ףp        g     @@r   )atolrtolFlower	hermitianrS   rU   )rK   rK   )	r   r   r   dotTr   conjr   r   )	r(   bcr*   exr)   r+   us	            r!   test_simpler_      s   A@CAC 	DA 	 	 A 	&%$%#	% 	&A 	 ##"#	% 	&A
 	.18AC 	DA AYa&aaQSS)175>Jau%aaQSS)175>J  !u%GA!AEE!HLL%qwu~AF!5E2GA!AEE!HLL%qwu~AF !&&(**A&GA!Dqaffhjj1!34eFm a1r-   c            	      &   [        S5        [        S5       H  n [        SS5      n[        S5      (       a  [        X5      O[        X5      [        X5      S-  -   nX"R	                  5       R
                  -   nU[        U5      [        SS5      -  -  n[        US	S
9n[        USS
9n[        USS9u  pVn[        [        XWS S 24   U   5      (       + SU  S35        [        USS9u  pn[        [        XS S 24   U   5      (       + SU  S35        M     g )N  r5   r6   d   r   r          .A)kr   rR   zSpin z failed)r   ranger   r   rY   rX   r   r   r   r   r   any)	_nr]   l_indu_indr^   r*   r+   r)   s	            r!   test_permutationsrm   I   s    J2YAsO!!**DJ$q*tAz"}*D

N	SVGAsO##!!r*!!q) aq/aCQ$''57);<aq/aCQ$''57);<! r-   r%   rj         c                    [        S5        SU  SU 3n[        X 5      R                  U5      nX3R                  -   nU[	        XS9U" [        SS5      5      -  -  n[        U5      u  pEn[        USS9u  pxnU[        L a  S	OS
n	[        UR                  U5      R                  UR                  5      X9US9  [        UR                  U5      R                  UR                  5      X9US9  g )Nra   zFailed for size: 	, dtype: r$   rc   rd   r   rR   g-C6?绽|=rQ   err_msg)
r   r   astyperX   r   r   r   r   r   rW   )
rj   r%   msgr]   r)   d1r+   r^   d2rQ   s
             r!   $test_ldl_type_size_combinations_realry   ^   s     	Jqc5'2CQ
% A	CCAQ	U71c?3	33A1vHA11AHA1G#4DAEE"IMM!##&cBAEE"IMM!##&cBr-   c                    [        S5        SU  SU 3nSU  SU 3n[        X 5      S[        X 5      -  -   R                  U5      nXDR                  5       R                  -   nU[        XS9U" [        SS5      5      -  -  n[        U5      u  pVn[        US	S
9u  pnU[        L a  SOSn
[        UR                  U5      R                  UR                  5       R                  5      XJUS9  [        UR                  U	5      R                  UR                  5       R                  5      XJUS9  [        X 5      S[        X 5      -  -   R                  U5      nXDR                  -   nU[        XS9U" [        SS5      5      -  -  n[        US	S9u  pVn[        US	S	S9u  pn[        UR                  U5      R                  UR                  5      XJUS9  [        UR                  U	5      R                  UR                  5      XJUS9  g )Nra   zHer failed for size: rq   zSym failed for size: r   r$   rc   rd   r   rR   g-C6*?rr   rs   rT   rV   )r   r   ru   rY   rX   r   r   r   r   r   rW   )rj   r%   msg1msg2r]   r)   rw   r+   r^   rx   rQ   s              r!   'test_ldl_type_size_combinations_complexr}   o   s    	J#A3iw7D#A3iw7D 
aBtAzM	!))%0A	&&(**AQ	U71c?3	33A1vHA11AHA1I%45DAEE"IMM!&&(**-qTJAEE"IMM!&&(**-qTJ 
aBtAzM	!))%0A	##AQ	U71c?3	33A1"HA11A+HA1AEE"IMM!##&dCAEE"IMM!##&dCr-   )'numpy.testingr   r   r   numpyr   r   r   r	   r
   r   r   r   r   r   r   r   r   numpy.randomr   r   r   scipy.linalgr   scipy._lib._utilr   pytestr   r   r   markthread_unsafer"   r,   r_   rm   parametrizery   r}    r-   r!   <module>r      s    M M* * * * - ,  +  1  7(1V=* 7G"45r3i(C ) 6C 9j"9:r3i(D ) ;Dr-   