Plotting poly logarithmic function

asked 2020-05-22 19:24:17 +0100

updated 2020-05-24 09:09:15 +0100

FrédéricC gravatar image

I am trying to plot the below function $$f(s,t) := \frac{(2\pi)^{s}}{\Gamma(s)}\;polylog(-s,e^{-2\pi t})$$ in the range $(s,t) \in (k,\infty) \times (1,\infty)$ where $k$ is a fixed positive real number. Thus, for my purposes, it is a real valued function on (subset of ) $R^2$. (Although, the function $polylog(s,z)$ is known to be complex analytic with respect to both s and z for arbitrary complex numbers s and $|z|<1$.)

Following is the code which is working fine in sage Cell server for smaller values of s.

s,z,t=var('s,z,t')
z(t) = exp(-2*pi.n()*t)
plot3d(((2*pi)^s)/gamma(s)*polylog(-s,z(t)),(s,10,150.1),(t,1,100))

However, the same code fails when I run larger values of $s$, even 200. I need to study the limiting behaviour of this function in terms of both parameters. Can someone tell me how to work around this "math range error"? PS I am new to Sage.

s, z, t = var('s,z,t')
z(t) = exp(-2*pi.n()*t)
plot3d(((2*pi)^s)/gamma(s)*polylog(-s,z(t)),(s,10,1500.1),(t,1,100))

opt/sagemath-9.0/local/lib/python3.7/site-packages/sage/repl/rich_output/display_manager.py:592: RichReprWarning: Exception in _rich_repr_ while displaying object: math range error
  RichReprWarning,
edit retag flag offensive close merge delete

Comments

The function is getting very close to zero when s and t gets bigger:

sage: f = ((2*pi)^s)/gamma(s)*polylog(-s,z(t))
sage: f(s=1500.1,t=100).n()
2.24050143357682e-3009

Maybe the exponents get so big that the plot method can not handle it? (that would be a bug)

Sébastien gravatar imageSébastien ( 2020-05-26 19:05:54 +0100 )edit