
\c           @   s8  d  d l  Td  d l m Z m Z m Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z  d   Z! d    Z" d! S("   i(   t   *(   t   round_upt
   from_floatt   mpf_zeta_intc           C   s%   t  d d  t d  k s! t  d  S(   Ni    i
   g      (   R   R   t   AssertionError(    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_zeta_int_bug   s    c          C   s  t  d  d) k s t  t  d  d* k s0 t  t  d  d+ k sH t  t  d  d, k s` t  t  d  d- k sx t  t  d	  d. k s t  t  d  d/ k s t  t  d  d0 k s t  t  d  d1 k s t  t  d  d2 k s t  t  d  d3 k st  t  d  \ }  } |  d4 d k s0t  | d k sBt  t  d  \ }  } |  d5 d k sjt  | d k s|t  d t _ t d  d k st  t d  d k st  t d  j d d  st  t d  d k st  t d  j d d  st  t d	  d k s#t  t d  j d d
  sBt  t t d   d k s`t  t t d   d  k s~t  t t d6   d! k st  t t d8   d" k st  d# t _ t t d   d$ k st  t t d   d% k st  t t d9   d& k st  t t d;   d' k s;t  d t _ t d  j t d	  d  sit  d( t _ t d  j t d	  d  st  d t _ d  S(<   Ni    i   ii   i   i   i   i   i   i*   i   i
   iB   i   iMi
  i   i[  i  i   is	i	 i  Ik   iqi   g      g      ?g      s   0.0757575757575758i   s   7.62772793964344e+267s   -5.82229431461335e+376755s   1.19570355039953e+676752584i2   s5   0.075757575757575757575757575757575757575757575757576s8   7.6277279396434392486994969020496121553385863373331e+267s<   -5.8222943146133508236497045360612887555320691004308e+376755s>   1.1957035503995297272263047884604346914602088317782e+676752584iP  (   i   i   (   ii   (   i   i   (   i    i   (   ii   (   i    i   (   i   i*   (   ii   (   i   iB   (   iMi
  (   i[  i  I T   I T   i i ii i i(   t   bernfracR   t   mpt   dpst	   bernoullit   aet   strt   mpf(   t   pt   q(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_bernoulli   sN    			%	%c           C   s  d t  _ t d d  j d  s' t  t d d  j d  sE t  t d d  j d  sc t  t d d  j d  s t  t d d  j d  s t  t d d  j d  s t  t d d  j d  s t  t d d  j d	  s t  t d d  j d  st  t d d  j d
  s5t  t d d  j d  sSt  t d d  j d  sqt  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  s%t  t d d  j d  sCt  t d d  j d  sat  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  s3t  t d d  j d  sQt  t d d  j d  sot  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  s#t  t d d  j d  sAt  t d d  j d  s_t  t d d  j d  s}t  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d  d  j d!  st  t d  d  j d  s1t  t d  d  j d  sOt  t d  d  j d"  smt  t d  d  j d  st  t d  d  j d   st  t d d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d  s!t  t d d  j d  s?t  t d d  j d  s]t  t d d  j d  s{t  t d d  j d	  st  t d d  j d  st  t d d  j d
  st  t d d  j d  st  t d d  j d  st  t d d  j d  s/t  t d d  j d  sMt  t d d  j d#  skt  t d d  j d$  st  t d d  j d  st  t d d  j d  st  t d d  j d%  st  t d d  j d
  st  t d d  j d  st  t d d  j d&  s=t  t d d  j d#  s[t  t d d  j d'  syt  t d d  j d  st  t d d  j d  st  t d d  j d(  st  t d d  j d)  st  t d d  j d  s	t  t d d  j d  s-	t  t d d  j d  sK	t  t d d  j d	  si	t  t d d  j d  s	t  t d d  j d*  s	t  t d d  j d  s	t  t d d  j d  s	t  t d d  j d  s	t  t d d  j d  s
t  t d d  j d+  s;
t  t d d  j d,  sY
t  t d d  j d  sw
t  t d d  j d  s
t  t d  d  j d-  s
t  t d  d  j d.  s
t  t d  d  j d  s
t  t d  d  j d/  st  t d  d  j d0  s+t  t d  d  j d1  sIt  t d2 d2  j d3  sgt  t d4 d5  j d6  st  t d4 d5  j d7  st  d  S(8   Ni   i    ii   s   1/2s   3/4i   s   -3/2s   -1/2s   1/4s   3/2s   13/6s   1/6s   -1/12s   -1/48i   is   -3/64i   s   119/30s   -1/30s   7/240s   7/3840i   is   25/1024i
   s   665/66s   5/66s   -2555/33792s   -2555/34603008i   is   -555731/4194304s   -1/4s   -3/16s   -9/4s   -11/64s   9/4s   5/16s   57/256s   361/1024s   -50521/1024s   -36581523/1048576s   -699/4s   691/4s   -512343611/4194304s   -691/4s   699/4i'  s   5.8196915936323387117e+39999i   g     1@gJrg,Qr%(   R   R   t   bernpolyR
   R   t	   eulerpoly(    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_bernpoly_eulerpoly4   s    	c          C   s  d t  _ t d  j d  s$ t  t d  j d  s? t  t d  j d  sZ t  t d  j d	  su t  t d
  j d  s t  t d,  j d-  s t  t d.  j d/  s t  t d0  j d1  s t  d }  x9 t d d  D]( } t |  |  k st  |  | 9}  q Wx_ d d g D]Q } d }  | t  _ x9 t d d  D]( } t |  |  k sst  |  | 9}  qUWq0Wd t  _ t d  j t t   st  d t  _ t d  t	 d  k od k n st  t d  d  k st  t
 t t   st  t d!  j d"  s1t  t d  d k sIt  t d  d k sat  t d#  d$ k syt  t d  d k st  t d2  j d3  st  t d(  j d)  st  t d*  j t d+ d)   st  d  S(4   Ni   g      ?g~?@g-C6?g	!@i,  s   1.0201917073881354535e612g      gkﴑ[gQgf<9b1?i   y              ?g}?y        'މ^e?iy        {Gz?gT})ۿy        Of[X@i   y              >@g<lsy        fsuWAi   i   iX  ii   id   g      ?i    i   i   iL  s   4.8579168073569433667e2866i   g      ?y               @gaaJ
!y        z¶%@t   1e10000s    2.302485092994045684017991e10004t   1e10000js!   -1.570796326794896619231322e10000y      ?      ?y}?'މ^eÿy      {Gz?yT})ۿOf[X@y      4@      >@y<lsfsuWAy       @       @yaaJ
!z¶%@(   R   R   t   gammaR
   R   t   ranget   sqrtt   pit	   factorialt   fact   isnant   nant   rgammat   loggammat   mpc(   t   factt   iR   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt
   test_gamma   sB    			!	.c          C   s  d t  _ g  t d  D] }  t |   ^ q d d d d d d d d d	 d
 g
 k sX t  t d  j d d  sw t  t d  j d d
  s t  t d  j d  s t  t d  j d  s t  t t  t k s t  t t t   s t  d  S(   Ni   i
   i   i   i   i   i0   ii   i  i  ig      ?ig      i2   g!a?@Fg      ?y              ?gHO?y        j6.V?y      ?      ?yHO?j6.Vֿ(   R   R   R   t   fac2R   R
   t   infR   (   t   n(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt	   test_fac2   s    	Oc          C   s  d t  _ d }  d } t } t d g d d g  d k s? t  t d d g d g  t k sc t  t t d g d	 g  | d |   | d	 |    d k  s t  t t d d g d	 d g  | d |   | d |   | d	 |   | d |    d k  st  t d
 d  d k s&t  t d d  d k sAt  t d d  d k s\t  t t t  j	 t d t  t t   st  t d d  j	 d  st  t
 d	 d  d k st  t
 d	 d  d	 k st  t
 d d
  d k st  t
 d
 d  d k st  t d d  d k s3t  t d d  d k sNt  t d d  d k sit  t d
 d  d
 k st  t d d  d k st  t d d
  d k st  t d d  d k st  t d d  d k st  t d	 d  d
 k st  t d d  d k s&t  t d d  d k sAt  t d d  d k s\t  t d d  d k swt  t d d  t k st  t d
 d  t k st  t d d  t k st  t d d  j	 d d  st  t d d  j	 t d  st  d& t d d  j	 d  s.t  t t t  d k sIt  t t t t   set  t t d t   st  t t d t   st  t t d  t d t  k od k n st  t t d   t k st  t t d!  t k st  t d' d t d  j	 d(  s,t  t d! d  d k sGt  t d d
  j	 d d  sit  t d d  j	 d%  st  d  S()   Ni   g:0yE>g-C6?iiii    iii   i   g      @i   i   s   -255.5815971722918s   -0.5119253100282322s   -0.1952720278805729485i   i   i   i
   g      @g      ?g     @@iL  i"9	 g      @i   id   grP@g      ?g      g      y               @g+5?y        \K9ʵ?s   18.157330562703710339I Ƥ~ y      ?       @y+5?\K9ʵ?(   R   R   R   t	   gammaprodR   R$   t   abst   rft   jR
   t   fft   binomialt   betaR   R   (   t   ht   ept   G(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_quotients   s^    	$$Ce2"""4&"c          C   s5  d t  _ t d  j t d d  s, t  t d  j t d d  sO t  t t d   j t d d  sx t  t d  j d  s t  t d  j d  s t  t d	  j d
  s t  t d  j t d  d  s t  t d  d k st  t d  j t d  d  s,t  t d  d k sDt  t d  d k s\t  t t t	   stt  t d  j d  st  t d  j d  st  t t d	 d   j d  st  t t d	 d   j d  st  t t d	 d   j d  st  t t d d   j d  s:t  t t d d   j d  s^t  d t  _ d }  t t d	 |    j d d  st  d t  _ t d&  d' j d(  st  t d d	  d k st  t d d  d	 k st  t d d	 d  j d!  st  t d" d#  j d)  s1t  d  S(*   Ni   i   i   g       @id   i   i    g      g      ?gs~]ii   iiix   iigKH9gKHg"fD,@gOc5@g9@gWw'&l7i2   s8   236.5242296658162058024755079556629786895294952121891237gaU,$Db6iy              @i
   i"   g9A!@y        .@g9B.ֿg      y              ?gN*y        i6?y      N      @l       9l<|UoB y9A!@.@yN*i6?(
   R   R   t   zetaR
   R   R   R   R   R   R   (   t   im(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt	   test_zeta   s:    	##)&%$$$$$	'	!c          C   s  d t  _ t d  d k s! t  t d  d k s9 t  t d  d k sQ t  t d  d k si t  t d  d k s t  t d	  d
 k s t  t d  d k s t  t d  d k s t  t d  j t d   s t  t d  j t d d  st  t d  j d t d d  s4t  t d  d k  sLt  t d d d d k  sjt  t d d d d k st  t d d d d k  st  t d d d d k st  t d$  t d  k st  d% }  t |   j d d d |  t |    st  d& }  t |   j d d d |  t |    sPt  t d  j d  skt  t d  j d   st  t d!  j d  st  t d"  j d  st  t t d! d#   j d  st  t t d" d#   j d  st  d  S('   Ni   ii    iig      ?ig      ?ig      iig  z\Ai   i   i   i
   iI   i jh i2   i<   t   roundingt   dt   ui'  i   y                y              @g      Yg@o.>Vg?g^s?gKH9gKHgWw'&l7y      @        y      @      @y            @(	   R   R   t   altzetaR   R
   t   logR   R2   R   (   t   s(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_altzeta   s8    	!#'11$c          C   s  d t  _ t t  d k s! t  d t  _ t d  j d  sE t  t d t  j d  sd t  d t  _ t d	  }  d t  _ t |  d  d
 k s t  t t d d t d k s t  t d d t d k s t  t t d  d k s t  t d  d k st  d  S(   Ni   i   i2   id   s6   1.0000000000000000000000000000007888609052210118073522i(   s6   1.0000000000000000000000000000000000000148407238666182i'  i  s   1.02363019598118e-9934i  R5   i  (	   R   R   R2   R$   R   R
   R   R   R   (   t   v(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_zeta_huge>  s    				"c          C   so   d t  _ t d }  d t  _ t t |    d k s; t  d t  _ t t |    d k sb t  d t  _ d  S(	   Ni   i
   i(   i   s=   2.55880492708712e+1233536161668617575553892558646631323374078i2   s`   2.5588049270871154960875033337384432038436330847333e+1233536161668617575553892558646631323374078l	        Ozpc(   R   R   R   R   R2   R   (   t   a(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_zeta_negativeM  s    			c          C   s\  d t  _ d   }  d   } |  d  t d d  k oG t d  k n sR t  |  t  j d  sm t  |  t  j d  s t  |  t d  j d	  s t  |  t t  j d.  s t  |  t t  j d/  s t  t |  d  j d  st  |  d  j d  s!t  |  d  j d  s<t  |  d0  j d1  sWt  |  d2  j d3  srt  |  t	  t	 k st  | t	  d k st  t d t	  d k st  | t  j d  st  | t  j d  st  | t t  j d4  st  | t t  j d5  s3t  d6 t d" d d  t t  j d7  sat  |  d d  t t  j d8  st  t
 |  t   st  t
 |  t	   st  |  d'  j d(  st  |  d9  j |  d   st  |  d:  j d;  st  t
 t d t d t	    s4t  t
 t d t d t    sXt  t
 t d t d t	    s}t  t
 t d t d t	    st  t
 t d t d t    st  t
 t d t d t	    st  t
 t d t t	 t	    st  t
 t d t t t    s2t  t
 t d t t	 t	    sXt  d  S(<   Ni   c         S   s   t  d |   S(   Ni    (   t   psi(   t   z(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   <lambda>X  s    c         S   s   t  d |   S(   Ni   (   R@   (   RA   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyRB   Y  s    i   i    guTE?g,$7@i   gdGDE@g)\Z[?y        ÕޛD?gbabJr?y        N<@g?Vcb?g|=g& _gWw'&l7g\)c=y        |=gF<	 _y            _Ay        Ww'&l7g\)c-y        \)c-Hi   ga#?g^jJ@gY/?y        I?gϐ=ӿy        {?i
   i   i   gy        hVK?g_%F@y        @K?g      Yg69u@y                iy              @g]vCq@y        ˼@y)\Z[?ÕޛD?ybabJr?N<y|=|=yF<	 _    _AyWw'&l7Ww'&l7y\)c-ȥ\)c-HyY/?Iyϐ=ӿ{?i@B yhVKٿy_%F@@K?y      @        y      Y      @y]vCq@˼@(   R   R   R@   t   digammaR   R   R
   R*   t   findrootR$   R   R   R   (   t   psi0t   psi1(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_polygammaV  sJ    			7   .'!$$%$$%$$c           C   sO   d t  _ t t d t   d k s* t  t t d t   d k sK t  d  S(   Nid   i    sf   0.9772133079420067332920694864061823436408346099943256380095232865318105924777141317302075654362928734i
   sf   -12.98876181434889529310283769414222588307175962213707170773803550518307617769657562747174101900659238(   R   R   R   R@   R   R   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_polygamma_high_prec  s    	!c          C   sp  d t  _ d   }  d   } d   } |  d  j t d t d   sN t  |  d  j t  sj t  | d  j d t d  s t  | d  j t d d  s t  | d	  j t d d
 t  s t  | d  j d t  s t  d t  _ d t d t	 d  t d } d t  _ t
 d d d  j |  sJt  t
 d d  j t d  slt  d  S(   Ni   c         S   s   t  d |   S(   Ni    (   R@   (   RA   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyRB     s    c         S   s   t  d |   S(   Ni   (   R@   (   RA   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyRB     s    c         S   s   t  d |   S(   Ni   (   R@   (   RA   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyRB     s    g      ?i   i   i   g      ?i   ii   iJi   i   i   g      @(   R   R   R
   t   eulerR9   R   R   t   catalant   aperyR   R@   (   RE   RF   t   psi2R7   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_polygamma_identities  s    				*##'	 	"c          C   s   d   }  d t  _ d t d d  } d t d d  } |  d |  |  d |  |  d d |  |  d d |  } d t t d t d  t  } | j |  s t  d	 t  _ d  S(
   Nc         S   s   t  d |   S(   Ni    (   R@   (   RA   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyRB     s    i2   ii   i   i   g      ?g      i   (   R   R   t   fractionR   t   sechR   R
   R   (   RE   R>   t   bt   xt   y(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_foxtrot_identity  s    		C"c           C   s  d t  _ t t d t   d k s* t  t t d t d t   d k sS t  t t d t d t t   d k s t  d t  _ t t d t   d k s t  t t d t d t   d	 k s t  t t d t d t t   d
 k s t  d  S(   Nid   i2   sf   -1344100348958402765749252447726432491812.641985273160531055707095989227897753035823152397679626136483i   sw   -0.00000000000000000189793739550804321623512073101895801993019919886375952881053090844591920308111549337295143780341396s   (-0.00000000000000005225169411521692489752254721556835657523758895106315132447859377385233700094871256507814151956624433 - 0.00000000000000001813157041407010184702414110218205348527862196327980417757665282244728963891298080199341480881811613j)i   s   -1.34410034895841e+39s   -1.89793739550804e-18s.   (-5.2251694115217e-17 - 1.81315704140701e-17j)(   R   R   R   R@   R   R   t   eR*   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_polygamma_high_order  s    	!)-	!)c           C   s*  d t  _ t d  d k s! t  t d  d k s9 t  t d  d k sQ t  t d  j d d d d d  s| t  t d  j d	  s t  t d  j d  s t  t d  j d d t d   s t  t t  t k s t  t d  d k st  t d  j d  s&t  d  S(   Ni   i    i   i   g      ?i   g      ?i
   g_b7@i  gS@g      ?y                y               @gk4q?y        @w?I T   l                                                                                                                                        3qvNhiKaKP"q!a0mvK0<tI	D[7fjwld:,"PS^g2$({P_RUvD9{)PAnfYD85 PgH#qEgSd27}W>Yy{A\<	zkZ p+*eX9Ei/\;:8bG((ema! 6o}Zs'%COd
YP][BTvWL?FCh_"!x"'jj4xoCD<Y#!*vYyv#eJU>+i[9*-Jc+`S;?lcy y       @        y      ?        y      ?       @yk4q?@w?(   R   R   t   harmonicR   R
   R9   R$   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_harmonic  s    	+)c          C   st   d t  _ t d  d }  d t  _ t t |    d k s@ t  d t  _ t t |    d k sg t  d t  _ d  S(	   Ni  i
   i   i   s   6.26075321389519e+12458010678i2   s@   6.2607532138951929201303779291707455874010420783933e+12458010678I T   (   R   R   R   R   R   R   (   RQ   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_huge_1  s    			c          C   sk   d t  _ t d	  d }  d t  _ t t |    d k s@ t  d t  _ t t |    d k sg t  d  S(
   Ni  i
   id   i   i   sw   1.82341134776679e+51729974693233641689901335581750771368291828240422018860515119656908623426021308685461258226190190661i2   s   1.82341134776678875374414910350027596939980412984e+51729974693233641689901335581750771368291828240422018860515119656908623426021308685461258226190190661l                DGdrY|gOs&YR5I (   R   R   R   R   R   R   (   RQ   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_huge_2  s    			c          C   s   d t  _ d d t d }  d t  _ t |   } t | j  d k sK t  t | j  d	 k sf t  d
 t  _ t |   } t | j  d k s t  t | j  d k s t  d  S(   Ni  i
   iP   i   iF   i   i   se   -6.82925203918106e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600sd   8.54647143678418e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600i2   s   -6.8292520391810548460682736226799637356016538421817e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600s   8.5464714367841748507479306948130687511711420234015e+2636286142112569524501781477865238132302397236429627932441916056964386399485392600l              X3YQcJ1H}Zl   UU*UU*UU
HfH!nem2HYI)HZ
N_?l            $rApD+$NukC<G-: (   R   R   R*   R   R   t   realR   t   imag(   RQ   RR   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_huge_3  s    			c          C   sa   d }  d t  _ t t |    d k s- t  d t  _ t t |    d k sT t  d t  _ d  S(   Ni  y             v@i   s2   (8.95783268539713e+5164 - 1.94678798329735e+5164j)i2   sx   (8.9578326853971339570292952697675570822206567327092e+5164 - 1.9467879832973509568895402139429643650329524144794e+5164j)y      @     v@(   R   R   R   R   R   (   RQ   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_huge_4  s    		c          C   s   d t  _ d t d }  d t  _ t |   } t | j  d k sG t  t | j  d k sb t  d t  _ t |   } t | j  d	 k s t  t | j  d
 k s t  d t  _ d  S(   Ni  i
   i<   i   i   sO   -3.27753899634941e-227396058973640224580963937571892628368354580620654233316839sN   -7.1519888950416e-227396058973640224580963937571892628368354580620654233316841i2   sr   -3.2775389963494132168950056995974690946983219123935e-227396058973640224580963937571892628368354580620654233316839sr   -7.1519888950415979749736749222530209713136588885897e-227396058973640224580963937571892628368354580620654233316841l           %!1Dh^09t (   R   R   R*   R   R   RZ   R   R[   (   RQ   RR   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_huge_5  s    			c          C   s   d t  _ d t t d  d }  d t  _ t |   } t | j  d k sQ t  t | j  d k sl t  d t  _ t |   } t | j  d k s t  t | j  d	 k s t  d  S(
   Nid   i   i
   i  i   s   2.0s   1.84556867019693e-1000i2   s9   1.8455686701969342787869758198351951379156813281202e-1000(	   R   R   R*   R   R   R   RZ   R   R[   (   R>   RR   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_gamma_huge_7  s    			c           C   s  d t  _ t d  j t 
 s% t  d t  _ t d  j d  sI t  t d  j d  sd t  t d  j d	  s t  t d
  j d  s t  d t  _ t d  j d  s t  t d  j d  s t  t d  j d  s t  t d
  j d  st  d  S(   Ni   i    i   i   s    -0.07281584548367672486058637587i   s!   -0.009690363192872318484530386035i   s    0.002053834420303345866160046543i   s    0.002325370065467300057468170178g*gF|؃gT3`?g;c?(   R   R   t	   stieltjesR
   RI   R   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_stieltjes  s    			c       	   C   sm  d t  _ t d  t d  k o, d k n s7 t  g  t d  D] }  t |   ^ qD d d d d d d	 d
 d g k s t  t t d   d k s t  t t t   s t  t t t   s t  t t	 t   s t  t t
  t
 k s t  t t
  t
 k st  t	 t
  t
 k s.t  t t t
   sGt  t d  j d  sbt  t d  j d  s}t  g  t d  D] } t	 |  ^ qd d d d d d d g k st  g  t d d d  D] } t	 |  ^ qd d d d d d d g k st  t d   } | d k r6t | t  s<t  t	 d!  } | d k rct | t  sit  d  S("   Ni   i    ii   i   i   i   i   i   i {I  3   i  s   3.24570818422368e+1177245gffffff?gd?y              @ggƿy        1?i   i   il   i l  i \&I    iii iy                y       @      @ygƿ1?y              y              (   R   R   t   barnesgR   R   t   superfacR   R   R   t   hyperfacR$   R
   t
   isinstanceR   (   R!   R%   R>   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_barnesg  s&    	.IFL!c       
   C   s  d t  _ g  d d d d d d d d1 g D] }  t |   ^ q( } x7 | D]/ }  t d |   j t d |    sG t  qG Wx4 | D], }  t d |   j |  d |   s t  q Wx8 | D]0 }  t d |   j |  d |  d  s t  q Wx@ | D]8 }  t d |   j |  d |  d |  d	  s t  q WxL | D]D }  t d |   j |  d d |  |  d d |  d  s6t  q6Wt d	 d  j d2  st  t d	 d  j d  st  t d d  j d  st  t d d  j d  st  t d d  j d3  st  t d d  j d4  s2t  t d d  j d   sPt  t d d t t   j d5  sxt  t d d  j d#  st  t d d  j d$ d%  st  t d	 d  j d&  st  t d d  j d'  st  t d d  j d(  st  t d t d	 d t d  j d6  s@t  t d7 d  j t	 d8   sdt  t d9 d  j t
 d:   st  t d+ d,  j d-  st  t d+ d.  j d;  st  d  S(<   Ni   i    g      ?gGz?i   g      iy              ?i   y              @i   ii   iii   g[-F@y        U޴@ig!fGg?gV?ggy        ?g#]ſy        `j?g?g8n+Yd?y        ^n)?ggᾁgp/M?y        []?i  ig     ˺@g=.g?i2  g-C6zgB8$P?y        g ?g      ?gtHgWcFi   gQ y        K1Q @y      @      @y[-F@U޴y#]ſ`j?y8n+Yd?^n)ӿyp/M?[]?yB8$P?g ?y      @      @y      @      @y      @      @y      @      @yQ K1Q (   R   R   t	   mpmathifyt   polylogR
   R9   R   R   R*   R2   R8   (   RA   t   zs(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_polylog3  s<    	7 - * . 6 B(".$%c           C   s  d t  _ t d d  d" j d  s+ t  t d d  d# j d  sM t  t d d	  j d$  sk t  t d d  j d  s t  t d d  d k s t  t d d  d k s t  t d d  d k s t  t d t  d k s t  t d t  d k st  t t d t   s,t  t d d  d k sGt  t d d  d k sbt  t d t  t k s}t  t d t  t k st  t t d t   st  t d d  d k st  t d d  d k st  t d  d k st  t d d  d k st  t d d  d k s9t  t d d  d k sTt  t d d  j d  srt  d t  _ t d d  d k st  t d d  d k st  t d  d k st  d t  _ t d d  d% k st  t d! d  j t	 t
 d!   st  d  S(&   Ni   i    g|=i
   go   ?i   g8   ?i   y              @gy        )fɳ?@ig      @g*
0(@i   i   i ii ii0i2   s   3.4746902914629720259e74iP   l   vreh@3 VBFv'r.y	UR|s&T i(   l   .e0u&Y:j+I<1 |6vJb iJ   l   rw_3dtL#m,`3	.v(*A=V y              4@IH  y         (3VjwBg      ?I T   I T   y)fɳ?@y @j#MB (3VjwB(   R   R   t   polyexpR
   R   t   bellR$   R   R   t   sincR   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_bell_polyexpO  s<    	""		c           C   s   d t  _ t d  j d	  s$ t  t d  j d  s? t  t d  t k sW t  t t  d k so t  t t t   s t  d  S(
   Ni   g?g2k?y        -DT!	@i   gMҵ?i   i    y2k?-DT!	@(   R   R   t	   primezetaR
   R   R$   R   R   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_primezetau  s    	c          C   s  d t  _ t d-  j d.  s$ t  t d/  j d0  s? t  t d1 d
 d j d2  s` t  t d3 d
 d j d4  s t  t d5 d
 d j d6  s t  t d7 d
 d j d8  s t  d d  }  |  t j d9  d:  s t  |  t j d;  d<  st  |  t j d=  d>  s)t  |  t j d? d
 d d@  sMt  |  t j dA  dB  skt  |  t j dC d
 d dD  st  |  t j dE d
 d dF  st  |  t j dG d
 d dH  st  |  t j dI d
 d dJ  st  |  t j dK d
 d" dL  st  |  t j dM d
 d dN  sCt  |  t j dO d
 d dP  sgt  |  t j dQ d
 d dR  st  |  t j dS d
 d" dT  st  d  S(U   Ni   g      ?y             j@g& 6#+?y        @g      ?g5g?y        7-m^I?y            .At
   derivativei   g@y        V%<@i   gˇD@y        -2@gV!y        V1?g.F'@y        	p 1@gư>c         S   s   t  |  |  | t  |  k  S(   N(   R(   (   RQ   RR   t   tol(    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyR
     s    gz?y        ی^p@g$P?y        ?g,ς?%@y        lUS>@i   gԂ]y        5MԺ$k@g!&@y        \_U@i   g(1Sy        g@g-6ڿy        +~@g"虺m"y        '=UA@gِ@[@y        Mom@gkLVyy        "DЫ@y      ?     j@y& 6#+?@y      ?     j@y5g?7-m^I?y      ?    .Ay@V%<y      ?    .AyˇD@-2y      ?    .AyV!V1y      ?    .y.F'@	p 1@y      ?     jy& 6#+?y      ?     jy5g?7-m^Iy      ?    .Ayz?ی^p@y      ?    .Ay.F'@	p 1y      ?    .Ay$P??y      ?    .AyV!V1y      ?     j@y,ς?%@lUS>y      ?     j@yԂ]5MԺ$k@y      ?     j@y!&@\_Uy      ?     j@y(1Sg@y      ?     j@y-6ڿ+~y      ?     j@y"虺m"'=UA@y      ?     j@yِ@[@Momy      ?     j@ykLVy"DЫ@(   R   R   R2   R
   R   t   fp(   R
   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_rs_zeta}  s,    	!!!!$$$$$$$$$c           C   s   d t  _ t d  j d  s$ t  t d d d j d  sE t  t d d d j d  sf t  t d t d d	 j d  s t  d  S(   Ni   i g1/[㳄@Rq   i   gKKi   gFhnqi   gQ1@y        a߻w@yQ1@a߻w(   R   R   t   siegelzR
   R   R*   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_siegelz  s
    	!!c          C   sx  d t  _ t d d d t }  t d d d t } t d d d t } t |   j d  sc t  t |  j d  s~ t  t |  } | j j d	  s t  | j j d
  s t  d t  _ t d d d t }  t d d d t } t d d d t } t |   j d  st  t |  j d  s8t  t |  } | j j d  s\t  | j j d  stt  d  S(   Ni   i   s   1e-10t   exacts   -1e-10s   1e-10jg# _Bga_gox?g    _i   s   1e-50s   -1e-50s   1e-50jt   1e50s   -1e50s4   0.57721566490153286060651209008240243104215933593992(	   R   R   t   faddt   TrueR2   R
   R   RZ   R[   (   t   s1t   s2t   s3RA   (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   test_zeta_near_1  s$    		N(#   t   mpmatht   mpmath.libmpR   R   R   R   R   R   R"   R&   R1   R4   R;   R=   R?   RG   RH   RM   RS   RU   RW   RX   RY   R\   R]   R^   R_   Ra   Rf   Rj   Rn   Rp   Rt   Rv   R~   (    (    (    s:   lib/python2.7/site-packages/mpmath/tests/test_gammazeta.pyt   <module>   s>   
		-	g	'	
	1	#					)																&				