
    tKg
                        d dl Zd dlmZ d dlmZmZmZ d dlm	Z	m
Z
  ej                  dd gd dgg      Z ej                  g dg      Zd ggdd	ggd gggd ggd
d	ggd gggdggdd	ggdgggdggd
d	ggdggged ej                  d      eged
 ej                  d      egede eed          z  ej                  j!                  e       eed          z  ggZd	dgddggg dgd	gdgdggg dg dgd	dgddgddggd	dgddggg dgd	gdgdggg dg dgd	dgddgddggg dg dg dg ej$                  d       ej$                  d       ej$                  d      gZd Zd Zd Zd  Zy)!    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                 \    t        | |      \  }}t        ||d       t        ||d       y )NsideV瞯<atol)r   r   )ar   
expected_u
expected_pups         h/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/scipy/linalg/tests/test_decomp_polar.pycheck_precomputed_polarr    &   s,     DAqAz.Az.    c                    t        j                  t        j                  t              j                        }t        j
                  |       }|j                  \  }}t        | d      \  }}t        |j                  ||f       t        |j                  ||f       t        |j                  |      | |       ||k\  rIt        |j                         j                  j                  |      t        j                  |      d       nHt        |j                  |j                         j                        t        j                  |      d       t        |j                         j                  |       t        |d      }|t        |      dkD     }t!        |dk\  j#                                t        | d	      \  }}t        |j                  ||f       t        |j                  ||f       t        |j                  |      | |       ||k\  rIt        |j                         j                  j                  |      t        j                  |      d       nHt        |j                  |j                         j                        t        j                  |      d       t        |j                         j                  |       t        |d      }|t        |      dkD     }t!        |dk\  j#                                y )
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_polarr7   .   s    77288E?../L	AB88DAq!DAq1a&!1a&!AEE!Hal3Av

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

q)266!95Aaffhjj)266!95AAFFHJJ"&E#e*u,-M]a$$&'r!   c                  @    t         D ]  \  } }}}t        | |||        y N)precomputed_casesr    )r   r   r   r   s       r   test_precomputed_casesr;   U   s#    +<'4Z4Z@ ,=r!   c                  0    t         D ]  } t        |         y r9   )verify_casesr7   )r   s    r   test_verify_casesr>   Z   s    Q r!   )numpyr$   numpy.linalgr   numpy.testingr   r   r   scipy.linalgr   r   arraydiag2a13r.   r-   r+   r:   emptyr=   r    r7   r;   r>    r!   r   <module>rH      s     B B $ 	1a&1a&!"bhh	{ 	cUGqcUaSE"cUFaSEQC5!cUGqcUaSE"cUFaSEQC5!
GVRVVAY&
FFBFF1Iu%'3tCF|#SUUYYs^DQL%@A  VaVKS1#sO	VaVaVVaYLS1#t>"VdF^aV$[),BHHVBHHVBHHV$/$(NA
r!   