
    (ph                        S SK r S SKrS SKJr  S SKJrJrJr  S SK	J
r
Jr  \R                  " SS /S S//5      r\R                  " / SQ/5      rS //SS	//S ///S //S
S	//S ///S//SS	//S///S//S
S	//S///\S\R                  " S5      \/\S
\R                  " S5      \/\S\\" \S    5      -  \R                   R#                  \5      \" \S    5      -  //rS	S/SS/// SQ/S	/S/S/// SQ/ SQ/S	S/SS/SS//S	S/SS/// SQ/S	/S/S/// SQ/ SQ/S	S/SS/SS/// SQ/ SQ/ SQ/\R&                  " S5      \R&                  " S5      \R&                  " S5      /rS rS rS rS  r\ R2                  R5                  S!\\\R:                  \\R>                  /5      \ R2                  R5                  S"/ S#Q5      \ R2                  R5                  S$S
S/5      S% 5       5       5       r g)&    N)norm)assert_assert_allcloseassert_equal)polareigh      )   r	   r	   rightr   left	      )r   r	   r
   )r
   r   r      y      @      @)r   r	                 @r   )r   r	   y      @       @)r
   y      @      y             y      @       y      @      ?)i'  
   r   )r	   r   )r   r   r	   r   r   r   r	   r	   r   c                 B    [        XS9u  pE[        XBSS9  [        XSSS9  g )NsideV瞯<atol)r   r   )ar   
expected_u
expected_pups         W/var/www/html/venv/lib/python3.13/site-packages/scipy/linalg/tests/test_decomp_polar.pycheck_precomputed_polarr#   '   s$     DAA.A.    c                    [         R                  " [         R                  " [        5      R                  5      n[         R
                  " U 5      nUR                  u  p4[        U SS9u  pV[        UR                  X445        [        UR                  XD45        [        UR                  U5      XS9  X4:  aG  [        UR                  5       R                  R                  U5      [         R                  " U5      SS9  OF[        UR                  UR                  5       R                  5      [         R                  " U5      SS9  [        UR                  5       R                  U5        [        USS9nU[        U5      S:     n[!        US:  R#                  5       5        [        U S	S9u  pV[        UR                  X445        [        UR                  X345        [        UR                  U5      XS9  X4:  aG  [        UR                  5       R                  R                  U5      [         R                  " U5      SS9  OF[        UR                  UR                  5       R                  5      [         R                  " U5      SS9  [        UR                  5       R                  U5        [        USS9nU[        U5      S:     n[!        US:  R#                  5       5        g )
Nr   r   r   r   T)eigvals_onlyg+=r   r   )npsqrtfinfofloatepsasarrayshaper   r   r   dotconjTeyer   absr   all)	r   product_atolaamnr    r!   evalsnonzero_evalss	            r"   verify_polarr:   /   s    77288E?../L	AB88DA!DA1&!1&!AEE!Ha3v

q)266!95Aaffhjj)266!95AAFFHJJ"&E#e*u,-M]a$$&' DA1&!1&!AEE!Ha3v

q)266!95Aaffhjj)266!95AAFFHJJ"&E#e*u,-M]a$$&'r$   c                  <    [          H  u  pp#[        XX#5        M     g N)precomputed_casesr#   )r   r   r   r   s       r"   test_precomputed_casesr>   V   s    +<'@ ,=r$   c                  4    [          H  n [        U 5        M     g r<   )verify_casesr:   )r   s    r"   test_verify_casesrA   [   s    Q r$   dtr-   )r   r   r   r   c                    [         R                  " XS9nUu  pEUS:X  a  XD4OXU4n[        X2S9u  px[        [         R                  " SU S95      u  p[	        UR
                  U	R
                  5        [	        UR
                  U
R
                  5        UR                  U:X  d   eUR                  U:X  d   e[         R                  " US:H  5      (       d   eg )N)dtyper   r   r   r   )r'   emptyr   r1   r   rD   r-   r3   )rB   r-   r   r   r6   r7   p_shaper    r!   u_np_ns              r"   
test_emptyrI   _   s     	!ADAqfQFGDARVVAR()HC#))$#))$77e77g66!q&>>>r$   )!pytestnumpyr'   numpy.linalgr   numpy.testingr   r   r   scipy.linalgr   r   arraydiag2a13r1   r0   r.   r=   rE   r@   r#   r:   r>   rA   markparametrizeintr*   float32complex	complex64rI    r$   r"   <module>rY      sK      B B $ 	1a&1a&!"hh	{ 	cUGqcUaSE"cUFaSEQC5!cUGqcUaSE"cUFaSEQC5!
GRVVAY&
FBFF1Iu%'3tCF|#SUUYYs^DQL%@A  VaVKS1#sO	VaVaVVaYLS1#t>"VdF^aV$[),HHVHHVHHV$/$(NA
 UBJJNO#;<&'!23 4 = Pr$   