
    Ui                     J   d dl Zd dlmZmZmZ d dlZd dlmZ d Zd Z	ej
                            dd ej        d         D                       d	             Zej
                            dd
 ej        d         D                       d             Zd Zd Zd Zd Zd Zd ZdS )    N)	bandwidthissymmetricishermitian)raisesc                      d} t           j        d         D ]P}t          j        | | g|          }|dv rt          t          t
          |           :|dk    rAt          |          }Qd S N   All)dtypeeUVOMmG)np	typecodeszerosr   	TypeErrorr   )ntA_s       /var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/scipy/linalg/tests/test_cythonized_array_utils.pytest_bandwidth_dtypesr      sv    	A\%   HaV1%%%==9i++++#XX!AA     c                  h    t          j        g d          } t          t          t          |            d S )N         )r   arrayr   
ValueErrorr   r   s    r   test_bandwidth_non2d_inputr!      s-    
A
:y!$$$$$r   Tc                     g | ]}|d v|	S eGUVOMm .0xs     r   
<listcomp>r*      ,     6 6 6Q"#9"4"4  !"4"4"4r   r
   c                    d}d}t          j        ||g| d          }d|d t          |          D             d t          |          D             f<   d|d t          ||z
            D             d	 t          ||          D             f<   d|d
 t          d|          D             d t          |dz
            D             f<   d|d t          ||          D             d t          ||z
            D             f<   t          |          ||fk    sJ t          j        g dg dg dg dg dg dg dg dg          }t          |          dk    sJ d S )N      Fr   orderr   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>       Qqr   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>       222Aa222r   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>        Qqr   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>        777a777r   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>!       Qqr   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>!        7 7 7q 7 7 7r   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>"   r;   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z0test_bandwidth_square_inputs.<locals>.<listcomp>"   r=   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   )r   r   ranger   r   )r"   r   kRr   s        r   test_bandwidth_square_inputsrC      s    	A	A
!Qq,,,A67A%((22q22223;<A%!**775A;;77778;<A%1++ 7 7E!A#JJ 7 7 778;<A%1++ 7 7E!A#JJ 7 7 778Q<<Aq6!!!!
                        	 		 		A Q<<6!!!!!!r   c                     g | ]}|d v|	S r$   r&   r'   s     r   r*   r*   1   r+   r   c                 4   d\  }}d}t          j        ||g| d          }d|d t          |          D             d t          |          D             f<   d|d t          ||z
            D             d	 t          ||          D             f<   d|d
 t          d|          D             d t          |dz
            D             f<   d|d t          ||          D             d t          ||z
            D             f<   t          |          ||fk    sJ d S )N)
   r-   r	   r/   r0   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>8   r3   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>8   r5   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>9   r7   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>9   r9   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>:   r;   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>:   r=   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>;   r;   r   c                     g | ]}|S r&   r&   r'   s     r   r*   z.test_bandwidth_rect_inputs.<locals>.<listcomp>;   r=   r   )r   r   r@   r   )r"   r   mrA   rB   s        r   test_bandwidth_rect_inputsrP   1   sC    DAq	A
!Qq,,,A67A%((22q22223;<A%!**775A;;77778;<A%1++ 7 7E!A#JJ 7 7 778;<A%1++ 7 7E!A#JJ 7 7 778Q<<Aq6!!!!!!r   c                  ,   d} t           j        d         D ]~}t          j        | | g|          }|dv r7t          t          t
          |           t          t          t          |           U|dk    r\t          |          sJ t          |          sJ d S r   )r   r   r   r   r   r   r   )r   r   r   s      r   "test_issymetric_ishermitian_dtypesrR   ?   s    	A\%  	" 	"HaV1%%%==9k1---9k1----#XXq>>!!!q>>!!!!	" 	"r   c                     t          j        g d          } t          t          t          |            t          t          t
          |            t          j        g dg dgg          } t          t          t          |            t          t          t
          |            t          j        g dg dg          } t          t          t          |            t          t          t
          |            d S )Nr   )r.   r	      )r   r   r   r   r   r   r    s    r   *test_issymmetric_ishermitian_invalid_inputrU   M   s    
A
:{A&&&
:{A&&&
999iii()**A
:{A&&&
:{A&&&
)))YYY'((A
:{A&&&
:{A&&&&&r   c                  j   t          j        dd                              t                                        dd          } | t          j        dd                              t                                        dd          dz  z  } | t           j        z  } | | j        z   } t          |           sJ d S Nr   rF   r   r	                 ?)r   arangeastypecomplexreshapepir"   r   r    s    r    test_issymetric_complex_decimalsr_   Y   s    
	!R((00A66A2q			 	 	)	)	1	1!Q	7	7	::AJA	ACAq>>r   c                     t          j        dd                              t                                        dd          } | t          j        dd                              t                                        dd          dz  z  } | t           j        z  } | | j                                        z   } t          |           sJ d S rW   )	r   rZ   r[   r\   r]   r^   r"   conjr   r    s    r   !test_ishermitian_complex_decimalsrb   b   s    
	!R((00A66A2q			 	 	)	)	1	1!Q	7	7	::AJA	ACHHJJAq>>r   c                  t   d} t           j                            d          }|                    d| | g          }||j        z  }|                    | | g          }||z  |j        z  }t          |d          sJ t          |dd          sJ t          |dd	          sJ t          |d
d	          sJ d S )Nr-   i[      @highsize绽|=atol        rj   rtol-q=vIh%<=)r   randomRandomStateuniformr"   standard_normalr   r   rngr)   ypzs         r   $test_issymmetric_approximate_resultsry   k   s    
A
)

	
*
*C1a&))A	ACAQF##A	AAqu%%%%%%qu2......qr......qu511111111r   c                     d} t           j                            d          }|                    d| | g          }||j        z  }|                    | | g          |                    | | g          dz  z   }||z  |                                j        z  }t          |d          sJ t          |dd	          sJ t          |dd
	          sJ t          |dd
	          sJ d S )Nr-   ih:rd   re   rY   rh   ri   rk   rl   rn   ro   )r   rp   rq   rr   r"   rs   ra   r   rt   s         r   $test_ishermitian_approximate_resultsr{   x   s    
A
)

	
*
*C1a&))A	ACAQF##c&9&91a&&A&A"&DDA	A
Aqu%%%%%%qu2......qr......qu511111111r   )numpyr   scipy.linalgr   r   r   pytestr   r   r!   markparametrizer   rC   rP   rR   rU   r_   rb   ry   r{   r&   r   r   <module>r      st       < < < < < < < < < <       	 	 	% % %
  6 6",u*= 6 6 6 7 7" "7 7".  6 6",u*= 6 6 6 7 7	" 	"7 7	"" " "	' 	' 	'    
2 
2 
2
2 
2 
2 
2 
2r   