U
    ZÊ¹jN†  ã                   @   s   d dl mZ d dlmZ d dlmZmZ d dlmZm	Z	m
Z
mZ d dlmZ d dlmZmZ d dlmZmZ d dlmZmZmZ d d	lmZmZ d d
lmZ d dlmZm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+ d dl,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl m7Z7m8Z8m9Z9m:Z:m;Z; d dl<m=Z>m?Z@mAZBmCZC d dlDmEZE d dlFmGZGmHZH d dlImJZJmKZKmLZLmMZM eCƒ ZNdd„ ZOdd„ ZPdd„ ZQdd„ ZRdd „ ZSd!d"„ ZTd#d$„ ZUd%d&„ ZVd'd(„ ZWd)d*„ ZXd+d,„ ZYd-d.„ ZZd/d0„ Z[eHd1d2„ ƒZ\d3d4„ Z]d5d6„ Z^d7d8„ Z_d9d:„ Z`d;d<„ Zad[d>d?„Zbd@dA„ ZcdBdC„ ZddDdE„ ZedFdG„ ZfdHdI„ ZgdJdK„ ZhdLdM„ ZidNdO„ ZjdPdQ„ ZkdRdS„ ZldTdU„ ZmdVdW„ ZndXdY„ ZodZS )\é    )Úproduct)ÚSum)ÚdiffÚexpand_func)ÚIÚRationalÚooÚpi)ÚS)ÚSymbolÚsymbols)Ú	conjugateÚ
polar_lift)ÚexpÚ	exp_polarÚlog)ÚcoshÚsinh)Úsqrt)ÚcosÚsin)ÚbesseliÚbesseljÚbesselkÚbesselyÚhankel1Úhankel2Úhn1Úhn2ÚjnÚjn_zerosÚyn)ÚgammaÚ
uppergamma)Úhyper)ÚIntegral)ÚO)Úseries)ÚairyaiÚairybiÚairyaiprimeÚairybiprimeÚmarcumq)Úrandom_complex_numberÚverify_numericallyÚtest_derivative_numericallyÚ_randint)Ú
besselsimp)ÚraisesÚslow)ÚzÚnÚkÚxc                  C   s\   t tttttfD ]} t| tƒ tƒtƒst	‚qt
tttfD ]} t| tddƒtƒtƒs8t	‚q8d S )Niöÿÿÿé
   )r   r   r   r   r   r   ÚtdÚrandcplxr4   ÚAssertionErrorr   r!   r   r   Úrandint©Úf© r?   úh/var/www/html/bwave/python/venv/lib/python3.8/site-packages/sympy/functions/special/tests/test_bessel.pyÚtest_bessel_rand!   s    rA   c                      sB   t tttttttfD ](‰ tt	‡ fdd„ƒ tt	‡ fdd„ƒ qd S )Nc                      s   ˆ dƒS )Né   r?   r?   r=   r?   r@   Ú<lambda>+   ó    z'test_bessel_twoinputs.<locals>.<lambda>c                      s   ˆ dddƒS )NrB   é   é   r?   r?   r=   r?   r@   rC   ,   rD   )
r   r   r   r   r   r   r   r!   r2   Ú	TypeErrorr?   r?   r=   r@   Útest_bessel_twoinputs)   s    rH   c                   C   s”   t dtƒ t¡dkst‚t dttƒƒ t¡td ks8t‚t ddttƒ ƒ t¡ttƒks\t‚t ttƒtt   t¡ddt ttd ƒ  ks�t‚d S ©Nr   rB   rE   )r   r7   Úas_leading_termr;   r   r   r4   r"   r?   r?   r?   r@   Útest_besselj_leading_term/   s     $rK   c                   C   sŽ   t dtƒ t¡dttƒ dtdƒ  dtj  t ks:t‚t dttƒƒ t¡dtt  ks^t‚t ddt	tƒ ƒ t¡dtt	tƒ  ksŠt‚d S )Nr   rE   rB   éþÿÿÿéÿÿÿÿ)
r   r7   rJ   r   r
   Ú
