U
    »mœdvo  ã                Î   @   sè  d dl Z d dlZd dlmZ d dlZd dlmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZW d dlXmYZY d dlZm[Z[ e \e j] ^e j] _e`¡dd¡¡Zae \e j] ^e j] _e`¡dd¡¡Zbe \e j] ^e j] _e`¡dd	¡¡Zcd
d„ Zddd„ Zedd„ Zfdd„ Zgdd„ Zhdd„ Zidd„ Zjdd„ Zkdd„ Zldd„ Zmdd„ Zndd „ Zod!d"„ Zpd#d$„ Zqd%d&„ Zrd'd(„ Zsd)d*„ Ztd+d,„ Zud-d.„ Zvd/d0„ Zwd1d2„ Zxd3d4„ Zyd5d6„ Zzd7d8„ Z{d9d:„ Z|d;d<„ Z}d=d>„ Z~d?d@„ ZdAdB„ Z€dCdD„ Z�dEdF„ Z‚dGdH„ ZƒdIdJ„ Z„dKdL„ Z…dMdN„ Z†dOdP„ Z‡dQdR„ ZˆdSdT„ Z‰dUdV„ ZŠdWdX„ Z‹dYdZ„ ZŒd[d\„ Z�d]d^„ ZŽd_d`„ Z�dadb„ Z�dcdd„ Z‘dedf„ Z’edemdgdhdidjdk�edendldmdndjdk�edendodmdndpdk�edeqdldmdndqdrds�edeqdodmdndpdrds�edeodldmdndqdrds�edeododmdndtdrds�edeydldmdndudk�edeydodmdndvdk�edezdldmdndwdk�edezdodmdndvdk�edepdldmdidwdrds�edepdodmdidxdrds�ederdldmdidwdrds�ederdodmdidxdrds�ede(dydmdndzdk�ede(dydmdndzdk�ede(d{dmdnd|dk�ede)d}dhd~ddk�ede)d€dhd~d|dk�ede)d�dhd~dwdk�ede)d‚dhd~dƒdk�ede*d„dhdid…dk�ede?d}dhd~ddk�ede?d€dhd~d†dk�ede?d�dhd~dwdk�ede?d‚dhd~dƒdk�ede@d„dhdid…dk�ede�d„dhd‡dˆdk�edeAd‰dŠdid‹dk�ede‚d‰dŠd‡d‹dk�edeBd‰dŒd~d‹dk�edeƒd‰dŒd�d‹dk�ededŽdmdndzdk�eded�dmdnd|dk�ede>d�dŠdid‹dk�ede€d�dŠd‡d‹dk�edeHd‘dŠdid’dk�edeŠd‘dŠd‡d’dk�edeId“d”dnd•dk�ede‹d“d”did’dk�eded–d—d ƒede'd˜d d—ƒede'd˜d™d—ƒede'dšd d—dvdk�ede'dšd™d—dzdk�ede'd›d d—dœdk�ede'd›d™d—dœdk�ede'd�d d—dœdk�ede'd�d™d—dždk�edegdŸd d—ƒedehd dmdndždk�edeid¡d d—ƒedejd¢dmdndždk�ede7d£d d—ƒede7d£d™d—dzdk�ede8d£d dnddk�ede7d¤d d—ƒede7d¤d™d—ƒede8d¤d dnd¥dk�ede7d¦d d—ƒede7d¦d™d—dzdk�ede8d¦d dnƒede9d§d d—ƒede:d¨d d—ƒede:d©d d—dªd«„ d¬�ede;d­d—dndzdk�ede;d­d®dnd‹dk�ede<d¯d d—dzdk�ede<d°d d—dzdk�ede<d±d d—ƒede=d²dmdnƒede=d³dmdndždk�ede!d´d d—ƒede!dµd d—ƒede!d¶d d—ƒede!d·d d—ƒede!d¸d d—d¹dk�ede!dºd d—d¥dk�ede!d´d™d—d»dk�ede!dµd™d—d»dk�ede!d¶d™d—d»dk�ede!d·d™d—d»dk�ede!d¸d™d—d»dk�ede!dºd™d—dvdk�ede"d´d dnd¼dk�ede"dµd dnd¼dk�ede"d¶d dnd½dk�ede"d·d dnd¼dk�ede"d¸d dnd¼dk�ede"dºd dnƒede#d¾dmd~d¿dk�ede#dÀdmd~dvdk�ede#dÁdmd~dvdk�ede#dÂdmd~dÃdk�ede„d¾dmd~dzdk�ede„dÀdmd~dvdk�ede„dÁdmd~dvdk�ede„dÂdmd~d»dk�ede$d¾dmdidzdk�ede$dÀdmdidvdk�ede$dÁdmdid¥dk�ede$dÂdmdidjdk�ede…d¾dmdidzdk�ede…dÀdmdidvdk�ede…dÁdmdid¥dk�ede…dÂdmdidjdk�edeˆdÄd”dnd‹dk�ede‰dÄd”did‹dk�edeŒdÅdmdndvdk�edeŒdÆdmdnƒedeŒdÇdmdnƒede�dÅdmdidvdk�ede�dÆdmdiƒede�dÇdmdiƒede{dÈdmdndwdk�ede|dÉdmdnd¹dk�ede}dÉdmdndÊdË�ede~dÌdhdidvdk�ededÌdhdidÊdË�ededÍd d—ƒededÍd dnƒededÎdmdndÃdk�ededÎdÏdnd½dÐdÑ�ededÒdmdndÓdk�ededÒdÏdnd½dk�ededÔdmdndÕdk�ededÔdÏdndÕdÖdÑ�eded×dmdndÃdk�eded×dÏdndÃdk�ededØdmdndÙdk�ededØdÏdndÙdk�eded×dmdndÃdk�eded×dÏdndÃdk�ededÚdmdndÃdk�ededÚdÏdndÃdk�ededÛdmdndzdk�ededÛdÏdndzdk�ededÜdmdndjdk�ededÜdÏdndjdk�ededÝdmdndÃdk�ededÝdmdndÃdk�ededÝdÏdndÃdk�ededÞdmdndÃdk�ededÞdÏdndÃdk�ede dßdmdndàdk�ede dßdÏdndàdk�ede dádmdndâdk�ede dádÏdndâdk�ededãdmdndÃdk�ededädmdndÃdk�ededädmdndÃdk�ededädÏdndÃdk�ededådmdndædk�ededådÏdndædk�ededçdmdnd’dk�ededçdÏdnd’dk�edeldèd d—déd«„ d¬�edeldêd d—dëd«„ d¬�edeldìd d—díd«„ d¬�edeldîd d—dïd«„ d¬�ede%dðdmdndjdk�ede%dñdmdndždk�ede%dòdmdndjdk�ede&dðdmdidÃdk�ede&dñdmdidždk�ede&dòdmdidždk�ede†dðdmdndtdódô�ede†dñdmdndõdk�ede†dòdmdnƒede‡dðdmdndödË�ede‡dñdmdiddk�ede‡dòdmdiƒedeCd÷dŠdidødk�edeCdùdŠdidúdûdô�ede�düdýdþd¼dÿd«„ �d d«„ �dd«„ �dd«„ f�d�edeŽ�ddmdndzdk�ede��ddmdn�ddk�edeJ�ddmdndqdk�edeJ�ddmdn�d	dk�ede2�d
dmdn�ddk�ede3�ddhdi�ddk�ede3�ddhdi�ddk�ede3�ddhdi�ddk�ede3�ddhdi�ddk�ede3�ddhdi�ddk�ede3�ddhdi�ddk�ede4�ddhdi�ddk�ede4�ddhdi�ddk�ede4�ddhdi�ddk�ede4�ddhdi�ddk�ede4�ddhdi�ddk�ede5�ddhdi�ddk�ede5�ddhdi�ddk�ede5�ddhdi�ddk�ede5�ddhdi�ddk�ede5�ddhdi�ddk�ede6�d �d!d‡�d�d"�d#d«„ f�d$�gÆZ“ej”j•�d%e“e–�d&��d'�d(„ ƒZ—eeeK�d)dmdndzdzdÑ�eeeL�d)dmdidzdzdÑ�eees�d*dhdi�d+dzdÑ�eeet�d*dhd‡�d+dzdÑ�eeeu�d,dhdi�d+dzdÑ�eeev�d,dhd‡�d+dzdÑ�eeew�d,dhd~�d+dzdÑ�eeex�d,dhd��d+dzdÑ�gZ˜ej”j•�d%e˜e–�d&��d-�d.„ ƒZ™efe0�d/dmdnƒefe/�d0d d—ƒefe-�d1dmdnƒefe’�d2dm�d3dždk�efe‘�d2dmdþdždk�efe#�d4dmdndÃdk�efe$�d5dmdndjdk�efeT�d6�d7d�dædzdÑ�efeS�d6�d7d~dædzdÑ�efeW�d8dhdidjdk�g
Zšej”j•�d%eše–�d&��d9�d:„ ƒZ›ejœf�d;�d<„Z�dS (=  é    N)Úsuppress_warnings)QÚlpnÚlpmnÚlpmvÚlqnÚlqmnÚsph_harmÚeval_legendreÚeval_hermiteÚeval_laguerreÚeval_genlaguerreÚbinomÚcbrtÚexpm1Úlog1pÚzetaÚjnÚjvÚjvpÚynÚyvÚyvpÚivÚivpÚknÚkvÚkvpÚgammaÚgammalnÚgammaincÚ	gammainccÚgammaincinvÚgammainccinvÚdigammaÚbetaÚbetaincÚ
betaincinvÚpochÚellipeÚ	ellipeincÚellipkÚellipkm1Ú	ellipkincÚellipjÚelliprcÚelliprdÚelliprfÚelliprgÚelliprjÚerfÚerfcÚerfinvÚerfcinvÚexp1ÚexpiÚexpnÚbdtrikÚbtdtrÚbtdtriÚbtdtriaÚbtdtribÚchndtrÚgdtrÚgdtrcÚgdtrixÚgdtribÚnbdtrikÚpdtrikÚowens_tÚ	mathieu_aÚ	mathieu_bÚmathieu_cemÚmathieu_semÚmathieu_modcem1Úmathieu_modsem1Úmathieu_modcem2Úmathieu_modsem2Ú
ellip_harmÚellip_harm_2Úspherical_jnÚspherical_ynÚwright_bessel)ÚIntegrationWarning)ÚFuncDataÚdataz	boost.npzzgsl.npzz	local.npzc                 O   s"   |  d|¡ t| t| f|ž|ŽS ©NÚdataname)Ú
setdefaultrU   ÚDATASETS_BOOST©ÚfuncrX   ÚaÚkw© r_   úV/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/scipy/special/tests/test_data.pyrV   $   s    c                 O   s"   |  d|¡ t| t| f|ž|ŽS rW   )rY   rU   ÚDATASETS_GSLr[   r_   r_   r`   Údata_gsl)   s    rb   c                 O   s"   |  d|¡ t| t| f|ž|ŽS rW   )rY   rU   ÚDATASETS_LOCALr[   r_   r_   r`   Ú
data_local.   s    rd   c                 C   s   t | |  ƒS ©N)r*   ©Úkr_   r_   r`   Úellipk_3   s    rh   c                 C   s   t | || ƒS re   )r,   ©Úfrg   r_   r_   r`   Ú
ellipkinc_7   s    rk   c                 C   s   t | |  ƒS re   )r(   rf   r_   r_   r`   Úellipe_;   s    rl   c                 C   s   t | || ƒS re   )r)   ri   r_   r_   r`   Ú
ellipeinc_?   s    rm   c                 C   s   t | |  ƒS re   )r-   rf   r_   r_   r`   Úellipj_C   s    rn   c                 C   s
   t | dƒS ©Nç      ð?)r   )Úxr_   r_   r`   Úzeta_G   s    rr   c                 C   s   t ||  t¡|ƒS re   )r   ÚastypeÚint)ÚnuÚmurq   r_   r_   r`   Úassoc_legendre_p_boost_K   s    rw   c                 C   s   t d| |ƒS ©Nr   )r   )ru   rq   r_   r_   r`   Úlegendre_p_via_assoc_O   s    ry   c                 C   s   t |  d¡|ƒd d S ©NÚlr   éÿÿÿÿ)r   rs   ©Únrq   r_   r_   r`   Úlpn_R   s    r   c                 C   s   t |  d¡|ƒd d S rz   )r   rs   r}   r_   r_   r`   Úlqn_U   s    r€   c                 C   s   t d| |ƒd d S ©Nr   )r   r|   )r   r}   r_   r_   r`   Úlegendre_p_via_lpmnX   s    r‚   c                 C   s   t d| |ƒd d S r�   )r   r}   r_   r_   r`   Úlegendre_q_via_lqmn[   s    rƒ   c                 C   s   t | ||d tj ƒd S ©Né´   r   )rI   ÚnpÚpi©ÚmÚqrq   r_   r_   r`   Úmathieu_ce_rad^   s    r‹   c                 C   s   t | ||d tj ƒd S r„   )rJ   r†   r‡   rˆ   r_   r_   r`   Úmathieu_se_radb   s    rŒ   c                 C   s    t | ||ƒd t tjd ¡ S ©Nr   é   )rK   r†   Úsqrtr‡   rˆ   r_   r_   r`   Úmathieu_mc1_scaledf   s    r�   c                 C   s    t | ||ƒd t tjd ¡ S r�   )rL   r†   r�   r‡   rˆ   r_   r_   r`   Úmathieu_ms1_scaledl   s    r‘   c                 C   s    t | ||ƒd t tjd ¡ S r�   )rM   r†   r�   r‡   rˆ   r_   r_   r`   Úmathieu_mc2_scaledp   s    r’   c                 C   s    t | ||ƒd t tjd ¡ S r�   )rN   r†   r�   r‡   rˆ   r_   r_   r`   Úmathieu_ms2_scaledt   s    r“   c                 C   s   t |  d¡|ƒS ©Nr{   ©r	   rs   r}   r_   r_   r`   Úeval_legendre_ldw   s    r–   c                 C   s   t |  d¡|ƒS ©NÚdr•   r}   r_   r_   r`   Úeval_legendre_ddz   s    r™   c                 C   s   t |  d¡|ƒS r”   )r
   rs   r}   r_   r_   r`   Úeval_hermite_ld}   s    rš   c                 C   s   t |  d¡|ƒS r”   ©r   rs   r}   r_   r_   r`   Úeval_laguerre_ld€   s    rœ   c                 C   s   t |  d¡|ƒS r—   r›   r}   r_   r_   r`   Úeval_laguerre_ddƒ   s    r�   c                 C   s   t |  d¡||ƒS r”   ©r   rs   ©r~   r]   rq   r_   r_   r`   Úeval_genlaguerre_ldd†   s    r    c                 C   s   t |  d¡||ƒS r—   rž   rŸ   r_   r_   r`   Úeval_genlaguerre_ddd‰   s    r¡   c                 C   s   t d|  ||ƒS ©Né   )r:   ©Úyr~   Úpr_   r_   r`   Úbdtrik_compŒ   s    r§   c                 C   s   t | |d| ƒS r¢   )r<   )r]   Úbr¦   r_   r_   r`   Úbtdtri_comp�   s    r©   c                 C   s   t d|  ||ƒS r¢   )r=   )r¦   r¨   rq   r_   r_   r`   Úbtdtria_comp’   s    rª   c                 C   s   t | d| |ƒS r¢   )r>   )r]   r¦   rq   r_   r_   r`   Úbtdtrib_comp•   s    r«   c                 C   s   t d| |ƒS ro   )r@   ©r¦   rq   r_   r_   r`   Úgdtr_˜   s    r­   c                 C   s   t d| |ƒS ro   )rA   r¬   r_   r_   r`   Úgdtrc_›   s    r®   c                 C   s   t d| |ƒS ro   ©rB   ©r¨   r¦   r_   r_   r`   Úgdtrix_ž   s    r±   c                 C   s   t d| d| ƒS ©Nrp   r£   r¯   r°   r_   r_   r`   Úgdtrix_comp¡   s    r³   c                 C   s   t d| |ƒS ro   ©rC   r¬   r_   r_   r`   Úgdtrib_¤   s    rµ   c                 C   s   t dd|  |ƒS r²   r´   r¬   r_   r_   r`   Úgdtrib_comp§   s    r¶   c                 C   s   t d|  ||ƒS r¢   )rD   r¤   r_   r_   r`   Únbdtrik_compª   s    r·   c                 C   s   t d|  |ƒS r¢   )rE   )r¦   r‰   r_   r_   r`   Úpdtrik_comp­   s    r¸   c                 C   s   dt | |ƒ S ro   ©r'   ©Úzr‰   r_   r_   r`   Úpoch_°   s    r¼   c                 C   s   dt | | ƒ S ro   r¹   rº   r_   r_   r`   Ú
