
    g#                     R    d dl Z d dlT d Zd Zd Zd Zd Zd Zd	 Zd
 Z	d Z
d ZdS )    N)*c                      dt           _        d } t          | ddgdd          \  }}|dk     sJ t          d	          D ]9}d|d
z  z   }t	          t          ||           | |          z
            |k     sJ :d S )N   c                 2    t          dd| z  z
            | z  S )N   )cosxs    V/var/www/html/ai-engine/env/lib/python3.11/site-packages/mpmath/tests/test_calculus.py<lambda>z$test_approximation.<locals>.<lambda>   s    #a!e**Q,     r         T)errorgh㈵>
   g      @)mpdpschebyfitrangeabspolyval)fperrir
   s        r   test_approximationr      s    BFAa!Q$///FAs::::2YY / /"H71a==11Q44'((3...../ /r   c                      dt           _        t          d d                              t	          d          dz            sJ t          d t
                                        t                    sJ d S )Nr   c                 2    | t          |           z
  | dz  z  S )N   )sinr	   s    r   r   ztest_limits.<locals>.<lambda>   s    Ac!ffHad? r   r         c                     dd| z  z   | z  S Nr!    )ns    r   r   ztest_limits.<locals>.<lambda>   s    AacEA: r   )r   r   limitaempfinfer%   r   r   test_limitsr,      si    BF**A..11#a&&(;;;;;%%s++..q1111111r   c                      t          g d          dk    sJ t          dgd          dk    sJ t          dgd          dk    sJ g d} t          | d          dk    sJ t          | dd          d	k    sJ d S )
Nr   r      )r   r   r.   r      T)
derivative)r0      )r   r   s    r   test_polyvalr4      s    2q>>QA3??aA3??aA1Q<<31Q$''':555555r   c                     t          ddg          } | d                             d          sJ t          g d          \  } }|                     dt          d          t          z  z
            sJ |                    dt          d          t          z  z             sJ t          dg          g k    sJ t	          j        t          d            d S )	Nr!   r   r   )r!   r   r   r   c                  "    t          dg          S )Nr   )	polyrootsr%   r   r   r   z test_polyroots.<locals>.<lambda>#   s    inn r   )r9   r(   sqrtjpytestraises
ValueError)r   qs     r   test_polyrootsr@      s    1R&AQ4771::WWWDAq44T!WWQY44T!WWQYaS>>R
M*4455555r   c            
      n   d} g d}t                               d          5  t          j        t           j                  5  t          |ddd| dz             d d d            n# 1 swxY w Y   t          |d	dd| dz            }d
 |D             }|g dk    sJ 	 d d d            d S # 1 swxY w Y   d S )N@   Al	   #!yUMDQj~U4	 r   l`<	&&
 xXD`D r   l	   #~O6dIW6ob9r   l N$UVOF>`}Dr   l	   ha0r3(|Wo9Er   lcs9lMhPc;/,3 r   l
   p~	#]ls<m r   lW)4G`Y r   l
   <g?I"GX)p@/ r   lg24Kc89z r   l
    1_bm-9w:bYj r   l	@bmDu#pO2> r   l
   J={|L	m~;` r   l`|fl?'h_K r   l
   eo.!03a7# r   l / $+-kMsf]`:r   l	   ;bfLHQLRr   l /v\ QB8%r   l	   e]r+a ;M~DMLr   l`|]B`3*0Vwk_ r   l	   J5]c<OJg1 r   l	x,a6F~E8P r   l    V'6@h>)r   l~&-ME	A"r   l   <-AGn,a;0$S r   lW?n05%Zu r   l   pbz^.qr   lcd qTT r   l   h9N$$).lF4 r   l Ns,1j	r   l   #vsKn?b; r   l`<x!ur   l   #!Oer   r.   TFr   maxstepscleanupr   	extraprec2   c                 ,    g | ]}t          |          S r%   )str).0rs     r   
<listcomp>z+test_polyroots_legendre.<locals>.<listcomp>P   s    '''AQ'''r   )@-0.999-0.996-0.991-0.983-0.973-0.961-0.946-0.93-0.911-0.889-0.866-0.841-0.813-0.784-0.753-0.72-0.685-0.649-0.611-0.572-0.531-0.489-0.446-0.402-0.357-0.311-0.265-0.217-0.17-0.121-0.073-0.02430.02430.0730.1210.170.2170.265z0.3110.3570.4020.4460.4890.5310.5720.6110.6490.6850.720.7530.7840.8130.8410.8660.8890.9110.930.9460.9610.9730.9830.9910.9960.999)r   workdpsr<   r=   NoConvergencer9   )r&   coeffsrootss      r   test_polyroots_legendrer   %   s   
A     FD 
A B B]2+,, 	& 	&fq$e !"& & & &	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& &2t5d$ $ $'''''	B 	B 	B
B 
B 
B 
B 
BB B B B B B B B B B B B B B B B B Bs5   B* A$B*$A(	(B*+A(	,0B**B.1B.c            
         d} g d}t          g d          }t                              dt          j        z            5  t	          |dddd| z            }d d d            n# 1 swxY w Y   t          j        t          j                  5  t	          |d	dd|            d d d            n# 1 swxY w Y   t	          |d	dd| |
          \  }}t          t          |          t          |          	                    t                    z
            |k     sJ t	          |ddd| |d d         
          \  }}t          t          |          t          |          	                    t                    z
            |k     sJ d S )Nd   rC   )ArN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   z 0.311rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   z1.0r   rH   TFrD   r.   )rE   rF   r   rG   
