
    sgZ                         d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZmZ d dlmZ d dlmZmZmZ d dlmZmZ d d	lmZ  ed
      Zd Zd Zd Zd Zd Zy)    )Sum)log)sqrt)lambdify)xiab)	logaddexp)CuPyPrinter_cupy_known_constants_cupy_known_functions)skipraises)import_modulecupyc                  x   t               } | j                  t        t        t                    dk(  sJ | j                  t        t                    dk(  sJ | j                  t        t                    dk(  sJ | j                  d      dk(  sJ | j                  d      dk(  sJ | j                  d      d	k(  sJ y )
Nzcupy.logaddexp(a, b)zcupy.sqrt(x)zcupy.log(x)zacos(x)zcupy.arccos(x)zexp(x)zcupy.exp(x)zAbs(x)zabs(x))r   doprintr   r	   r
   r   r   r   prntrs    Q/var/www/html/venv/lib/python3.12/site-packages/sympy/printing/tests/test_cupy.pytest_cupy_printr      s    ME==1a)-CCCC==a!^333==Q M111==#'7777=="m333=="h...    c                      t               } t        t              5  | j                  d       d d d        y # 1 sw Y   y xY w)Nzabcd(x))r   r   NotImplementedErrorr   r   s    r   test_not_cupy_printr      s3    ME	#	$ !i ! ! !s   5>c                     t         st        d       t        t        t        z  t        t
        t        f      } t        t
        t        t        f| d      }d\  }}t         j                  ddd      t         j                   |||      t        fdt        ||dz         D                    sJ t        t        t        z  t        t
        t        f      } t        t
        t        t        f| d      }d\  }}t         j                  ddd      t         j                   |||      t        fd	t        ||dz         D                    sJ y )
NzCuPy not installedr   )r   
      r   c              3   (   K   | ]	  }|z    y wN .0i_x_s     r   	<genexpr>z test_cupy_sum.<locals>.<genexpr>%   s     )Or"()O   numpyc              3   (   K   | ]	  }|z    y wr"   r#   r$   s     r   r(   z test_cupy_sum.<locals>.<genexpr>,   s     )Nb"r')Nr)   )cpr   r   r   r   r	   r
   r   linspaceallclosesumrange)sfa_b_r'   s       @r   test_cupy_sumr5      s    !"AFQ1IA!QAv&AFB	RR	 B;;qR}c)OU2rAv=N)O&OPPPAEAq!9A!QAw'AFB	RR	 B;;qR}c)NE"b1f<M)N&NOOOr   c                  t    t         d   dk(  sJ t         d   dk(  sJ t        d   dk(  sJ t        d   dk(  sJ y )	NNaNzcupy.nan
EulerGammazcupy.euler_gammaacoszcupy.arccosr   zcupy.log)r   r   r#   r   r   test_cupy_known_funcs_constsr:   .   sO     ':555 .2DDDD (M999 ':555r   c                  P    t               } t        | d      sJ t        | d      sJ y )N_print_acos
_print_log)r   hasattrr   s    r   test_cupy_print_methodsr?   5   s)    ME5-(((5,'''r   N)sympy.concrete.summationsr   &sympy.functions.elementary.exponentialr   (sympy.functions.elementary.miscellaneousr   sympy.utilities.lambdifyr   	sympy.abcr   r   r	   r
   sympy.codegen.numpy_nodesr   sympy.printing.numpyr   r   r   sympy.testing.pytestr   r   sympy.externalr   r,   r   r   r5   r:   r?   r#   r   r   <module>rI      sJ    ) 6 9 -     / Z Z - (6/!
P$6(r   