Skip to content

HurwitzZeta

The Hurwitz zeta function for , continued analytically elsewhere. Provided by `@enumeratio/analytic`.

WikipediaHurwitz zeta functionMathWorldHurwitzZetaFunctionWikidataQ1638777DLMF25.11.E1FungrimHurwitzZetaFungrim entryWolfram LanguageHurwitzZeta!
HurwitzZeta(s, a)the Hurwitz zeta function .

Domain: Special functions

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

referenceenginenotatio

The 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.

nativeenginetypescriptpackages/analytic/src/hurwitz-zeta.ts

Euler–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).

compiledgpuwgslpackages/analytic/src/shader.ts:zetaWGSL

Produces a colour per pixel — complex ζ(s, a), domain-coloured.

mappedexternalwolfram / mpmathpackages/oracle/src/mappings.ts

HurwitzZeta[s, a]; mpmath.zeta(s, a).

See also: Zeta, BernoulliB, Gamma, Digamma