roots_init   <   )matrixr   r   r   r9   r<   r=   r   maxapplyr   )
extra_precr   r   roots_exactr   r   roots1err1s           r   test_polyroots_legendre_initr   ]   s0   J     FD  K K K L LJ 
AbfH		 8 8T*+J,8 8 88 8 8 8 8 8 8 8 8 8 8 8 8 8 8 
r'	(	( ( (&1d%&	( 	( 	( 	(( ( ( ( ( ( ( ( ( ( ( ( ( ( ( &1d$$.*F F FIE#vk""6%==#6#6s#;#;;<<sBBBBFRT&0JssOM M MKF4vk""6&>>#7#7#<#<<==DDDDDDs#   A##A'*A'B--B14B1c                     t          d          } dt          _        d}| g}d}t          d|dz             D ]}||z  }|                    | |z              t          ||dz  |dz            \  }}t          ddd          D ]Z}t          |d d d         |          t          |d d d         |          z  }|                    t          |          d          sJ [d	t          _        d S )
Nr!      r   r   r   g?r7   g|=r   )
r)   r   r   r   appendpadearanger   r(   exp)	oneNakr   r   r?   r
   rL   s	            r   	test_pader      s    
a&&CBF
A	A	A1ac]]  	Q	Q1a4ADAqAq# & &AdddGQ$$B$ 3 33ttCFFG$$%%%%BFFFr   c                  v   dt           _        t          d ddgd          \  } }| d                             d          sJ | d                             dt	          d	          z  dt
          z  z            sJ | d                             d	t	          d	          z  d
t
          z  z            sJ |d         dk    sJ |d                             d	dt
          z  z            sJ |d                             d	d
t
          z  z            sJ t          | |fddgd                              d          sJ d S )Nr   c                     | dz   S r$   r%   r	   s    r   r   ztest_fourier.<locals>.<lambda>   s
    QqS r   r7   r   r   g      ?r!   r   r   g?)r   r   fourierr(   r:   pi
fourierval)css     r   test_fourierr      s*   BF==2q'1--DAqQ4773<<Q4772d1gg:qt$%%%%%Q4771T!WW9ad#$$$$$Q419999Q4771ad8Q4771ad8q!fr1gq)),,-?@@@@@@@r   c                      dt           _        t          d dd                              dt	          dt
          z            z  dz            sJ d S )Nr   c                     | S Nr%   ts    r   r   z test_differint.<locals>.<lambda>   s    q r   r   g      r   r   )r   r   	differintr(   r:   r   r%   r   r   test_differintr      sI    BF[[!T**--aQrT

l1n=======r   c                  ~   dt           _        d} d }d } ||           }t          || d                              |          sJ t          || d                              |          sJ t          || d                              |          sJ t          || d	                              |          sJ d
}  ||           }t          || d                              |          sJ t          || d                              |          sJ t          || d                              |          sJ t          || d	                              |          sJ d} d }d } ||           }t          || d                              |          sJ t          || d                              |          sJ t          || d                              |          sJ t          || d	                              |          sJ d
}  ||           }t          || d                              |          sJ t          || d                              |          sJ t          || d                              |          sJ t          || d	                              |          sJ d S )Nr   g{Gz?c                     d| dz   dz  z  S )Nr!   r   r%   r3   s    r   r   ztest_invlap.<locals>.<lambda>   s    1acAX: r   c                 (    | t          |            z  S r   )r   r   s    r   r   ztest_invlap.<locals>.<lambda>   s    1S!WW9 r   talbot)methodstehfestdehoogcoheng      ?c                 &    t          |           | z  S r   )logr3   s    r   r   ztest_invlap.<locals>.<lambda>   s    3q66!8 r   c                 2    t            t          |           z
  S r   )eulerr   r   s    r   r   ztest_invlap.<locals>.<lambda>   s    E6#a&&= r   )r   r   invertlaplacer(   )r   fpftftts       r   test_invlapr      s   BFA		B		B
"Q%%CAX...11#66666AZ00033C88888AX...11#66666AW---0055555A
"Q%%CAX...11#66666AZ00033C88888AX...11#66666AW---0055555A		B	 	 B
"Q%%CAX...11#66666AZ00033C88888AX...11#66666AW---0055555A
"Q%%CAX...11#66666AZ00033C88888AX...11#66666AW---005555555r   )r<   mpmathr   r,   r4   r@   r   r   r   r   r   r   r%   r   r   <module>r      s        / / /2 2 2
6 6 66 6 66B 6B 6Bp<E <E <E|  
A 
A 
A> > >6 6 6 6 6r   