a
    t@8b)7                     @   s  d dl mZ d dlmZmZ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mZ d dlmZ d dlmZmZmZ d d	lmZ d d
lmZ d dlm Z  d dl!m"Z"m#Z#m$Z$m%Z% d dl&m'Z' d dl(m)Z) dd Z*dd Z+dd Z,dd Z-dd Z.dd Z/dd Z0dd Z1d dl2m3Z3m4Z4 d d l5m6Z6 d d!lm7Z7 d"d# Z8d$d% Z9d&d' Z:d(d) Z;d*d+ Z<d,d- Z=d.d/ Z>d0d1 Z?d2d3 Z@d4d5 ZAd6d7 ZBd8d9 ZCd:d; ZDd<d= ZEd>d? ZFd@dA ZGdBdC ZHdDdE ZIdFdG ZJdHdI ZKdJdK ZLdLdM ZMdNdO ZNdPdQ ZOdRdS ZPdTdU ZQdVS )W    )N)
DerivativeFunction	PoleErrorSubs)ERationaloopi)S)Symbolsymbols)LambertWexplog)sqrt)atancossin)Integral)Oseries)xynk)raises)calculate_seriesc                  C   s0   t ttd} tt ttd}| |ks,J d S Nr   )r   r   r   Ze1Ze2 r!   =lib/python3.9/site-packages/sympy/series/tests/test_series.pytest_sin   s    r#   c                  C   s0   t ttd} tt ttd}| |ks,J d S r   )r   r   r   r    r!   r!   r"   test_cos   s    r$   c                  C   s0   t ttd} tt ttd}| |ks,J d S r   )r   r   r   r    r!   r!   r"   test_exp   s    r%   c                  C   s8   t tttd} tt tttd}| |ks4J d S r   )r   r   r   r   r    r!   r!   r"   	test_exp2#   s    r&   c                     s   t dtdksJ ttjtdks*J tt  tt tksHJ ttdd  ttdd  tt tdttd  t	ttd  
 dksJ ttj tdd d  fddtd	D tdtd td  gksJ ttj tdd d
