
    ^Mh                        d dl Z 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                            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e j                            d!eeej        eej        g          e j                            d"g d#          e j                            d$d
dg          d%                                     Z dS )&    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                 v    t          | |          \  }}t          ||d           t          ||d           d S )NsideV瞯<atol)r   r   )ar   
expected_u
expected_pups         d/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/scipy/linalg/tests/test_decomp_polar.pycheck_precomputed_polarr#   '   sJ     DAqAz....Az......    c                    t          j        t          j        t                    j                  }t          j        |           }|j        \  }}t          | d          \  }}t          |j        ||f           t          |j        ||f           t          |
                    |          | |           ||k    rOt          |                                j        
                    |          t          j        |          d           nNt          |
                    |                                j                  t          j        |          d           t          |                                j        |           t          |d          }|t          |          dk             }t!          |dk                                               t          | d	          \  }}t          |j        ||f           t          |j        ||f           t          |
                    |          | |           ||k    rOt          |                                j        
                    |          t          j        |          d           nNt          |
                    |                                j                  t          j        |          d           t          |                                j        |           t          |d          }|t          |          dk             }t!          |dk                                               d S )
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    728E??.//L	AB8DAq!!!DAq1a&!!!1a&!!!AEE!HHal3333Avv
q))26!995AAAAAaffhhj))26!995AAAAAFFHHJ"""&&&E#e**u,-M]a$$&&'''   DAq1a&!!!1a&!!!AEE!HHal3333Avv
q))26!995AAAAAaffhhj))26!995AAAAAFFHHJ"""&&&E#e**u,-M]a$$&&'''''r$   c                  H    t           D ]\  } }}}t          | |||           d S N)precomputed_casesr#   )r   r   r   r   s       r"   test_precomputed_casesr>   V   s?    +< A A'4Z4Z@@@@A Ar$   c                  8    t           D ]} t          |            d S r<   )verify_casesr:   )r   s    r"   test_verify_casesrA   [   s(      Q r$   dtr-   )r   r   r   r   c                    t          j        ||           }|\  }}|dk    r||fn||f}t          ||          \  }}t          t          j        d|                     \  }	}
t	          |j        |	j                   t	          |j        |
j                   |j        |k    sJ |j        |k    sJ t          j        |dk              sJ d S )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     	b!!!ADAqq!ffQFGDAqRVAR((())HC#)$$$#)$$$7e7g6!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      s               B B B B B B B B B B $ $ $ $ $ $ $ $ 	1a&1a&!""bh			{ 	cUGqcUaSE"cUFaSEQC5!cUGqcUaSE"cUFaSEQC5!
GVRVAYY&
FFBF1IIu%'3ttCF||#SUYYs^^DDQLL%@A  VaVYYKS1#sOYY			VaVaVVaYZZLS1#t\\>>>"VdF^aV$^^[[[))),BHVBHVBHV$/ / /$( $( $(NA A A
   UBJNOO#;#;#;<<&'!233  43 =< PO  r$   