U
    ZÊ¹j¢	  ã                   @   s,   d dl T dd„ Zdd„ Zdd„ Zdd	„ Zd
S )é    )Ú*c                   C   sf  dt _ttddd� tdƒ¡s"t‚ttdƒ tdƒ ¡s<t‚ttdƒdksNt‚ttddd	�dksdt‚ttdd
d	�d
kszt‚tt	dƒ t
¡sŽt‚tt	ddd� t
¡s¦t‚tt	dddt d� t
d ¡sÈt‚tdd„ ddd� d¡sät‚tdd„ dddd� d¡�st‚tdd„ dddd� d¡�s$t‚ttƒdƒ tdƒ¡�s@t‚ttdd�dƒ tdƒ ¡�sbt‚d S )Né   g       @r   )Úné   g      ð?é   g        )Ú	directionéÿÿÿÿé   é   )r   r   c                 S   s   | d S )Nr   © ©Úxr   r   úU/var/www/html/bwave/python/venv/lib/python3.8/site-packages/mpmath/tests/test_diff.pyÚ<lambda>   ó    ztest_diff.<locals>.<lambda>g      @Úquad©Úmethodé   c                 S   s   d| d  S ©Nr
   r	   r   r   r   r   r   r      r   )r   r   i  c                 S   s   d| d  S r   r   r   r   r   r   r      r   Ústep)ÚmpÚdpsÚdiffÚlogÚaeÚAssertionErrorÚcosÚsinÚabsÚexpÚeÚjZdiffunr   r   r   r   Ú	test_diff   s    "  r#   c                   C   sž   dt _dd„ ttddƒD ƒddgks(t‚dd„ ttdddd�D ƒddgksNt‚d	d„ ttdd
ƒD ƒdddgksrt‚dd„ ttdd
dd�D ƒdddgksšt‚d S )Nr   c                 S   s   g | ]}t |ƒ‘qS r   ©Zchop©Ú.0Údr   r   r   Ú
<listcomp>   s     ztest_diffs.<locals>.<listcomp>r   r   c                 S   s   g | ]}t |ƒ‘qS r   r$   r%   r   r   r   r(      s     r   r   c                 S   s   g | ]}t |ƒ‘qS r   r$   r%   r   r   r   r(      s     r   c                 S   s   g | ]}t |ƒ‘qS r   r$   r%   r   r   r   r(      s     )r   r   Zdiffsr   r   r   r   r   r   Ú
test_diffs   s
    "&$r)   c                   C   s(   dt _ttddƒdddddgks$t‚d S )Nr   r   é   g      à?g      À¿g      °?g      ¤¿)r   r   ZtaylorÚsqrtr   r   r   r   r   Útest_taylor   s    r,   c                  C   s”  dt _d \} }}}dd„ }t||dƒ d¡s2t‚t||dƒ d¡sHt‚t||d	ƒ d
¡s^t‚t||dƒ d¡stt‚t||dƒ d¡sŠt‚t||dƒ d¡s t‚t||dƒ d¡s¶t‚t||dƒ d¡sÌt‚t||dƒ d¡sât‚t||dƒ d¡søt‚t||dƒ d¡�st‚t||dƒ d
¡�s(t‚t||dƒ d¡�s@t‚t||dƒ d¡�sXt‚t||dƒ d¡�spt‚t||dƒ d¡�sˆt‚t||dƒ d¡�s t‚t||dƒ d¡�s¸t‚t||d ƒ d!¡�sÐt‚t||d"ƒ d#¡�sèt‚t||d$ƒ d%¡�s t‚t||d&ƒ d'¡�st‚t||d(ƒ d)¡�s0t‚t||d*ƒ d+¡�sHt‚t||d,ƒ d-¡�s`t‚t||d.ƒ d/¡�sxt‚t||d0ƒ d1¡�s�t‚d S )2Nr   )r   r
   é   c                 S   s    d| d  |d d  |d  S )Nr
   r   r	   r   )r   ÚyÚzr   r   r   r   "   r   z#test_diff_partial.<locals>.<lambda>)r   r   r   i„®€)r   r   r   iÌÅ)r   r   r   iP� )r   r   r   iÏæ )r   r   r   iÝ¤ )r   r   r   i05^ )r   r   r   iØR\ )r   r   r   iòA )r   r   r   ià®% )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   iBWÀ )r   r   r   iæb‰ )r   r   r   i¨�N )r   r   r   iŽgs )r   r   r   iŠnR )r   r   r   i˜/ )r   r   r   il). )r   r   r   iù  )r   r   r   ip× )r   r   r   r   r   )r   r.   r/   ZxyzÚfr   r   r   Útest_diff_partial   s<    r1   N)Zmpmathr#   r)   r,   r1   r   r   r   r   Ú<module>   s   