d  fddtd	D tddt td gks0J ttj tdd
dtksNJ ttj tdd
dd
 ttt d   tt d d	  d	  ksJ t} | td	 td td	   td	td t dt t ksJ t| ttt | dtks J | tttj dd| dt| tt | td	 d	 t | td d t ttd  ks`J tttddftdtf tddt  ksJ dt ttd	   d	ksJ dt  d u sJ ttdd  td}ttt jtd|dtt| tttt|  t ksJ tdt j ttdddt ddtd    ttd ttf ksfJ ttj ttdddtksJ ttj tt dd
dt ksJ tt j ttdddtksJ tt j tt dd
dt ksJ tttt j dddttt  td	 ttd	  d	  ttd ttd   ksPJ tddd}tt|d t| j ddd|td t|  t|d t|d   ksJ ttttt j d	ddttt  ttd	 ttd	   ksJ d S )N   r   c                   S   s   t tt  S )N)r   r   r   r   r!   r!   r!   r"   <lambda>-       z!test_issue_5223.<locals>.<lambda>c                   S   s   t jddS )N dir)r   r   r!   r!   r!   r"   r(   .   r)   r   c                    s   g | ]}t  qS r!   next.0ier!   r"   
<listcomp>3   r)   z#test_issue_5223.<locals>.<listcomp>   -)r   r,   c                    s   g | ]}t  qS r!   r.   r0   r3   r!   r"   r5   5   r)   r+      )r,   r            c                   S   s   dt t t  S )Nr'   )r   r   r	   r   r!   r!   r!   r"   r(   F   r)   logx)r   r=      +pTZpositivez3/2)r   r   r/   r   ZZeroZlseriesr   r   
ValueErrorZsubsremoveOranger   absr   r   r   r   doitr   r   Zgetnr   r   Znseriesr	   r   r   )Dr=   rA   r!   r3   r"   test_issue_5223)   sb    44&
@&B
0" 
H $"&>
.
rI   c                   C   s  t tttttttks&J ttttjtdd ttjtddksXJ ttd ttdtd  ks|J ttd ttdksJ tttttdksJ tttttt ksJ tdtttdtksJ tt	ttt t	ttksJ dt t	ttt t	ttksHJ tt
ttt dt tkstJ t t
tttt t
tt t ksJ d S )Nr8   r-   r6   r   r'   )r   r   r   r   r   r   rG   as_leading_termr   r   r   rD   r!   r!   r!   r"   test_issue_11313[   s    &2$,,,rK   c                     s  ddl m  ttttt} tttt  tt}ttt  t fttf}| t| ksbJ ttttttd  d tt ttd d tt ttd  }|  |ksJ | t|ksJ |  | ksJ | t d tt d ttt d	  tt d	 tt ttttt t d  ks>J |t	 |	 tks`J | 	 ttt ksJ t
t fd
d ttt t t	 t  ksJ d S )Nr   zr8   r:   r>   x   r<      r6   c                      s   t tdt  t  S )Nr6   )r   r   r   r   r!   rL   r!   r"   r(      r)   z%test_series_of_Subs.<locals>.<lambda>)	sympy.abcrM   r   r   r   r   r   r   r   rG   r   rC   )Zsubs1Zsubs2Zsubs3Zsubs1_seriesr!   rL   r"   test_series_of_Subso   s0     
"
" rQ   c                  C   s  t d} | tjtdddd| dttt| tttd  td tt| ttttd d  ttd  kstJ | ttdd| dttt| tttd  td tt| ttttd d  ttd  ksJ | td tdd| dtd tt| tttd  ttd  ks*J | td d tdd| dtd tt| tttd  ttd  ks|J G dd	 d	t }|ttdd|dttt|tttd  td tt|ttttd d  ttd  ksJ d S )
Nfr   r8   r7   r+   r6   r'   c                   @   s   e Zd ZdS )ztest_issue_3978.<locals>.TestFN)__name__
__module____qualname__r!   r!   r!   r"   TestF   s   rV   )r   r   r   r   r   r   )rR   rV   r!   r!   r"   test_issue_3978   s:     "
 "
0
0
"
rW   )
richardsonshanks)Sum)Integerc                  C   s   ddt   t  } tt| t dd dtt dks:J ttdtd  t tdt f}tt|t d dtt	d dksJ tt|t dd dtt	d dksJ d S )	Nr'   
         r<   r6   r>   )
r   roundrX   Zevalfr   rZ   r[   r   rY   r   )r4   Ar!   r!   r"   test_acceleration   s
    * ,rb   c                   C   sh   t dtttt  tddtd dttd    dtd  dttd    ttd  ksdJ d S )Nr'   r   r6   r>   r<   rO   r:   )r   r   r   r   r   r!   r!   r!   r"   test_issue_5852   s
    4
