
    doi                        S SK r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  S SKJr  S SKrS rS rS rS	 r\R8                  R;                  S
\\/5      \R8                  R;                  SSS/5      S 5       5       r\R8                  R;                  S
\\/5      \R8                  R;                  SSS/5      S 5       5       rg)    N)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)ComplexWarning)ldlc                  .   [        S5      n [        R                  " [        5         [	        U S S 2S S24   5        S S S 5        [        R
                  " [        5         [	        U S-  5        S S S 5        g ! , (       d  f       N@= f! , (       d  f       g = f)N                    ?)r   pytestraises
ValueErrorr   warnsr   )As    ^/var/www/html/land-ocr/venv/lib/python3.13/site-packages/scipy/linalg/tests/test_decomp_ldl.py	test_argsr      sb    AA	z	"Aa!eH 
# 
n	%AbD	 
&	% 
#	" 
&	%s   A5B5
B
B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)r-   r/   yp=
ףQp=
ףzG)r.   r0   r1   yQῸQ?)g      @
         )g      $@r      r3   )g      ?r5      	   )g      2@r3   r7   r   )g      J@a   p   k   2   )g     @X@r   Y   b      )g      \@r=   @   !      )g     Z@r>   rA   <   I   )g      I@r?   rB   rD   M   )       @r   r      )rF   rI   r2   )g      rI   rB   rJ   rG   )g        r2   rJ   rB   )g      @rJ   rG   rK   r2   )y(\                        rL   rL   )yHzG?y=
ףp!        rL   rL   )yGz@zG?yq=
ףpQ?yQ        rL   )yHzG@      y{GzzGy)\(?)\(yq=
ףp        g     @@r   )atolrtolFlower	hermitianrP   rR   )rH   rH   )	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            	         [         R                  R                  S5      n [        S5       GH  nU R	                  SS5      nU R	                  S5      (       a  U R                  X"45      S-   OU R                  X"45      S-  nX3R                  5       R                  -   nU[        U5      U R	                  SS	5      -  -  n[        US
S9n[        USS9n[        USS9u  pgn[        [        XhS 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        GM     g )N  r2   r3   d   r   r   r          .A)krO   zSpin z failed)nprandomdefault_rngrangeintegersrV   rU   r   r   r   r   r   any)
rng_nrZ   l_indu_indr[   r'   r(   r&   s
             r   test_permutationsro   H   s   
))


%C2YLLC &)ll1ooCJJv"3::qf;Mb;P

N	SVCLLC(((!!r*!!q) aq/aCQ$''57);<aq/aCQ$''57);<! r*   r"   rl         c                    [         R                  R                  S5      nSU  SU 3nUR                  X 45      R                  U5      nXDR                  -   nU[        XS9U" UR                  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      XJUS9  [        UR                  U	5      R                  UR                  5      XJUS9  g )Nr^   zFailed for size: 	, dtype: r!   r`   ra   r   rO   g-C6?绽|=rN   err_msg)rd   re   rf   astyperU   r   rh   r   r   r   rT   )rl   r"   rj   msgrZ   r&   d1r(   r[   d2rN   s              r   $test_ldl_type_size_combinations_realr{   ]   s     ))


%Cqc5'2C

A6!!%(A	CCAQ	U3<<3#78	88A1vHA11AHA1G#4DAEE"IMM!##&cBAEE"IMM!##&cBr*   c                 |   [         R                  R                  S5      nSU  SU 3nSU  SU 3nUR                  X 45      SUR                  X 45      -  -   R                  U5      nXUR	                  5       R
                  -   nU[        XS9U" UR                  SS5      5      -  -  n[        U5      u  pgn[        US	S
9u  pnU[        L a  SOSn[        UR                  U5      R                  UR	                  5       R
                  5      X[US9  [        U	R                  U
5      R                  U	R	                  5       R
                  5      X[US9  UR                  X 45      SUR                  X 45      -  -   R                  U5      nXUR
                  -   nU[        XS9U" UR                  SS5      5      -  -  n[        US	S9u  pgn[        US	S	S9u  pn[        UR                  U5      R                  UR
                  5      X[US9  [        U	R                  U
5      R                  U	R
                  5      X[US9  g )Nr^   zHer failed for size: rs   zSym failed for size: r   r!   r`   ra   r   rO   g-C6*?rt   ru   rQ   rS   )rd   re   rf   rw   rV   rU   r   rh   r   r   r   rT   )rl   r"   rj   msg1msg2rZ   r&   ry   r(   r[   rz   rN   s               r   'test_ldl_type_size_combinations_complexr   n   s    ))


%C#A3iw7D#A3iw7D 
QF	Bszz1&11	199%@A	&&(**AQ	U3<<3#78	88A1vHA11AHA1I%45DAEE"IMM!&&(**-qTJAEE"IMM!&&(**-qTJ 
QF	Bszz1&11	199%@A	##AQ	U3<<3#78	88A1"HA11A+HA1AEE"IMM!##&dCAEE"IMM!##&dCr*   ) numpyrd   numpy.testingr   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   numpy.exceptionsr   scipy.linalgr   r   r   r)   r\   ro   markparametrizer{   r    r*   r   <module>r      s     M M* * * * ,  7(1V=* 7G"45r3i(C ) 6C 9j"9:r3i(D ) ;Dr*   