
    g                     (   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 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 d d
lmZmZ d dlmZ d dl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&e!d             Z'd Z(d Z)d Z*d Z+d Z,dS )    )nfloat)FloatIRationalpi)Eq)Symbolsymbols)sqrt)	Piecewise)sin)Integral)Matrix)mnormmpf)nsolve)lambdify)raisesXFAIL)conserve_mpmath_dpsc                      t          d          } t          | dz  d| z
  z  dd| z  z
  dz  z  dz
  | d          }|dk    r|dk     sJ d S )Nx      d   r   gq=
ףp?gGz?r
   r   r   anss     \/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/solvers/tests/test_numeric.pytest_nsolve_failr       s[    A Aq1uq1Q3wl*S0!Q
7
7C::#******    c                  x    t          d          } t          | dz  d| z  z   dz   | dz   z  d          }|dk    sJ d S )Nr   r      g g      r   r   s     r   test_nsolve_denominatorr$      sF    A
!Q$1*q.1q5)4
0
0C$;;;;;;r!   c                    	
 t          d          
t          t          
          d          t          j                    z
  dk     sJ t          t          d
z  d          
d          t          d
z  dz
  d          k    sJ t          t          
fd           t          t          
fd           t          d          } t          d          }d	| dz  z  d|dz  z  z
  d
z
  }| dz  d| z  z
  |dz  z   d|z  z   dz
  }t          ||f          j	        	t          | |f	j	        d          dD ]0}t          	| |f|d          
t           
 d
          dk    sJ 1t          d          
t          d          t          d          
 dz  z   }
dz  
dz  dz
  z  z   dz  z
  
dz   z  }t          
dz  dz  z             z  }t          |||f          j	        	t          
f	j	        d          	
fd}t          t          t           |d                              g dk    sJ t          t          |d          t          |d          t          |d          g
gd          sJ t          d          }t!          t          d
d|z   d	z  z  dd|z
  d	z  z  z
  |d          t#          d          z
            dk     sJ d S )Nr   r   gV瞯<ic                  D    t          t          d z  d                    S )Nr   r   r   r   s   r   <lambda>ztest_nsolve.<locals>.<lambda>'   s    fR!QZZ00 r!   c                  J    t          t          d z  d           dd          S )Nr   r   r'   r(   s   r   r)   ztest_nsolve.<locals>.<lambda>(   s!    fR!QZZAq99 r!   x1x2r#   r      mpmath)modules))r   )r   )   r2   )r3   :0yE>)tolg|=yzr2   c                 b    t          f|           }t           | d          dk    sJ |S )Nr   r4   )r   r   )x0rootFfr   r6   r7   s     r   getrootztest_nsolve.<locals>.getroot>   s@    a!QB''QQXq!!U****r!   )r   r   r   )r   r   r   r   agMbP?   g?g333333?z0.31883011387318591)r	   r   r   r   evalfr   r   	TypeErrorr   Tr   r   r   listmaproundabsr   )r+   r,   f1f2r9   f3r=   r>   r;   r<   r   r6   r7   s           @@@@@r   test_nsolverJ   !   sY   sA#a&&!rxzz)E1111"QqS!**a%%!a)=)=====
90000111
99999:::	B	B	
RUQQY		"B	QR"a%	!b&	(1	,BBxA"b13111A2 ) )1r2h...QQUA&((((( 	sAsAsA
acB
Q$AqD1H
!
#A	.B	adQTk		1	BB|A!QAC222A         E779--..//999<<<<2
A 2q		2b!99&()1ay)= = = = =sAvaQ&C!Ga<7C@@!""# $ $&+, , , , , ,r!   c                      t          d          } t          t          | | dk     f| dz  df          | d          dk    sJ d S )Nr   r   r   T        )r	   r   r   r(   s    r   test_issue_6408rM   J   sJ    sA)QAJAt55q!<<CCCCCCr!   c                      t          d          \  } }t          t          | |z  | ddf          |d          dk    sJ d S )Nx yr      r   rL   )r
   r   r   r   r6   s     r   test_issue_6408_integralrR   O   sH    5>>DAq(1Q3Aq	**Aq11S888888r!   c                      dd l } d| j        _        t          d          }|dz  t          z
  }t          ||d          }t          t          t                                        d          |z
            dk     sJ d S )Nr      r   r         @睗[%)	r.   mpdpsr	   r   r   rF   r   r@   )r.   r   e1qs       r   test_increased_dpsr[   T   su     MMMFIMsA	
ABr1cAtBxx~~c""Q&''&000000r!   c                     t          d          \  } }t          | dz  t          z
  | dd          }t          t	          t                                        d          |z
            dk     sJ t          |t                    sJ t          |dz  | z
  | dz  t          z
  f| |fdd          }t          |t                    sJ |j	        dk    sJ t          t	          t                                        d          |d	         z
            dk     sJ t          t	          t	          t                                                  d          |d
         z
            dk     sJ t          d |D                       sJ d S )NrO   r   r#   rT   precrV   )r#   r#   )r   r   r   r   c              3   @   K   | ]}t          |t                    V  d S )N)
