Numerical evaluation of derivatives of Hurwitz zeta function

270 Views Asked by At

I am looking a an efficient algorithm to compute in C derivatives of the Hurwitz zeta function $$ \zeta^{(n)}(s,a) = (-1)^{n} \sum_{k=0}^\infty \frac{\log^{n}(k+a)}{(k+a)^{s}} . $$ for $1<s$ and $0<q$.

(This question is related to the previous question Numerical evaluation of Hurwitz zeta function .)

2

There are 2 best solutions below

2
On

$$\sum_{k\geq 0}\frac{1}{(k+a)^s} \stackrel{\mathcal{L}^{-1}}{=}\frac{1}{\Gamma(s)}\int_{0}^{+\infty}\frac{e^{(1-a)u}u^{s-1}}{e^u-1}\,du $$ so $$ (-1)^n \sum_{k\geq 0}\frac{\log(k+a)^n}{(k+a)^s} = \frac{1}{\Gamma(s)}\int_{0}^{+\infty}\frac{e^{(1-a)u}u^{s-1}\log(u)^n}{e^u-1}\,du $$ and any accurate algorithm for numerical integration can do the job.

0
On

If you can handle working in C++ rather than C, use the Chebyshev transform in Boost.Math. You will need a way of evaluate the Hurwitz zeta function to compute its value at the Chebyshev nodes, but once you do, you'll get a stable method of numerical differentiation via differentiating the associated Chebyshev series.