rc   c                   C   s   t dt td  tddt dttd  td td t dd    td t d tdd    td dt d d	 tdd    ttd  ksJ d S )
Nr'   r6   r   r>   r8   r:   r<   irO   )r   r   r   r   r   r!   r!   r!   r"   test_issue_4583   s    ."
rd   c                  C   s,   dt  tdd } | d t | ks(J d S )Nr'   r6   r8   )r   r   rJ   eqr!   r!   r"   test_issue_6318   s    rg   c                  C   s0   t d tdd } |  t tdd ks,J d S )Nr6   r8   r<   )r   r   r   re   r!   r!   r"   test_x_is_base_detection   s    rh   c                  C   s&   t td } t| ttd ks"J d S )Ng333333?)r   r   r   r3   r!   r!   r"   test_sin_power   s    ri   c                   C   sD   t ttttddtt d d  ttt d ttf ks@J d S )Nr8   r^   r6   )r   r   r   r
   r   r!   r!   r!   r"   test_issue_7203   s    (rj   c                  C   s   t ddd\} }| | }tt||ddd| |  | d |d  d  | d |d  d	  | d
 |d
  d  | d |d  d  | d	 |d	  d  | d |d  d  t| d |d  | | ksJ d S )Nza, bTrB      r-   r'   r6   r8   r:   r<   rO   r>   rN          )r   r   r   r   )abr   r!   r!   r"   !test_exp_product_positive_factors   s    .rq   c                   C   s   t ddddksJ d S )Nr'   rk   r-   r   r!   r!   r!   r"   test_issue_8805   s    rr   c                  C   sj   t d t  d t d t d   } t| t tt d dt d   t d  dt   tt d t tf ksfJ d S )Nr6   r'   r8   r?   r<   )r   r   r	   r   r   r!   r!   r"   test_issue_9549   s     rv   c                   C   sH   t dtd td   tdtd td  td  ttd  ksDJ d S )	Nr'   rs   r   r8   r<   r>   r:   )r   r   r   r!   r!   r!   r"   test_issue_10761   s    rx   c                  C   s   ddt d ddt    d   tdd  } | jt dddddt d   dt d   d	t d   d
t d   dt d   dt d   dt d   tt d  ksJ d S )Nr'   r6   r<   rk   r      r-   r:   "      r\   i  r9   i     iC     )r   r   r   r   ru   r!   r!   r"   test_issue_12578   s    ,L


r~   c                  C   s`  t ddd} t ddd\}}| d  | t| | d t|  | | t|  | t|  |  d | t| d d  }ddt| d	 d  d
t| dt| d	 d   | d d| td|  dt|  d
td|   d  dt| d	 d   d
| t| dt| d	 d   t| tj d | tjf }|| dd |ks\J d S )NbetaTrB   ztheta varphirealr6   r'         ?      ?g      ?g      пg      ?g      ?r8   )r   r   r   r   r   ZHalfr   Ztrigsimp)r   ZthetaZvarphiexprZsolr!   r!   r"   test_issue_12791   s>    $
*$"r   c                   C   s   t ttdd tt tdttdd dtt  ttd  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sJ d S )Nrs   r6   r   r'   r8   r:   r>   rO   rm   rN   	   rl      rn   )r   r   r   r   r   r   r!   r!   r!   r"   test_issue_14885   s    4

r   c                   C   s   t tttt ddtd   ddtd    dt  td  ttd tt f ksZJ t ttttddtd   ddtd    dt  td  ttd ttf ksJ d S )Nr^   r>   r'   r8   r6   rt   )r   r   r   r	   r
   r   r!   r!   r!   r"   test_issue_15539   s    >
<r   c                   C   s   t tttttd  dtd  d  dtd  d  dtd  d  ttd  ksZJ t ttd tdd	td td  dtd  d  ttd  ksJ t ttttdd	ttd  dtd  d  ttd  ksJ d S )
Nr6   r8   rk   r<   }   r>   rO   r:   r-   )r   r   r   r   r   r!   r!   r!   r"   test_issue_7259   s    ZFr   c                   C   s6   t tjtdddt dttd tdf ks2J d S )Nr'   r-   )r   r   r   r   r!   r!   r!   r"   test_issue_11884  s    r   c                  C   s   t dt dt     dt dt    dt  dt     } | jt tddddt d   ddt d    dd	t    tdd  t d  tt d
 t tf ksJ d S )Nr'   r<   r-   i    r8   r}   r6   rk   r;   )r   r   r	   r   r   ru   r!   r!   r"   test_issue_18008  s    4Lr   c                  C   s>   t tdt  } | jtddd  td d ks:J d S )Nr'   gCl?r-   l   I l     o )r   r   r   rD   Z	nsimplifyr   )rR   r!   r!   r"   test_issue_18842  s    r   c                  C   sF  t ddd} d|  d|  d|  d  d|   d  d	 d
|  d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|   | dtdd    d  d  d
|  d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|   d   d|   | tdd d   d  d  | d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|   d   d |  d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|  d|  d|  d  d|  d|  d|  d  d|   d   d|   d   d|   d   d!|   d   d"|   d  d#  | d#  d$ }t|| d%d&d#d'| d(  d)| d*   d+| d,   d-| d.   d/| d0   d| d1   d|   d ksBJ d S )2NdtTr   r}   g      ?g       @r   g      ?-   1   gPFvBgI?gwkN?gh/?gh/?g	%?gIp?r      r|      gaAοgi?gi/?gϥ;} @gvQ?go?gUUUUUU?g@g?br@gF)7^@g~j`?g~?g#@r]   r'   r   rk   gt:WNrm   gllf?r:   g?r>   gSUUUUU?r<   gVUUUUU?r8   r6   )r   r   r   r   )r   r   r!   r!   r"   test_issue_19534  s   *&&&&&&