poch_minus³   s    r½   c                 C   s   t |  d¡|ƒS r”   )rQ   rs   r}   r_   r_   r`   Úspherical_jn_¶   s    r¾   c                 C   s   t |  d¡|ƒS r”   )rR   rs   r}   r_   r_   r`   Úspherical_yn_¹   s    r¿   c                 C   s   t | |||ƒ}|j|jfS re   )r   ÚrealÚimag)r‰   r~   ÚthetaÚphir¥   r_   r_   r`   Ú	sph_harm_¼   s    rÄ   c                 C   s   t | d|  ƒ}|j|jfS ©Nù              ð?)r   rÀ   rÁ   ©rq   r¥   r»   r_   r_   r`   Úcexpm1À   s    rÈ   c                 C   s   t | d|  ƒ}|j|jfS rÅ   )r   rÀ   rÁ   rÇ   r_   r_   r`   Úclog1pÄ   s    rÉ   z%assoc_legendre_p_ipp-assoc_legendre_p)r   r£   rŽ   é   g•dyáý¥=)Úrtolzlegendre_p_ipp-legendre_p)r   r£   rŽ   z%legendre_p_large_ipp-legendre_p_largeg [n‡;=g‚vIhÂ%,=F)rË   Z
vectorizedgá7ÎQU=g´àø¤tã0=g‚vIhÂ%L=g›+¡†›„=gê-�™—�=zbeta_exp_data_ipp-beta_exp_datag‚vIhÂ%<=zbeta_med_data_ipp-beta_med_datagê-�™—a=z%ibeta_small_data_ipp-ibeta_small_dataé   g [n‡û<zibeta_data_ipp-ibeta_dataz!ibeta_int_data_ipp-ibeta_int_dataz%ibeta_large_data_ipp-ibeta_large_datag»½×Ùß|û=z!ibeta_inv_data_ipp-ibeta_inv_datagñhãˆµøä>g‚vIhÂ%\=é   gH¯¼šò×ª>z#ibeta_inva_data_ipp-ibeta_inva_data)rŽ   r   r£   g:Œ0âŽy5>)r   rŽ   r£   é   zbinomial_data_ipp-binomial_dataz+binomial_large_data_ipp-binomial_large_dataz,binomial_quantile_ipp-binomial_quantile_dataz>negative_binomial_quantile_ipp-negative_binomial_quantile_datag•Ö&è.1>z*poisson_quantile_ipp-poisson_quantile_data)r£   r   gßA:ÜÅ)>zcbrt_data_ipp-cbrt_datar£   zdigamma_data_ipp-digamma_datay                z%digamma_neg_data_ipp-digamma_neg_dataz'digamma_root_data_ipp-digamma_root_datagVçž¯Ò<z)digamma_small_data_ipp-digamma_small_datag›+¡†›„=zellint_k_data_ipp-ellint_k_datazellint_f_data_ipp-ellint_f_datazellint_e_data_ipp-ellint_e_dataz!ellint_e2_data_ipp-ellint_e2_datazerf_data_ipp-erf_dataz!erf_large_data_ipp-erf_large_datag›+¡†›„&=z!erf_small_data_ipp-erf_small_datazerf_inv_data_ipp-erf_inv_datazerfc_inv_data_ipp-erfc_inv_dataz'erfc_inv_big_data_ipp-erfc_inv_big_datac                 C   s   | dkS rx   r_   ©Úsr_   r_   r`   Ú<lambda>  ó    rÑ   )Úparam_filterzexpint_1_data_ipp-expint_1_datarÆ   zexpinti_data_ipp-expinti_dataz+expinti_data_double_ipp-expinti_data_doublez'expinti_data_long_ipp-expinti_data_longz'expint_small_data_ipp-expint_small_datazexpint_data_ipp-expint_dataztest_gamma_data_ipp-near_0ztest_gamma_data_ipp-near_1ztest_gamma_data_ipp-near_2ztest_gamma_data_ipp-near_m10ztest_gamma_data_ipp-near_m55gžY¢LÉž=ztest_gamma_data_ipp-factorialsg•Ö&è.!>g»½×Ùß|Ë=g»½×Ùß|ë=z'igamma_small_data_ipp-igamma_small_datag›+¡†›„ö<z#igamma_med_data_ipp-igamma_med_dataz#igamma_int_data_ipp-igamma_int_dataz#igamma_big_data_ipp-igamma_big_datagê-�™—q=z%igamma_inva_data_ipp-igamma_inva_dataz3tgamma_delta_ratio_data_ipp-tgamma_delta_ratio_dataz1tgamma_delta_ratio_int_ipp-tgamma_delta_ratio_intz3tgamma_delta_ratio_int2_ipp-tgamma_delta_ratio_int2zhermite_ipp-hermitezlaguerre2_ipp-laguerre2zhyp2f1 insufficiently accurate.)Úknownfailurezlaguerre3_ipp-laguerre3z%log1p_expm1_data_ipp-log1p_expm1_datazbessel_i_data_ipp-bessel_i_data)r   rÆ   g‘÷P7žxf )rË   Úatolz'bessel_i_int_data_ipp-bessel_i_int_datag•Ö&è.>z3bessel_i_prime_int_data_ipp-bessel_i_prime_int_datag´àø¤tã@=gYóøÂn¥z'bessel_j_int_data_ipp-bessel_j_int_dataz+bessel_j_large_data_ipp-bessel_j_large_datagpé~Ð=zbessel_j_data_ipp-bessel_j_dataz3bessel_j_prime_int_data_ipp-bessel_j_prime_int_dataz7bessel_j_prime_large_data_ipp-bessel_j_prime_large_dataz'bessel_k_int_data_ipp-bessel_k_int_datazbessel_k_data_ipp-bessel_k_dataz3bessel_k_prime_int_data_ipp-bessel_k_prime_int_datag´àø¤tã =z+bessel_k_prime_data_ipp-bessel_k_prime_datag(Í´3=z#bessel_y01_data_ipp-bessel_y01_dataz!bessel_yn_data_ipp-bessel_yn_dataz!bessel_yv_data_ipp-bessel_yv_datag»½×Ùß|Û=z-bessel_yv_prime_data_ipp-bessel_yv_prime_datazzeta_data_ipp-zeta_datac                 C   s   | dkS r¢   r_   rÏ   r_   r_   r`   rÑ   ‘  rÒ   zzeta_neg_data_ipp-zeta_neg_datac                 C   s   | dkS r¢   r_   rÏ   r_   r_   r`   rÑ   ’  rÒ   z!zeta_1_up_data_ipp-zeta_1_up_datac                 C   s   | dkS r¢   r_   rÏ   r_   r_   r`   rÑ   “  rÒ   z'zeta_1_below_data_ipp-zeta_1_below_datac                 C   s   | dkS r¢   r_   rÏ   r_   r_   r`   rÑ   ”  rÒ   z-gamma_inv_small_data_ipp-gamma_inv_small_dataz!gamma_inv_data_ipp-gamma_inv_dataz)gamma_inv_big_data_ipp-gamma_inv_big_datazgdtrix unflow some points)rË   rÔ   g [n‡ë<zgdtrix bad some pointsznccs_ipp-nccsgiUMuÿ>znccs_big_ipp-nccs_biggü©ñÒMb@?zchndtr inaccurate some pointsz)spherical_harmonic_ipp-spherical_harmonic)r£   r   rÊ   rŽ   )rÍ   rÌ   c                 C   s   t  | jd¡S ©Nú?©r†   ZonesÚshape©r¦   r_   r_   r`   rÑ   ©  rÒ   c                 C   s   t  | jd¡S rÖ   rØ   rÚ   r_   r_   r`   rÑ   ª  rÒ   c                 C   s   t  | dt j k | dk¡S )NrŽ   r   ©r†   Úlogical_andr‡   rÚ   r_   r_   r`   rÑ   «  rÒ   c                 C   s   t  | t jk | dk¡S rx   rÛ   rÚ   r_   r_   r`   rÑ   ¬  rÒ   )rË   rÓ   z#sph_bessel_data_ipp-sph_bessel_dataz%sph_neumann_data_ipp-sph_neumann_datagVçž¯=zowens_t_ipp-owens_tz)owens_t_large_data_ipp-owens_t_large_datagê-�™—¡=z!ellint_rc_data_ipp-ellint_rc_datagVçž¯Â<z!ellint_rd_data_ipp-ellint_rd_datazellint_rd_0xy_ipp-ellint_rd_0xyzellint_rd_0yy_ipp-ellint_rd_0yyzellint_rd_xxx_ipp-ellint_rd_xxxzellint_rd_xxz_ipp-ellint_rd_xxzgéï_1kÇ<zellint_rd_xyy_ipp-ellint_rd_xyygMgâñžÅ<z!ellint_rf_data_ipp-ellint_rf_datazellint_rf_xxx_ipp-ellint_rf_xxxzellint_rf_xyy_ipp-ellint_rf_xyyzellint_rf_xy0_ipp-ellint_rf_xy0zellint_rf_0yy_ipp-ellint_rf_0yyzellint_rg_ipp-ellint_rgg¼‰Ø—²ÒÌ<zellint_rg_xxx_ipp-ellint_rg_xxxzellint_rg_xyy_ipp-ellint_rg_xyyg [n‡Ë<zellint_rg_xy0_ipp-ellint_rg_xy0zellint_rg_00x_ipp-ellint_rg_00xz!ellint_rj_data_ipp-ellint_rj_data)r   r£   rŽ   rÊ   gÙ}ÚõÐò¾:c                 C   s   | dkS )NgÙ}ÚõÐò®:r_   rÏ   r_   r_   r`   rÑ   ö  rÒ   )rË   rÕ   rÓ   Útest)Zidsc                 C   s   t | ƒ d S re   ©Ú_test_factory©rÝ   r_   r_   r`   Ú
test_boost7  s    rá   Z
mathieu_abZmathieu_ce_segH¯¼šò×z>Zmathieu_mc_msc                 C   s   t | ƒ d S re   rÞ   rà   r_   r_   r`   Útest_gslL  s    râ   Zellipkinc_neg_mr+   Zellipeinc_neg_mZlog1p_expm1_complex)rŽ   rÊ   r   r    Zellip)r   r£   rŽ   rÊ   rÍ   rS   c                 C   s   t | ƒ d S re   rÞ   rà   r_   r_   r`   Ú
test_local_  s    rã   c              
   C   sF   t ƒ �6}| td¡ tjdd�� | j|d� W 5 Q R X W 5 Q R X dS )z
Boost testz,The occurrence of roundoff error is detectedÚignore)Úall)ÚdtypeN)r   ÚfilterrT   r†   ZerrstateÚcheck)rÝ   ræ   Úsupr_   r_   r`   rß   d  s    rß   )žÚosÚnumpyr†   Znumpy.testingr   ZpytestZscipy.specialr   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!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   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scipy.integraterT   Zscipy.special._testutilsrU   ÚloadÚpathÚjoinÚdirnameÚ__file__rZ   ra   rc   rV   rb   rd   rh   rk   rl   rm   rn   rr   rw   ry   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¼   r½   r¾   r¿   rÄ   rÈ   rÉ   ZBOOST_TESTSÚmarkZparametrizeÚreprrá   Z	GSL_TESTSrâ   ZLOCAL_TESTSrã   Údoublerß   r_   r_   r_   r`   Ú<module>   s¨  ÿ M ÿ ÿ ÿýÿÿÿÿÿÿ	ÿÿÿÿÿÿÿÿÿÿÿÿ 
þ€ € Õ  pôö