isinstancer   ).0is     r   	<genexpr>z(test_nsolve_precision.<locals>.<genexpr>j   s,      22z!U##222222r!   )r
   r   r   rF   r   r@   r`   r   r   shapeall)r   r6   solsolss       r   test_nsolve_precisionrh   _   sf   5>>DAq
AAqs
+
+
+CtBxx~~c""S())F2222c5!!!!!1a4!8QTBY'!QcBBBDdF#####:tBxx~~c""T!W,--6666tDHH~~##C((47233f<<<<22T2222222222r!   c                     t          d          \  } }t          | dz  dz   d          t          d          t          z  k    sJ t          | dz  dz   t                    t          d          t          z  k    sJ t          | dz  dz   |dz  dz   g| |gt          t          g          t	          t          d          t          z  t          d          t          z  g          k    sJ t          | dz  dz   |dz  dz   g| |gt          t          g          t	          t          d          t          z  t          d          t          z  g          k    sJ d S )NrO   r   y              ?       @)r
   r   r   r   r   rQ   s     r   test_nsolve_complexrk   l   s+   5>>DAq!Q$(B488A:----!Q$(A$r((1*,,,,1a4!8QTAX&AA776488A:tTVxxXYzBZ;[;[[[[[1a4!8QTAX&AA776488A:tTVxxXYzBZ;[;[[[[[[[r!   c                     t          d          \  } }t          | dz  dz
  dd          | t          d          igk    sJ t          | dz  dz   t          d          | t          d          t          z  igk    sJ t          | dz  |dz  z   dz
  | dz  |dz  z
  dz   g| |gddgd          | t          d          |t          d          igk    sJ d S )	NrO   r   r   T)dictrj   rP   rU   )r
   r   r   r   rQ   s     r   test_nsolve_dict_kwargrn   u   s   5>>DAq!Q$(Ad+++
T"XX    !Q$(Ad+++
T"XXaZ    1a4!Q$;?AqD1a4K!O4q!fq!fTRRR
T"XXq$r((	#$% % % % % %r!   c                      t          d          } t          | t          dd          z
  dd          t          dd                              d          k    sJ d S )Nr   r   r#   r   r   r]   )r
   r   r   r@   r(   s    r   test_nsolve_rationalrp      sV    A!hq!nn$ac222hq!nn6J6J36O6OOOOOOOr!   c                     t          t          d                    } t          ddg          }| |z   }t          || |          t          |           k    sJ t          |j        | j        |j                  t          |           k    sJ d S )Nzt s      )r   r
   r   r   rB   )r   r9   eqns      r   test_issue_14950ru      s    wu~~A	R		B
b&C#q",,,,#%bd##vrc{{222222r!   N)-sympy.core.functionr   sympy.core.numbersr   r   r   r   sympy.core.relationalr   sympy.core.symbolr	   r
   (sympy.functions.elementary.miscellaneousr   $sympy.functions.elementary.piecewiser   (sympy.functions.elementary.trigonometricr   sympy.integrals.integralsr   sympy.matrices.denser   r.   r   r   sympy.solversr   sympy.utilities.lambdifyr   sympy.testing.pytestr   r   sympy.utilities.decoratorr   r    r$   rJ   rM   rR   r[   rh   rk   rn   rp   ru    r!   r   <module>r      s   & & & & & & 7 7 7 7 7 7 7 7 7 7 7 7 $ $ $ $ $ $ / / / / / / / / 9 9 9 9 9 9 : : : : : : 8 8 8 8 8 8 . . . . . . ' ' ' ' ' '                     - - - - - - . . . . . . . . 9 9 9 9 9 9% % %  &, &, &,RD D D
9 9 9
 1 1 13 3 3\ \ \
% 
% 
%P P P
3 3 3 3 3r!   