
    >qj>                     "   d Z ddlZddlmZ ddlZddlmZ g dZi dddddd	d
d	dddddddddddddddddddddddddddddddddZ	i ddd dd!dd"dd#dd$dd%dd&dd'dddd(dd)dddd*dd+dd,dd-di d.dd/dd0dd1dd2dd3dd4dd5dd6dd7dd8dd9dd:dddd;dd<dd=dd>diZ
er/e
j                         D ]  \  ZZee	v re	exx   ez  cc<   ee	e<    ej                  ZeD  ci c]  } | evr
|  ee|        c} Zej                         D  ci c]  \  } } e|      s| | c}} Z eg d?      Z ed@g      Z edAdBg      Z eg dC      Z ed%d$g      ZdD Zej4                  j7                  dEF      ej4                  j9                  dG      ej4                  j9                  dH      ej4                  j9                  dI      ej4                  j9                  dJ      ej4                  j9                  dK      ej4                  j;                  dLej=                               ej4                  j;                  dMdN      dO                                                         Zyc c} w c c}} w )PzTest dtype deprecations.
    N)SCIPY_ARRAY_API)#LinAlgErrorLinAlgWarningget_lapack_funcsget_blas_funcsfind_best_blas_type	qr_update	qr_insert	qr_delete
block_diagtoeplitz	circulanthankelhadamardleslie	companionhelmerthilbert
invhilbertpascal	invpascaldftfiedlerfiedler_companionconvolution_matrixclarkson_woodruff_transformexpmtanmtanhmsinmcosmsinhmcoshm	expm_condsolve_continuous_arersf2csfeigh_tridiagonalGeigvalsh_tridiagonalissymmetriceGmMishermitian	bandwidthegGmMdetgGmMr   gGcdf2rdfmMexpm_frechetmMepinvsignmfractional_matrix_power
khatri_raologmorthogonal_procrustessolve_circulantsolve_continuous_lyapunovM)solve_discrete_lyapunovsolve_lyapunovsolve_sylvestersolve_discrete_arematmul_toeplitzsolve_toeplitz
cho_factor	cho_solvecho_solve_bandedcholeskycholesky_bandedcossindiagsvd
eig_bandedeigheigvals_bandedeigvalshfunm
hessenbergldl	lu_factorlu_solvematrix_balance
null_spaceordqzorthpinvhpolarqrqr_multiplyqzrqschursolve_bandedr@   solve_triangularsolveh_bandedsubspace_angles)r2   r&   solvera   lstsqr9   rc   r]   rW   r;   r<   r?   r=   r@   r4   rC   rD   rT   r'   r)   rb   r`   rb   r\   rA   r%   rB   )r   r   r8   c                 z   | dk(  r|d   d   |d   f}|S | dk(  r
|d   d f}|S | dk(  r2|d   }t        j                  |j                  d         }||f|d   f}|S | dv r|\  }}||dddd	f   f}|S | d
k(  r,|d   }||j                  d   dz  |j                  d   dz  f}|S | dk(  rddlm} d |dd|d         |d   f}|S | dk(  r*ddlm}  |dd|d         dddd	f   |d   ddd	f   f}|S | dk(  rddlm}  |dd|d         dddd	f   f}|S | dk(  r|d   d   }|t        j
                  |      f}|S )z<Make sure func(*args) does not raise because *args is wrong.r2   r      rP   c                     | S )N )xs    c/opt/rentech/trading_bot/.venv/lib/python3.12/site-packages/scipy/linalg/tests/test_deprecations.py<lambda>z_patch_args.<locals>.<lambda>   s    1     rT   )r'   r)   NrJ      r`   )
_to_banded)rg   ro   rb   rI   rD   )nparangeshapescipy.linalg._basicrp   	ones_like)	func_nameargsapivderp   cs           rk   _patch_argsr}      s   IQ
DG$2 K1 
f	Q%. K- 
j	 Gii
#C$q'"& K% 
B	B11QV9~  K 
h	G1771:q=!''!*a-0 K 
n	$2
1aa147; K 
o	%21aa)!SbS&1471crc6?C K 
'	'21aa)!SbS&13 K 
&	&GAJ2<<?#Krm   T)np_onlyzCignore:attempting to conjugate non-numeric dtype:DeprecationWarningz1ignore:overflow encountered in dot:RuntimeWarningz6ignore:invalid value encountered in dot:RuntimeWarningz3ignore:logm result may be inaccurate:RuntimeWarningz6ignore:overflow encountered in multiply:RuntimeWarningrv   tcodeemMgGc                    t         |    }|t        j                  | d      v ry t        j                  d      j                  dd      dt        j                  d      z  z   }|j                  |z  }|j                  |      }| t        v r|j                         }||f}nm| t        v r|||f}n_| t        v r||||f}nP| t        v r||j                  d   f}n6| t        v r ||j                  d   |j                  d   f}n| dv r|df|f}n|f}t!        | |      }t#        j$                  t&              5   ||  d d d        y # 1 sw Y   y xY w)	N          r   rg   )rF   rG   T)_objs
_skip_dictgetrq   rr   reshapeeyeTastype_two_arg_namescopy_three_arg_names_four_arg_names_arr_and_int_namesrs   _arr_and_two_int_namesr}   pytestwarnsDeprecationWarning)rv   r   funcrx   brw   s         rk   test_deprecationsr      s?    D
y"--
		"a#aq	k1A	aA	AN"FFH1v	&	&1ay	o	%1a|	(	(1771:	,	,1771:qwwqz*	7	7D	1~ty$'D	(	) d  s   0D??E) __doc__numpyrq   scipy.linalglinalgr   scipy._lib._array_apir   _skip_namesr   _array_api_skip_dictitemskeyval__all___namesgetattrr   callablesetr   r   r   r   r   r}   markskip_xp_backendsfilterwarningsparametrizekeysr   )nameobjs   00rk   <module>r      s      1. C
 6 6  
6 D  Z D  T!" 
#$ 4%& Z'( j)* +,  -.  *9
B$4$$$ $ 	$
 $ t$ $ 4$ T$ $ t$ $ T$ T$ 4$  
D!$" $#$$ %$& t'$( 4)$* d+$, T-$. d/$0 d1$2 	43$4 D5$6 	47$8 	49$: d;$< T=$>  $?$@ tA$B C$D dE$F G$ N (..0 "S*sOs"O!JsO	" 
	; 
wvt$	$ 	 $);;=BxtCHSMsB    )*+ -/CDE    i23 > d+I OPTUQRTUejjl3,/ 0 4 V S V Q ,M	 	Cs   J3JJ