σ
ξ&]\c           @` sο  d  d l  m Z m Z m Z 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 Wn e k
 rΝ e d  Z n Xy d  d l Z Wn e k
 rύ e d  Z n Xe j d   j d	 k  Z e	 e d
  d    Z e j j e	 e d
  e	 e d  e j j  d e d d  d       Z! e j j" e	 e d
  e	 e d  d      Z# e	 e d
  d    Z$ e j j" e	 e d
  d     Z% d S(   i    (   t   divisiont   print_functiont   absolute_importN(   t   MissingModulet   check_version(   t   Argt   IntArgt   mp_assert_allcloset   assert_mpmath_equal(   t	   compute_gt   compute_alphat	   compute_d(   t   gammainct	   gammaincct   sympyt   mpmathi   s   0.19c          C` s‘   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 g }  t t d  |   Wd  QXd  S(   Ni   i   i   i   i   iΚ  i;  i ψ% i' i `uicP I     i   (   t   mpt   workdpst   mpfR   R	   (   t   g(    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt   test_g   s
    ,"&s   0.7t	   conditiont   reasons   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  |   Wd  QXd  S(   Ni   i    i   i   i$   i  iΰ  irB  i   iS iX i	   (   R   R   R   R   R
   (   t   alpha(    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt
   test_alpha%   s
    81'c          C` s1  t  j d  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"  } g  } x, |  D]$ \ } } } | j | | |  qΰWt d#   |   } t | |  Wd  QXd  S($   Ni2   i    s    0.333333333333333333333333333333i   s#   0.102618097842403080425739573227e-7i   s#   0.185185185185185185185185185185e-2s#   0.119516285997781473243076536700e-7i   s#   0.413359788359788359788359788360e-2s#   0.140925299108675210532930244154e-7i   s#   0.649434156378600823045267489712e-3s#   0.191111684859736540606728140873e-7i   s#   0.861888290916711698604702719929e-3s#   0.288658297427087836297341274604e-7i   s#   0.336798553366358150308767592718e-3s#   0.482409670378941807563762631739e-7i   s#   0.531307936463992223165748542978e-3s#   0.882860074633048352505085243179e-7i   s#   0.344367606892377671254279625109e-3s#   0.175629733590604619378669693914e-6i   s#   0.652623918595309418922034919727e-3s#   0.377358774161109793380344937299e-6i	   s#   0.596761290192746250124390067179e-3s#   0.870823417786464116761231237189e-6i
   i   c         S` s   |  d S(   Ni   (    (   t   x(    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt   <lambda>W   s    (   R   R   R   R   t   appendt   mapR   (   t   datasett   dt   rest   kt   nt   std(    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt   test_d2   s6    c           C` sM   t  t d   t d d d t t d d  g d t d d d d	 d
 d	 d  S(   Nc         S` s   t  j |  d | d t S(   Nt   bt   regularized(   R   R   t   True(   t   aR   (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyR   a   s    i    id   t   inclusive_at   nan_okt   rtolgΤFFυg<R!   i2   t   dps(   R   R   R   t   False(    (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt   test_gammainc[   s    $c           C` s   t  d   d   t d d  t d d  g d t d d d d	 d
 d t  t d   t d d  t d d  g d t d d d d	 d
 d	 d  S(   Nc         S` s   t  |  | d d S(   NR+   iθ  (   R   (   R'   R   (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyR   k   s    c         S` s   t  j |  d | d t S(   NR'   R%   (   R   R   R&   (   R'   R   (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyR   l   s    i   id   R)   R*   gΤFFυg<R!   i2   R+   iθ  c         S` s   t  j |  d | d t S(   NR'   R%   (   R   R   R&   (   R'   R   (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyR   r   s    i   i    (   R   R   R,   R   R   (    (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt   test_gammainccf   s    	(&   t
   __future__R    R   R   t   numpyt   npt   pytestt   scipy.special._testutilsR   R   t   scipy.special._mptestutilsR   R   R   R   t&   scipy.special._precompute.gammainc_asyR	   R
   R   t'   scipy.special._precompute.gammainc_dataR   R   R   t   ImportErrorR   R   t   intpt   itemsizet   _is_32bit_platformR   t   markt   slowt   xfailR   t   xslowR#   R-   R.   (    (    (    sK   lib/python2.7/site-packages/scipy/special/tests/test_precompute_gammainc.pyt   <module>   s4   "
	-
	'	