
    Pi                        d dl Zd dlmZmZmZ d dl mZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZ d dlmZ d dlmZ d dlZd Zd Zd Zd	 Zej                            d
eeg          ej                            dddg          d                         Zej                            d
eeg          ej                            dddg          d                         ZdS )    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                  D   t          d          } t          j        t                    5  t	          | d d d df                    d d d            n# 1 swxY w Y   t          j        t                    5  t	          | dz             d d d            d S # 1 swxY w Y   d S )N                    ?)r   pytestraises
ValueErrorr   warnsr   )As    v/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/scipy/linalg/tests/test_decomp_ldl.py	test_argsr      s   AA	z	"	"  Aaaa!eH               
n	%	%  AbD			                 s#   AAA5BBBc                  .   t          dt                    } t          t          d                    \  }}}t          |t	          |                      t          |t	          |                      t          |t          g t                               d S )N)r   r   dtype)r
   complexr   r   r	   r   int)aldps       r   test_empty_arrayr)      s|    fG$$$A%--  GAq!aA///aA///ar!5!5!566666    c                  z   t          g dg dg dg dg          } t          g dg dg dg dg          }t          g d	g d
g dg dg dg          }t          g dg dg dg dg dg          }t          g dg dg dg dg          }|||fD ]}t          |          \  }}}t          |                    |                              |j                  |t          d          d           t          |d          \  }}}t          |                    |                              |j                  |t          d          d           t          | d          \  }}}t          |                    |                              |j                  | t          d          d           t          | dd          \  }}}t          |                    |                              |j                  | t          d          d           t          |                                j        d          \  }}}t          t          |                    |                              |                                j                  |z
            t          d          t          d          d           d S )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AA@@@CCCAAAC 	D 	DA 	~~ 	  	 A 	&&&%%%$$$%%%###	% 	& 	&A 	   ######"""###	% 	& 	&A
 	...111888AAAC 	D 	DA AY K Ka&&1aaQS))175>>JJJJau%%%1aaQS))175>>JJJJJ!u%%%GAq!AEE!HHLL%%qwu~~AFFFF!5E222GAq!AEE!HHLL%%qwu~~AFFFF !&&((*A&&&GAq!Dqaffhhj11!344eFmm a1 1 1 1 1 1r*   c            	         t           j                            d          } t          d          D ]W}|                     dd          }|                     d          r|                     ||f          dz   n|                     ||f          dz  }||                                j        z   }|t          |          |                     dd	          z  z  }t          |d
          }t          |d          }t          |d          \  }}}t          t          ||d d f         |                    d| d           t          |d          \  }	}}t          t          |	|d d f         |                    d| d           Yd S )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2YY = =LLC  &)ll1ooPCJJ1v""3::q!f;M;Mb;P
N	SVVCLLC((((!!r***!!q))) aq///1aC!QQQ$'''););););<<<aq///1aC!QQQ$'''););););<<<<!= =r*   r"   rl         c                    t           j                            d          }d|  d| }|                    | | f                              |          }||j        z   }|t          | |           ||                    dd                    z  z  }t          |          \  }}}t          |d          \  }}	}|t          u rd	nd
}
t          |
                    |          
                    |j                  ||
|           t          |
                    |	          
                    |j                  ||
|           d S )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2q22522C

Aq6!!%((A	ACAQe			UU3<<3#7#788	88A1vvHAr11AHAr1G##44DAEE"IIMM!#&&cBBBBAEE"IIMM!#&&cBBBBBBr*   c                    t           j                            d          }d|  d| }d|  d| }|                    | | f          d|                    | | f          z  z                       |          }||                                j        z   }|t          | |           ||                    dd                    z  z  }t          |          \  }}}t          |d	
          \  }	}
}|t          u rdnd}t          |                    |                              |                                j                  |||           t          |	                    |
                              |	                                j                  |||           |                    | | f          d|                    | | f          z  z                       |          }||j        z   }|t          | |           ||                    dd                    z  z  }t          |d	          \  }}}t          |d	d	          \  }	}
}t          |                    |                              |j                  |||           t          |	                    |
                              |	j                  |||           d S )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7A7777D7A7777D 
QF		Bszz1a&111	199%@@A	!&&((*AQe			UU3<<3#7#788	88A1vvHAr11AHAr1I%%445DAEE"IIMM!&&((*--qtTJJJJAEE"IIMM!&&((*--qtTJJJJ 
QF		Bszz1a&111	199%@@A	!#AQe			UU3<<3#7#788	88A1"""HAr11A+++HAr1AEE"IIMM!#&&dCCCCAEE"IIMM!#&&dCCCCC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 M M M M M M M M* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * , + + + + +         7 7 7(1 (1 (1V= = =* 7G"455r3i((C C )( 65C 9j"9::r3i((D D )( ;:D D Dr*   