EulerGammar	   r;   r   r   r?   r?   r?   r@   Útest_bessely_leading_term8   s    :$rO   c                   C   s`   t dtƒ t¡dkst‚t dttƒƒ t¡td ks8t‚t ddttƒ ƒ t¡ttƒks\t‚d S rI   )r   r7   rJ   r;   r   r   r?   r?   r?   r@   Útest_besseli_leading_term>   s     rP   c                   C   s|   t dtƒ t¡ttƒ tj tdƒ ks,t‚t dttƒƒ t¡dt ksLt‚t ddttƒ ƒ t¡ddttƒ  ksxt‚d S )Nr   rE   rB   )	r   r7   rJ   r   r
   rN   r;   r   r   r?   r?   r?   r@   Útest_besselk_leading_termD   s    , rQ   c                   C   sP  t dtƒ t¡dtd d  td d  ttd ƒ ks<t‚t dtd ƒ t¡dtd d  td	 d  ttd ƒ ks|t‚t dtd t ƒ t¡dtd d  td
 d  dtd  d  td d  ttd ƒ ksÜt‚t dttƒt ƒjtdd�dtd  dtd  d  dtd
  d  ttd
dƒ d  ttddƒ d  dttddƒ  d  ttd ƒ k�spt‚t dtdt  ƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ k�sÖt‚t dtdt ƒƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ k�s<t‚t dttƒƒ t¡td dtd
  d  dtd  d  ttd ƒ k�sŠt‚t ddttƒ ƒ t¡ttƒttd
dƒ d  ttddƒ d  ttddƒ d  ttddƒ d  ttd dƒ d!  ttd ƒ k�st‚t d"ttƒƒjtdd�t dttƒƒjtdd�k�sLt‚d S )#Nr   rB   rE   é   é@   é   çš™™™™™ñ?çš™™™™™@çš™™™™™@rF   é   é   é   ©r5   é×   é 	  é   é   é€  é/   é)   éÀ   é   é`   é0   éI   é€  é   é�   é	   é@  é   é€Q rL   )	r   r7   r'   r&   r;   r   r   r   r   r?   r?   r?   r@   Útest_besselj_seriesJ   sZ    <@0ÿ
ÿ
ÿ
4ÿÿÿþ
þ@ÿ
ÿ0ÿÿ
ÿN.ÿÿÿþ
þro   c                  C   s  dt j t dtdƒ t  dttƒ t  } tdtƒjtdd�| td ttƒ dt  ddt j  dt   tdƒdt     ttd ttƒ ƒ ksžt‚tdtƒjtdd�dtt  tttƒt tdƒt  ddt j  dt     td ttƒ dt  t d	ƒd dt j  d
t   tdƒdt     ttd ttƒ ƒ k�sRt‚tdtƒjtdd�dttd   dt  td ttƒdt  tdƒdt   t dƒd dt j  dt     ttd ttƒ ƒ k�sÞt‚tdtƒjtdd�dttd   dtt   tdt   td ttƒdt  tdƒdt   t dƒd dt j  dt     ttd ttƒ ƒ k�szt‚tdtd ƒjtdd�dt j t dtdƒ t  dttƒ t  td dttƒ t ddt j  dt   tdƒdt     ttd ttƒ ƒ k�st‚tdtd t ƒjtdd�| ddt j  td  dt  td dt     dt t  td ttƒ dt  dt  tdƒdt     td ttƒ t ddt   tdƒt    ttd ttƒ ƒ k�sît‚tdtdt  ƒjtdd�| dt t  td ttƒ dt  ddt j  dt   tdƒdt   dt    ttd ttƒ ƒ k�s|t‚tdtdt ƒƒjtdd�| tt  td ttƒ dt  ddt j  dt   tdƒdt   d	dt     ttd ttƒ ƒ k�s
t‚tdt	tƒƒjtdd�dttd  d td    ddt j  td  d td   t  tttƒt tdƒt    td dttƒ dt  ddt   t d	ƒd dt j  d
t   dtdƒ dt     ttd ttƒ ƒ k�søt‚tddt
tƒ ƒjtdd�dtt
tƒ  t
tƒttƒt ddt j  t    tt dƒd  ttƒ dt  t d	ƒd dt j  dt     tt d	ƒd  ttƒdt  t dƒd dt j  dt     ttd ttƒ ƒ k�sât‚tdt	tƒƒjtdd�tdt	tƒƒjtdd�k�st‚d S )NrE   r   rR   r[   rB   rL   rF   é   rY   rZ   éüÿÿÿiðÿÿÿé   rm   rT   rf   rU   rW   gš™™™™™á¿ri   rM   éùÿÿÿr_   r8   )r
   rN   r	   r   r7   r   r'   r&   r;   r   r   ©Úconstr?   r?   r@   Útest_bessely_series]   sÐ    .*ÿÿÿ
4ÿÿÿÿþ<ÿÿÿ,
ÿ$ÿÿþ"ÿÿÿÿÿþ>0ÿ,þþÿ