&&&&
&&&&

%%'(



r   c                  C   s   t d\} }}}tt| | ||  |ddt| | t| ksFJ tt| | | ||  |ddt| | | t| ksJ d S )Nza b c xr   r'   )r   r   r   r   )ro   rp   cr   r!   r!   r"   test_issue_11407@  s    6r   c                   C   s8   t td td  jtdddt tdt ks4J d S )N2   3   r   r-   r'   )r   r   r   r   r!   r!   r!   r"   test_issue_14037F  s    r   c                     sJ   t tt jtd d  fddtdD } | dt dtd gksFJ d S )Nr-   c                    s   g | ]}t  qS r!   r.   r0   r   r!   r"   r5   L  r)   z$test_issue_20551.<locals>.<listcomp>r8   r'   r6   )r   r   r   rE   )Ztermsr!   r   r"   test_issue_20551J  s    r   c                  C   s   t d\} }}}}}}| |||t  t  t  d||t  || ||  |d   t |d | || |  ||| |d    |d   t   }|jtdd |td  |t  | ttd  ksJ d S )Nzp_0 p_1 p_2 p_3 b_0 b_1 b_2r'   r6   r8   r-   )r   r   r   Zratsimpr   )Zp_0Zp_1Zp_2Zp_3Zb_0Zb_1Zb_2Qr!   r!   r"   test_issue_20697P  s"    ,r   c               	   C   s   dt d d } ddt td   td|  d ddt d  dt  dt d t  ttddt d   d tddt d  f dt d dd	t d  d  tt dt  d   ksJ d S )
Nr'   r>   r6   i4ih  i  i  r]   r   )r   r   r   Zfactorr   )Zfir!   r!   r"   test_issue_21245X  s    $&,
r   c                  C   sv   t dt tt  t dt  } | ttddtd   ddtd    d ttd ttf tt  ksrJ d S )Nr'   rO   r<   r6   rt   )r   r   r   r   r	   r   r   r!   r!   r"   test_issue_21938`  s    "r   N)RZsympy.core.evalfr   Zsympy.core.functionr   r   r   r   Zsympy.core.numbersr   r   r	   r
   Zsympy.core.singletonr   Zsympy.core.symbolr   r   Z&sympy.functions.elementary.exponentialr   r   r   Z(sympy.functions.elementary.miscellaneousr   Z(sympy.functions.elementary.trigonometricr   r   r   Zsympy.integrals.integralsr   Zsympy.series.orderr   Zsympy.series.seriesr   rP   r   r   r   r   Zsympy.testing.pytestr   Zsympy.series.gruntzr   r#   r$   r%   r&   rI   rK   rQ   rW   Zsympy.series.accelerationrX   rY   Zsympy.concrete.summationsrZ   r[   rb   rc   rd   rg   rh   ri   rj   rq   rr   rv   rx   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r!   r!   r!   r"   <module>   sd   2	.