HurwitzZeta
The Hurwitz zeta function
Hurwitz zeta functionMathWorldHurwitzZetaFunctionWikidataQ1638777DLMF25.11.E1FungrimHurwitzZeta✓Fungrim entryWolfram LanguageHurwitzZeta!HurwitzZeta(s, a)the Hurwitz zeta function Details
- Generalizes the Riemann zeta:
, and for a positive integer (so ). - Nonpositive integer
: , a Bernoulli polynomial in -- so and . See BernoulliB. - Pole at
: for every . - Poles at
: the term is singular. (The two-argument Zeta drops that term instead, staying finite there.) - Numeric evaluation (under N()) is Euler–Maclaurin summation and supports complex
and ; it is aligned with Wolfram's .
Examples
Implementation
notatioThe Dirichlet series, on the principal branch — written exp(−s·ln(n+a)) so the wildcards arrive in the head's own order. It converges only for Re(s) > 1; everywhere else ζ(s, a) is its analytic continuation, which is what the kernel computes.
typescriptpackages/analytic/src/hurwitz-zeta.tsEuler–Maclaurin in double precision — the fast path, and all a double holds. Asked for more digits than that, N() leaves it: at an integer s ≥ 2 with real a > 0 it takes ζ(n, a) = (−1)ⁿψ⁽ⁿ⁻¹⁾(a)/(n−1)! through compute-engine's PolyGamma, and otherwise (real s ≠ 1, real a > 0) it evaluates the SAME Euler–Maclaurin written as an expression — a finite Sum over Power, Pochhammer and BernoulliB, which compute-engine carries to whatever precision was asked for (packages/analytic/src/precise.ts).
wgslpackages/analytic/src/shader.ts:zetaWGSLProduces a colour per pixel — complex ζ(s, a), domain-coloured.
wolfram / mpmathpackages/oracle/src/mappings.tsHurwitzZeta[s, a]; mpmath.zeta(s, a).
See also: Zeta, BernoulliB, Gamma, Digamma