3
Od                 @   sF  d dl Zd dlZd dlmZmZ d dlmZmZm	Z	m
Z
 d dlmZmZmZ d dlmZmZ yd dlZW n ek
r   edZY nX yd dlZW n ek
r   edZY nX eedd	d
 Zejjeedeedejjddd Zejjeedeeddd Zeeddd Zejjeeddd ZdS )    N)MissingModulecheck_version)ArgIntArgmp_assert_allcloseassert_mpmath_equal)	compute_gcompute_alpha	compute_d)gammainc	gammainccsympympmathz0.19c              C   s   t jdl t jdt jdd t jdd t jd d t jd d t jd	d
 t jdd g} ttd|  W d Q R X d S )N         i      i  i;  i % i' i `uicP l     
F    )mpworkdpsmpfr   r   )g r   `/var/www/html/virt/lib64/python3.6/site-packages/scipy/special/tests/test_precompute_gammainc.pytest_g   s
     r   z0.7zrtol only 2e-11, see gh-6938c              C   s   t jd t jdt jdt jdd t jdd t jd d t jdd t jdd t jd	 d
 t jdd g	} ttd|  W d Q R X d S )Nr   r   r      $   i  i  irB  r   iS iX 	   )r   r   r   r   r	   )alphar   r   r   
test_alpha    s
    (&r   c                 s  t jdj ddt jd fddt jdfddt jd fddt jdfd	dt jd
fd	dt jd fddt jdfddt jd fddt jd fddt jdfddt jd fddt jdfddt jdfddt jd fddt jdfddt jd fddt jd fddt jdfddt jd fddt jd fg} td!d"  fd#d$| D }td%d& | }t|| W d Q R X d S )'N2   r   z 0.333333333333333333333333333333r   z#0.102618097842403080425739573227e-7r   z#0.185185185185185185185185185185e-2z#0.119516285997781473243076536700e-7   z#0.413359788359788359788359788360e-2z#0.140925299108675210532930244154e-7r   z#0.649434156378600823045267489712e-3z#0.191111684859736540606728140873e-7   z#0.861888290916711698604702719929e-3z#0.288658297427087836297341274604e-7   z#0.336798553366358150308767592718e-3z#0.482409670378941807563762631739e-7   z#0.531307936463992223165748542978e-3z#0.882860074633048352505085243179e-7r   z#0.344367606892377671254279625109e-3z#0.175629733590604619378669693914e-6   z#0.652623918595309418922034919727e-3z#0.377358774161109793380344937299e-6r   z#0.596761290192746250124390067179e-3z#0.870823417786464116761231237189e-6
      c                s   g | ]\}}} | | qS r   r   ).0knstd)dr   r   
<listcomp>O   s    ztest_d.<locals>.<listcomp>c             S   s   | d S )Nr!   r   )xr   r   r   <lambda>P   s    ztest_d.<locals>.<lambda>)r   r   r   r
   mapr   )Zdatasetresr+   r   )r,   r   test_d-   s2    
r2   c            	   C   s2   t tdd tddddtddgddddd	 d S )
Nc             S   s   t j| |ddS )NT)bregularized)r   r   )ar.   r   r   r   r/   Z   s    ztest_gammainc.<locals>.<lambda>r   d   F)Zinclusive_agFFg<r    )nan_okrtolr*   dps)r   r   r   r   r   r   r   test_gammaincT   s    r:   c            	   C   s\   t dd dd tddtddgdddd	d
 t tdd tddtddgddddd
 d S )Nc             S   s   t | |ddS )Ni  )r9   )r   )r5   r.   r   r   r   r/   d   s    z test_gammaincc.<locals>.<lambda>c             S   s   t j| |ddS )NT)r5   r4   )r   r   )r5   r.   r   r   r   r/   e   s       r6   FgFFg<r    i  )r7   r8   r*   r9   c             S   s   t j| |ddS )NT)r5   r4   )r   r   )r5   r.   r   r   r   r/   k   s    r   r   )r   r   r   r   r   r   r   r   test_gammaincc_   s    r<   )ZnumpynpZpytestZscipy.special._testutilsr   r   Zscipy.special._mptestutilsr   r   r   r   Z&scipy.special._precompute.gammainc_asyr   r	   r
   Z'scipy.special._precompute.gammainc_datar   r   r   ImportErrorr   r   r   markZslowZxfail_on_32bitr   Zxslowr2   r:   r<   r   r   r   r   <module>   s0   

%