ÿ,ÿÿÿþÿ,ÿ
ÿÿþ2&ÿÿBÿþý($ÿÿÿÿþýrv   c                   C   s\  t dtƒ t¡dtd d  td d  ttd ƒ ks<t‚t dtd ƒ t¡dtd d  td	 d  ttd ƒ ks|t‚t dtd t ƒ t¡dtd d  td
 d  dtd  d  td d  ttd ƒ ksÜt‚t dttƒt ƒjtdd�dtd  dtd  d  dtd
  d  ttd
ƒd  d  ttdƒd  d  dttdƒd   d  ttd ƒ k�svt‚t dtdt  ƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ k�sÜt‚t dtdt ƒƒ t¡dtd d  td
 d  dtd  d  dtd  d  ttd ƒ k�sBt‚t dttƒƒ t¡td td
 d  dtd  d  ttd ƒ k�sŒt‚t ddttƒ ƒ t¡ttƒttd
ƒd  d  ttdƒd  d  ttdƒd  d  ttdƒd  d  ttdƒd  d   ttd ƒ k�s"t‚t d!ttƒƒjtdd�t dttƒƒjtdd�k�sXt‚d S )"Nr   rB   rE   rR   rS   rT   rU   rV   rW   rF   rd   rY   rZ   r[   éÙ   r]   é   r_   r`   é1   ra   rc   r^   re   rf   rh   ri   rj   rk   rl   rm   rn   rL   )	r   r7   r'   r&   r;   r   r
   r   r   r?   r?   r?   r@   Útest_besseli_series�   sN    <@@
ÿ
ÿ
4ÿÿÿÿ
ÿ@ÿ
ÿ@ÿ
ÿJDÿÿÿ
ÿrz   c                  C   sÖ  t dƒtj t tƒ } tdtƒjtdd�| td t tƒ d tjd  t dƒd  tdƒd    ttd t tƒ ƒ ks~t‚tdtƒjtdd�dt tt tƒd t dƒd  tdƒd  tjd    td t tƒd tdƒd	  t dƒd  tjd    ttd t tƒ ƒ k�st‚tdtƒjtdd�dtd  tdƒd  td t tƒ d
 tjd
  t dƒd
  tdƒd    ttd t tƒ ƒ k�sšt‚tdtd ƒjtdd�t dƒtj dt tƒ  td dt tƒ tjd  t dƒd  tdƒd    ttd t tƒ ƒ k�st‚tdtd t ƒjtdd�| ddtj  td d td d
    t td t tƒ d t dƒd  tdƒd    td t tƒ d tdƒd  t dƒd    ttd t tƒ ƒ k�sÜt‚tdtdt  ƒjtdd�| t td t tƒ d tdƒd  tjd  t dƒd    ttd t tƒ ƒ k�sRt‚tdt dt ƒƒjtdd�| td  td t tƒ d tjd  tdƒd  t dƒd    ttd t tƒ ƒ k�sÌt‚tddttƒ ƒjtdd�ddttƒ  ttƒt tƒd tdƒd  tj   ttdƒd  t tƒd tdƒd
  tjd    ttdƒd  t tƒd tdƒd  tjd    ttd t tƒ ƒ k�sœt‚tdt	tƒƒjtdd�tdt	tƒƒjtdd�k�sÒt‚d S )NrE   r   rR   r[   rB   rF   rZ   rY   rS   rp   é    rU   rW   gš™™™™™Ñ¿r_   ri   rr   é$   rL   )
r   r
   rN   r7   r   r'   r&   r;   r   r   rt   r?   r?   r@   Útest_besselk_series’   sœ    6ÿÿ
0
ÿÿ(ÿÿþ:ÿ
ÿ
ÿÿ"
ÿ
ÿ
ÿÿþ$ÿÿ
ÿ
ÿÿ,þþ2
ÿÿ
ÿÿ$6ÿÿ($ÿ$ÿÿ0þþr}   c                   C   sZ  t ttƒ t¡t td tƒd t td tƒd  ks8t‚tttƒ t¡ttd tƒd ttd tƒd  kspt‚tttƒ t¡ttd tƒd ttd tƒd  ks¨t‚tttƒ t¡ttd tƒ d ttd tƒd  ksât‚tttƒ t¡ttd tƒd ttd tƒd  k�st‚t	ttƒ t¡t	td tƒd t	td tƒd  k�sVt‚d S )NrB   rE   )
r   r5   r4   r   r;   r   r   r   r   r   r?   r?   r?   r@   Ú	test_diff«   s    888::r~   c                  C   sØ  t ttƒ t¡tdt t ƒtttj tƒ ks4t	‚t
ttƒ t¡tdt t ƒtttj tƒ ksht	‚tttƒ t ¡tt t t d ƒt tttƒt ƒ ks¤t	‚t ttƒ t¡ttt t d ƒtttt ƒt ƒ ksàt	‚tƒ } tt | tƒt | tƒ t¡tƒ�s
t	‚tt | tƒt | tƒ t
¡tƒ�s.t	‚tt| tƒt| tƒ t ¡tƒ�sRt	‚tt| tƒt| tƒ t
¡tƒ�svt	‚tt
| tƒt
| tƒ t ¡tƒ�sšt	‚tt
| tƒt
| tƒ t¡tƒ�s¾t	‚tt| tƒt| tƒ t ¡tƒ�sât	‚tt| tƒt| tƒ t¡tƒ�st	‚tt| tƒt| tƒ t
¡tƒ�s*t	‚t| tƒt| tƒ t¡k�sJt	‚t| tƒt| tƒ t¡k�sjt	‚t| tƒt| tƒ t¡k�sŠt	‚t| tƒt| tƒ t¡k�sªt	‚t| tƒt| tƒ t¡k�sÊt	‚t| tƒt| tƒ t¡k�sêt	‚| }t t
fD ]F}t|tƒt|tƒ |¡k�st	‚t|tƒt|tƒ |¡k�söt	‚�qöt|tƒ t ¡tdƒttƒ tdt ƒ t |tj tƒ d k�s„t	‚t|tƒ t
¡d|  tdƒ ttƒ tdt ƒ t
| tj tƒ d k�sÔt	‚tddd�}tddƒ}||fD ]–}t t
fD ]†}t|tƒt|tƒ |¡k�s"t	‚t|tƒt|tƒ |¡k�sBt	‚t|tƒt|tƒ |¡k�sbt	‚t|tƒt|tƒ |¡k�sþt	‚�qþ�qòtttttfttt t
fƒD ].\}}t||tƒ||tƒ |¡tƒ�s¤t	‚�q¤d S )	NrE   rB   rM   r5   T©Úintegeréõÿÿÿr8   )r   r5   r4   Úrewriter   r   r	   r
   ÚHalfr;   r   r!   r   r   r   r   r:   Útnr   r   r   r   r<   r   )ÚnuÚorderr>   ÚNÚriÚfuncZrefuncr?   r?   r@   Útest_rewrite´   sT    44&ÿ&ÿ$$$$$$$$$       $FP
   (
ÿrŠ   c                  C   sD  t ttjtƒ t¡ƒtdƒttƒ tt	ƒttƒ  ks:t
‚t ttjtƒ t¡ƒtdƒ ttƒ tt	ƒttƒ  ksvt
‚tttjtƒƒtdƒttƒ tt	ƒttƒ  ksªt
‚tttddƒtƒƒtdƒttƒ tt	ƒttƒ  ksât
‚tttddƒtƒƒtdƒ td ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   k�sHt
‚tttddƒtƒƒtdƒ td ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   k�s®t
‚tttjtƒƒtdƒttƒ  tt	ƒttƒ  k�sæt
‚tttddƒtƒƒtdƒttƒ tt	ƒttƒ  k�s t
‚tttddƒtƒƒtdƒtd ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   k�s„t
‚tttddƒtƒƒtdƒ td ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   k�sêt
‚tttjtƒƒtdƒttƒ tt	ƒttƒ  k�s t
‚tttddƒtƒƒtdƒttƒ tt	ƒttƒ  k�sZt
‚tttddƒtƒƒtdƒtd ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   k�s¾t
‚tttddƒtƒƒtdƒtd ttƒ dt ttƒ  dttƒ   tt	ƒttddƒ   k�s"t
‚tttjtƒƒtttddƒtƒƒ  k�rttt	ƒtt ƒ tdƒttƒ  k�szn t
‚tttddƒtƒƒtttddƒtƒƒ  k�rîtdƒtt	ƒ td dt  d  tt ƒ dttddƒ   k�sôn t
‚tdddd�} t t| d tƒƒt| tƒd	|  d d	|  t| tƒ t t| d
 tƒ  t  k�sXt
‚t t| d tƒƒt| tƒ d|  d d|  t| tƒ t t| d
 tƒ  t  k�s°t
‚t t| d tƒƒt| tƒd|  d d|  t| tƒ t t| d
 tƒ  t  k�st
‚t t| d tƒƒt| tƒ d|  d d|  t| tƒ t t| d
 tƒ  t  k�s^t
‚t t| tj tƒ t¡ƒtdƒttƒ tt t	 | tj  d ƒ ttt	 d ƒ t| tttt	 d ƒ ƒ tt	ƒ k�sÜt
‚t t| tj tƒ t¡ƒtdƒttƒ t| tƒ tt	ƒ k�st
‚tddd�}tddd�}tddd�}ttttfD ]H}|||ƒjdk�sht
‚||tƒjd k�s~t
‚|ttƒjd k�sNt
‚�qNttfD ]}|||ƒjdk�s t
‚�q ttfD ]}|||ƒjd k�sÆt
‚�qÆttttfD ]N}t |ttƒƒ|ttdd�k�st
‚t |t tƒƒ|t tdd�k�sðt
‚�qðd S )NrE   rM   rY   rF   éûÿÿÿr5   T)r€   ÚpositiverL   rB   rR   Úr©ÚrealÚp©rŒ   Úir   F©Úevaluate)r   r   r
   rƒ   r4   r‚   r   r   r   r	   r;   r   r!   r   r1   r   r   r   r   r   r   r   r   r   Úis_extended_realr7   r   )r5   r�   r�   r’   Úbesselxr?   r?   r@   Útest_expandï   s¦    ÿ ÿ48Jÿ
Jÿ
 ÿ
:Hÿ
Jÿ
6ÿ
Hÿ
Hÿ
ÿ
 ÿÿ
>þ<ÿ
>ÿ
<ÿ
>ÿ
*ÿÿÿÿ
 ÿ
"r—   c                  C   sš  dd„ } t ddddd�}ttttfD ]<}tdtddƒ d ƒd }tt||t	ƒƒ||t	ƒƒs$t
‚q$| tt|tƒƒt|d tƒd|d  t|d tƒ t  ƒs¢t
‚| tt| tƒƒt| d tƒd| d  t| d tƒ t  ƒsêt
‚| tt|tƒƒt|d tƒ d|d  t|d tƒ t  ƒ�s.t
‚| tt| tƒƒt| d tƒ d| d  t| d tƒ t  ƒ�szt
‚| tt|tƒƒt|d tƒd|d  t|d tƒ t  ƒ�s¼t
‚| tt| tƒƒt| d tƒd| d  t| d tƒ t  ƒ�st
‚| tt|tƒƒt|d tƒ d|d  t|d tƒ t  ƒ�sJt
‚| tt| tƒƒt| d tƒ d| d  t| d tƒ t  ƒ�s–t
‚d S )	Nc                 S   s   t | |ƒo| |kS ©N)r„   )ÚeqZansr?   r?   r@   Úcheck;  s    ztest_slow_expand.<locals>.checkrB   r   rE   )ÚaÚbÚdÚcr�   r8   )r:   r   r   r   r   r
   r<   r„   r1   r4   r;   r   r7   )rš   Zrnr–   rˆ   r?   r?   r@   Útest_slow_expand9  s:     *ÿ0ÿ,ÿ
2ÿ
*ÿ
0ÿ
,ÿ
2ÿrŸ   c                 C   s   t t| |ƒƒS r˜   )r   r   ©r5   r4   r?   r?   r@   ÚmjnY  s    r¡   c                 C   s   t t| |ƒƒS r˜   )r   r!   r    r?   r?   r@   Úmyn]  s    r¢   c                  C   sæ  t dƒ} tddƒdkst‚tddƒdks,t‚tddƒtjks@t‚t| dƒt| ddd�ks\t‚tdtƒdksnt‚tdt ƒdks‚t‚td| ƒt| ƒ|  ksœt‚td| ƒt| ƒ| d  t| ƒ|   ksÆt‚td| ƒd| d  d|   t| ƒ d| d  t| ƒ  k�st‚td| ƒd	| d
  d| d   t| ƒ d|  d	| d   t| ƒ  k�sRt‚td
| ƒd|  d| d   d| d   t| ƒ d| d
  d| d   t| ƒ  k�sªt‚td| ƒd| d  d| d
   d	| d   t| ƒ d|  d| d   d| d   t| ƒ  k�st‚td| ƒd|  d| d   d| d   d| d   t| ƒ d| d  d| d
   d| d   t| ƒ  k�s~t‚t	tt
| ƒƒtt
| ƒk�sœt‚tddƒ ¡ tddƒk�sºt‚ttddƒ d¡gddt  gƒ�sât‚d S )Nr4   r   rB   rM   Fr“   rE   rF   rX   rR   rT   éi   rY   é-   i—ÿÿÿr8   i±  i¤  i›(  r_   iu  éÒ   ie×ÿÿiì  é   ù       @      @ùÍÌÌÌÌÌ@333333Ó?gM°»’s¹?gM™â¶ê«?)r   r   r;   r
   ÚComplexInfinityr   r¡   r   r   r   r5   Úevalfr™   r   ©r4   r?   r?   r@   Útest_jna  s2    *@L.ÿ2&ÿ:*ÿÿr¬   c                  C   sò   t dƒ} td| ƒt| ƒ |  ks$t‚td| ƒt| ƒ | d  t| ƒ|   ksPt‚td| ƒd| d  d|   t| ƒ d| d  t| ƒ   ks�t‚ttt| ƒƒtt| ƒks¬t‚tddƒ ¡ tddƒksÈt‚t	tddƒ d¡gd	d
t
  gƒsît‚d S )Nr4   r   rB   rE   rF   r§   r¨   r8   gˆ=;€H¶Ç?gÔLs’�Ž?)r   r¢   r   r;   r   r   r!   r5   rª   r™   r   r«   r?   r?   r@   Útest_yn~  s    ,@ÿr­   c                   C   sD   t dƒtdtƒ ¡ kst‚tdtƒdtd  dtd   ks@t‚d S )NrX   rF   rR   rT   rE   )r
   r¢   r	   Zatomsr;   r?   r?   r?   r@   Útest_sympify_ynŒ  s    r®   ç�íµ ÷Æ°>c                 C   s.   t | |ƒD ]\}}t|| ƒ|k s
 dS q
dS )NFT)ÚzipÚabs)r›   rœ   ZtolÚuÚvr?   r?   r@   r™   ‘  s    r™   c                   C   s�   t tddƒddddgƒst‚t tddƒdd	d
dgƒs8t‚t tddƒddddgƒsTt‚t tddƒddddgƒspt‚t tddƒddddgƒsŒt‚d S )Nr   rR   gz ‹üú!	@güÞ¦?û!@g�/ö^|Ù"@güÞ¦?û!)@rB   gP5z5@ù@g°�¹2¨æ@gî@�òèÎ%@gÁr„ä!,@rE   góX32È@g@…#H¥0"@gö#EdX¥(@gÓØ^z/@rF   gÿ¯:r¤ó@gW%‘}�Õ$@g,¶IEce+@gæmrì0@gÔ©¢x] @geqÿ‘éh'@g7¨ýÖN.@g©Á4M2@)r™   r    r;   r?   r?   r?   r@   Útest_jn_zeros˜  s
    r´   c                  C   sL  t ddd�t dƒt dddd�  } }}ttfD �] }|ddƒtjksHt‚|d	dƒtjks\t‚|d
dƒtjkspt‚|ddƒtjks„t‚|ddt  dƒtjks t‚|d
t dƒtjks¸t‚|dt dƒtj	ksÐt‚|| dƒtjkrð|| dƒtjksôt‚||dƒtjk�r||dƒtjk�st‚||dƒtjks.t‚q.t
ddƒtjk�sHt‚tddƒtjk�s^t‚t
tfD ]6}|dt dƒtjk�s„t‚|tdƒtj	k�sft‚�qftt
fD ]6}||tjƒtjk�sÂt‚||tjƒtjk�s¦t‚�q¦ttfD ]>}||ttj ƒtjk�st‚||ttj ƒtjk�sæt‚�qættfD ]r}|dtƒ|dtƒk�sLt‚|d
tƒ|dtƒk�sft‚||  tƒ|| tƒk�s‚t‚|| tƒ||tƒk�s.t‚�q.tt
fD ]„}|dtƒ|dtƒk�sÈt‚|d
tƒ|dtƒ k�sät‚||  tƒd|  || tƒ k�st‚|| tƒd| ||tƒ k�sªt‚�qªttfD ]6}||t ƒt | t|   ||tƒ k�s8t‚�q8tdt ƒtdtƒk�sŒt‚tdt ƒtdtƒ k�sªt‚tdt ƒtdtƒk�sÆt‚tdt ƒtdtƒ k�sät‚tdtt ƒtdtƒk�st‚tdtt ƒttdtƒ k�s$t‚tdtt ƒt tdtƒ k�sHt‚d S )Nr5   Tr   Úmr6   F)r€   Úzeror   gÍÌÌÌÌÌ @éýÿÿÿgffffff$ÀrB   rF   rL   rq   rR   rM   rE   )r   r   r   r
   ZOner;   ZZeror©   r   ÚNaNr   ÚNegativeInfinityr   ÚInfinityr4   )r5   rµ   r6   r>   r?   r?   r@   Útest_bessel_eval   sT    &$(  $(4"r»   c                  C   s>   t tttttttfD ]$} | dtj	ƒ| dtj	dd�kst
‚qd S )NrB   Fr“   )r   r   r   r   r   r   r!   r   r
   r¸   r;   r=   r?   r?   r@   Útest_bessel_nan×  s    r¼   c                   C   sˆ  t dtƒ td¡dkst‚t dtƒ td¡dks4t‚t dtƒ tt¡dksNt‚t tdƒd tƒ td¡dkspt‚t tdƒd tƒ td¡dks’t‚t tdƒd tƒ tt¡dks´t‚t tdt ƒ td¡dksÒt‚tdtƒ td¡dksìt‚tdtƒ td¡dk�st‚tdtƒ td¡dk�s$t‚tdtƒ td¡dk�s@t‚tdtƒ td¡dk�s\t‚tdtƒ td¡dk�sxt‚tdtƒ td¡dk�s”t‚t	dtd dt  ƒ td¡dk�s¼t‚t	dtƒ td¡dk�sØt‚t
ddƒ td	¡dk�sôt‚td
dtd  d ƒ td¡dk�st‚tddt ƒ td¡dk�s<t‚td	dt d ƒ td¡dk�s`t‚tdtd d ƒ td
¡dk�s„t‚d S )NrE   rB   Tr   FrF   rm   rR   rY   rT   r_   rk   rp   )r   r7   Zis_meromorphicr;   r   r
   r   r   r   r   r   r   r   r   r!   r?   r?   r?   r@   Útest_meromorphicÝ  s*    """(( $r½   c                  C   sd  t dƒ} t ddd�}t ddd�}t ddd�}t d	dd
�}ttttttfD ]d}|| dƒ ¡ |t| ƒdƒkslt‚|| |ƒ ¡ |t| ƒ|ƒksŒt‚|| |ƒ ¡ |t| ƒ|ƒksHt‚qHt	dd�}ttttfD ]Þ}|| dt
 ƒ ¡ |t| ƒdt
 ƒksðt‚|| dƒ ¡ |t| ƒdƒk�st‚|| dƒ ¡ |t| ƒdƒk�s4t‚|| |ƒ ¡ |t| ƒt|ƒƒk�sZt‚|| |ƒ ¡ |t| ƒ|ƒk�s|t‚t|| |ƒ ¡ |t| ƒt|ƒƒƒsÄt‚qÄt| dt
 ƒ ¡ tt| ƒdt
 ƒk�sÎt‚t| dƒ ¡ tt| ƒdƒk�sðt‚t| dƒ ¡ tt| ƒdƒk�st‚t| |ƒ ¡ tt| ƒ|ƒk�s4t‚t| |ƒ ¡ tt| ƒt|ƒƒk�sZt‚tt| |ƒ ¡ tt| ƒt|ƒƒƒ�s‚t‚t| dt
 ƒ ¡ tt| ƒdt
 ƒk�s¬t‚t| dƒ ¡ tt| ƒdƒk�sÎt‚t| dƒ ¡ tt| ƒdƒk�sðt‚t| |ƒ ¡ tt| ƒ|ƒk�st‚t| |ƒ ¡ tt| ƒt|ƒƒk�s8t‚tt| |ƒ ¡ tt| ƒt|ƒƒƒ�s`t‚d S )Nr5   r4   F)Zextended_realr7   TÚyr‘   Út©ÚnegativerM   g      à?)rœ   rB   r   )r   r   r   r   r   r   r   r   r;   r:   r   r„   )r5   r4   r7   r¾   r¿   r>   Zrzr?   r?   r@   Útest_conjugateõ  s:      "
(""&"(*"""&(*"""&rÂ   c                  C   s¼  t ttƒtƒt ttƒkst‚tttƒtƒtttƒks8t‚tddd�} t | tdt t	 ƒt ƒt | tƒkslt‚t | ttƒƒt | tƒksˆt‚t| tdt t	 ƒt ƒt| tƒks°t‚t| ttƒƒt| tƒksÌt‚dd„ }tdƒ}t |tdt t	 ƒt ƒt
dt t	 | ƒt |tƒ k�st‚t|tdt t	 ƒt ƒt
dt t	 | ƒt|tƒ k�sXt‚|t dƒ�sht‚|t tƒ�sxt‚|t t	ƒ�sˆt‚|tdƒ�s˜t‚|ttƒ�s¨t‚|tt	ƒ�s¸t‚d S )Nr5   Tr   rE   c                 S   s”   ddl m} |ddƒ}| ||ttt ƒ ƒ| ||tt t ƒ ƒ }d}| || | |t  ƒ| || | |t  ƒ }t| ¡ | ¡  ƒ ¡ dk S )Nr   )ÚuniformrB   rY   gVçž¯Ò<g»½×Ùß|Û=)Úsympy.core.randomrÃ   r   r   r	   r±   r5   )r‰   ÚsrÃ   rž   ÚexprÚepsZexpr2r?   r?   r@   r„   $  s    
.0ztest_branching.<locals>.tnr…   )r   r   r6   r7   r;   r   r   r   r	   r   r   )r5   r„   r…   r?   r?   r@   Útest_branching  s"    ((>>rÈ   c                  C   s¶   t dƒ} t ddd�}t ddd�}tt| ƒƒtt| ƒƒks<t‚t|ƒjsJt‚t|t|  ƒ ¡ t|t|  ƒd t|t|  ƒd  tt|t|  ƒt|t|  ƒ  d fks²t‚d S )Nr4   r7   TrŽ   r¾   rE   )r   r   r(   r;   r•   r   Zas_real_imag)r4   r7   r¾   r?   r?   r@   Útest_airy_base7  s    &&þrÉ   c               
   C   sì  t ddd�} t ddd�}t ddd�}tt| ƒtƒs6t‚td	ƒd
tdd
ƒ d
ttdd
ƒƒ  ksbt‚ttƒd	ksrt‚tt ƒd	ks„t‚tt| ƒ| ƒt| ƒksžt‚t	t| ƒ| d	d
ƒd
tddƒ ttdd
ƒƒ dt
  d
tddƒ |  ttdd
ƒƒ dt
   t| d
 ƒ k�st‚t| ƒ t¡d
tdd
ƒ  |  tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ  d
tdd
ƒ tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ   k�s t‚tt| ƒ t¡tƒ�sºt‚t|ƒ t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 k�s$t‚t| ƒ t¡|  ttdd
ƒd| td
dƒ  d
 ƒ d
| td
dƒ tdd
ƒ   | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ d
  k�sºt‚t|ƒ t¡t|ƒttdd
ƒd|td
dƒ  d
 ƒttdd
ƒd|td
dƒ  d
 ƒ  d
 k�st‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒ d| d tdd
ƒ | tdd
ƒ    tdd
tdd
ƒ  | tdd
ƒ  ƒ d d| d tdd
ƒ | tdd
ƒ   tdd
tdd
ƒ  | tdd
ƒ  ƒ d  k�sèt‚d S )Nr4   FrŽ   r¿   TrÀ   r�   r‘   r   rF   rB   rE   rY   rT   r?   rR   rk   rM   )r   Ú
isinstancer(   r;   r   r"   r   r   r*   r'   r	   r&   r‚   r$   r   r   r   r   r)   ©r4   r¿   r�   r?   r?   r@   Útest_airyaiD  sR    ,Vÿ
@:ÿÿ
*"ÿÿÿ
B<ÿÿ
& ÿÿÿ
 TJÿÿrÌ   c                  C   sî  t ddd�} t ddd�}t ddd�}tt| ƒtƒs6t‚td	ƒd
tddƒ d
ttdd
ƒƒ  ksbt‚ttƒtksrt‚tt ƒd	ks„t‚tt| ƒ| ƒt| ƒksžt‚t	t| ƒ| d	d
ƒd
tdd
ƒ ttdd
ƒƒ dt
  d
tdd
ƒ |  ttdd
ƒƒ dt
   t| d
 ƒ k�st‚t| ƒ t¡d
tddƒ |  tdtdd
ƒf| d
 d ƒ ttdd
ƒƒ d
tddƒ tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ   k�sšt‚tt| ƒ t¡tƒ�s´t‚t|ƒ t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 k�st‚t| ƒ t¡td
ƒ| ttdd
ƒd| td
dƒ  d
 ƒ | td
dƒ tdd
ƒ  | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ   d
 k�s¶t‚t|ƒ t¡td
ƒt|ƒ ttdd
ƒd|td
dƒ  d
 ƒttdd
ƒd|td
dƒ  d
 ƒ  d
 k�s"t‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒd| d tdd
ƒ | tdd
ƒ    tdd
tdd
ƒ  | tdd
ƒ  ƒ d d| d tdd
ƒ | tdd
ƒ   tdd
tdd
ƒ  | tdd
ƒ  ƒ d  k�sêt‚d S )Nr4   FrŽ   r¿   TrÀ   r�   r‘   r   rF   rY   rT   rE   rB   r?   rR   rk   rM   )r   rÊ   r)   r;   r   r"   r   r   r+   r'   r	   r&   r‚   r$   r   r(   r   r   r   rË   r?   r?   r@   Útest_airybih  sV    ,Vÿ
::ÿÿ
*"ÿÿÿ
B8ÿÿÿ
. ÿÿÿ
 RJÿÿrÍ   c               
   C   sÜ  t ddd�} t ddd�}t ddd�}tt| ƒtƒs6t‚td	ƒd
tdd
ƒ  d
ttdd
ƒƒ  ksdt‚ttƒd	kstt‚tt| ƒ| ƒ| t| ƒ ks’t‚t	t| ƒ| d	d
ƒd
tdd
ƒ  d
ttdd
ƒƒ  d
tdd
ƒ | d  dttdd
ƒƒ   t
| d
 ƒ ksþt‚t| ƒ t¡d
tdd
ƒ | d  tdtdd
ƒf| d
 d ƒ dttdd
ƒƒ  d
tdd
ƒ tdtdd
ƒf| d
 d ƒ d
ttdd
ƒƒ   k�s’t‚tt| ƒ t¡tƒ�s¬t‚t|ƒ t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 k�st‚t| ƒ t¡| d ttdd
ƒd| td
dƒ  d
 ƒ d
| td
dƒ tdd
ƒ   | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ d
  k�s®t‚t|ƒ t¡|ttdd
ƒd|td
dƒ  d
 ƒ ttdd
ƒd|td
dƒ  d
 ƒ  d
 k�st‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒ| tdd
ƒ | d tdd
ƒ  d  tdd
tdd
ƒ  | tdd
ƒ  ƒ d | tdd
ƒ | d tdd
ƒ  d tdd
tdd
ƒ  | tdd
ƒ  ƒ d  k�sØt‚d S )Nr4   FrŽ   r¿   TrÀ   r�   r‘   r   rF   rE   rB   rT   r?   rY   rk   rM   rL   )r   rÊ   r*   r;   r   r"   r   r   r(   r'   r&   r‚   r$   r   r   r   r   r+   rË   r?   r?   r@   Útest_airyaiprimeŒ  sH    .TÿB:ÿÿ
*"ÿÿÿ
D<ÿÿ
Lÿ
 RJÿÿrÎ   c                  C   sê  t ddd�} t ddd�}t ddd�}tt| ƒtƒs6t‚td	ƒd
tddƒ ttdd
ƒƒ ks^t‚ttƒtksnt‚tt ƒd	ks€t‚tt| ƒ| ƒ| t| ƒ ksžt‚t	t| ƒ| d	d
ƒd
tddƒ ttdd
ƒƒ d
tddƒ | d  dttdd
ƒƒ   t
| d
 ƒ k�st‚t| ƒ t¡d
tddƒ | d  tdtdd
ƒf| d
 d ƒ dttdd
ƒƒ  d
tddƒ tdtdd
ƒf| d
 d ƒ ttdd
ƒƒ  k�s–t‚tt| ƒ t¡tƒ�s°t‚t|ƒ t¡t| ƒttdd
ƒd| td
dƒ  d
 ƒttdd
ƒd| td
dƒ  d
 ƒ  d
 k�st‚t| ƒ t¡td
ƒ| d ttdd
ƒd| td
dƒ  d
 ƒ | td
dƒ tdd
ƒ  | td
dƒ tdd
ƒ ttdd
ƒd| td
dƒ  d
 ƒ   d
 k�s¶t‚t|ƒ t¡td
ƒ| ttdd
ƒd|td
dƒ  d
 ƒttdd
ƒd|td
dƒ  d
 ƒ  d
 k�st‚ttdd
| d  tdd
ƒ  ƒƒtd
ƒ| tdd
ƒ | d tdd
ƒ  d  tdd
tdd
ƒ  | tdd
ƒ  ƒ d | tdd
ƒ | d tdd
ƒ  d tdd
tdd
ƒ  | tdd
ƒ  ƒ d  k�sæt‚d S )Nr4   FrŽ   r¿   TrÀ   r�   r‘   r   rF   rB   rT   rY   rE   r?   rk   rM   rL   )r   rÊ   r+   r;   r   r"   r   r   r)   r'   r&   r‚   r$   r   r(   r   r   r   r*   rË   r?   r?   r@   Útest_airybiprime®  sN    (Nÿ
B6ÿÿ
*"ÿÿÿ
F8ÿÿÿ
Rÿ
 RJÿÿrÏ   c                  C   s¢  t dƒ} t dƒ}t dƒ}tdddƒdks,t‚t| d|ƒt| |d d ƒt| ƒ ksVt‚tdddƒdttddƒƒ d ks|t‚td|dƒd	t|d  d ƒ ks¢t‚tdtdƒd	ttd  d ƒ ksÈt‚td	||ƒtj	t|d  ƒt
d|d ƒ d  ksþt‚td||ƒtj	t|d  ƒt
d|d ƒ d  t|d  ƒt
d	|d ƒ  k�sRt‚ttd	|d
ƒ|ƒ|td	|d
ƒ td|d
ƒ  k�sˆt‚ttdd
|ƒ|ƒ|d  t|d  d tddƒ ƒ t
d	d
| ƒ d
 k�sØt‚t dƒ}tdd
dƒjt|d�t|d t|d  d tddƒ ƒ t
d	d
| ƒ |dtfƒd
 k�s>t‚ttddd
ƒ t¡ d¡gdgƒ�sft‚t dƒ}tdddƒjt|d�tdƒttddƒ| t
|dƒ |dtfƒ k�s¶t‚ttd	d
d	ƒ t¡ d¡gdgƒ�sÞt‚td	||dd� t
¡tj	t|d  ƒt
d|d ƒ d  k�s t‚td||dd� t
¡tj	t|d  ƒt
d|d ƒ d  t|d  ƒt
d	|d ƒ  k�s~t‚td
||ƒ t
¡t
d	|d ƒt
d|d ƒ t|d  ƒ tj	 t|d  ƒt
d|d ƒ d  k�sæt‚tdddƒ t
¡tdƒt
ddƒ d t
ddƒt
d
dƒ t
ddƒ t
d	dƒ tdƒ  tj	 k�sJt‚t| ||ƒ t
¡t| ||ƒk�snt‚t dd d!�}t|||ƒ t
¡t|||ƒk�sžt‚d S )"Nrµ   r›   rœ   r   rE   rY   é   içÿÿÿrB   rF   rk   r7   rR   ©r7   rL   r8   gZp¤hLé?r6   r·   r‹   rs   )r6   iÛÿÿÿr_   é#   gyÏhÿH§ï?Fr“   rp   iÀÿÿÿrS   Tr   )r   r,   r;   r#   r"   r   r   r	   r
   rƒ   r   r   r‚   r%   r   r™   rª   r   )rµ   r›   rœ   r7   r6   r?   r?   r@   Útest_marcumqÑ  sV    *&&&6T6P@ÿ
ÿ
*ÿ
ÿ
B8ÿ8ÿÿ$.ÿÿ$rÓ   c               	   C   sj   t dƒ} tdddƒjt| d� t| d t| d  d tddƒ ƒ tdd|  ƒ | dtfƒd ¡sft	‚d S )Nr7   rE   rF   rR   rÑ   rk   rB   )
r   r,   r‚   r%   Zdummy_eqr   r   r   r   r;   rÑ   r?   r?   r@   Útest_issue_26134ú  s    @ÿrÔ   N)r¯   )pÚ	itertoolsr   Zsympy.concrete.summationsr   Zsympy.core.functionr   r   Zsympy.core.numbersr   r   r   r	   Zsympy.core.singletonr
   Zsympy.core.symbolr   r   Z$sympy.functions.elementary.complexesr   r   Z&sympy.functions.elementary.exponentialr   r   r   Z%sympy.functions.elementary.hyperbolicr   r   Z(sympy.functions.elementary.miscellaneousr   Z(sympy.functions.elementary.trigonometricr   r   Zsympy.functions.special.besselr   r   r   r   r   r   r   r   r   r    r!   Z'sympy.functions.special.gamma_functionsr"   r#   Zsympy.functions.special.hyperr$   Zsympy.integrals.integralsr%   Zsympy.series.orderr&   Zsympy.series.seriesr'   r(   r)   r*   r+   r,   rÄ   r-   r:   r.   r„   r/   r9   r0   Zsympy.simplifyr1   Zsympy.testing.pytestr2   r3   Z	sympy.abcr4   r5   r6   r7   r<   rA   rH   rK   rO   rP   rQ   ro   rv   rz   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@   Ú<module>   sp   4	$	;J

7%$$"#)