Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

The input


gives 0 even when s0 is a root. For example, from LMFDB, I found s0 = 0.5 + 1.51608375316006 I is an approximate root of DirichletL(19,10,s). (In LMFDB this character is actually indexed 18, though.)

For the Riemann zeta function, we can get around this by using ZetaZero[1] to represent s0. What can be done for other $L$-functions?

share|improve this question
what is LMFDB?....from help it says about Residue Laurent expansion of expr. What is the Laurent expansion of 1/DirichletL[19,10,s]? does it have a Laurent expansion? – Nasser Feb 25 '14 at 3:20
LMFDB is a database of information about $L$-functions and related structures: DirichletL[19,10,s] is a specific $L$-function, $L(\chi,s)$, where the modulus of the Dirichlet character $\chi$ is $19$. It has a simple zero at s0, so it's reciprocal should have a pole there (and therefore a Laurent expansion). – A l'Maeaux Feb 25 '14 at 3:30
This...and this.. might be of help. You can calculate the steps manually to gain better understanding. – Rorschach Feb 25 '14 at 3:47
up vote 3 down vote accepted

You can use Cauchy's theorem.

Define the approximate zero of your function :

zero = FindRoot[DirichletL[19, 10, s], {s, 0.5 + I}][[1, 2]]
(* 0.5 + 1.51608 I *) 

Series will not consider this a pole of 1/DirichletL[19, 10, s] and I think this is why you get a zero residue.

However, integrating on a small square around that pole one finds :

       NIntegrate[1/DirichletL[19, 10, s], 
         {s, zero + eps (1+I), zero + eps (-1+I), zero + eps (-1-I), 
             zero + eps (1-I), zero + eps (1+1 I)}]/(2 Pi I)}, 
 {eps, 10^Range[0., -5, -1] }]

enter image description here

Same for the Zeta function as a check :

Residue[1/Zeta[s], {s, ZetaZero[1]}] // N
(* 1.2451 - 0.198218 I *)

         {s, ZetaZero[1] + eps (1+I), ZetaZero[1] + eps (-1+I), 
             ZetaZero[1] + eps (-1-I), ZetaZero[1] + eps (1-I), 
             ZetaZero[1] + eps (1+I)}]/(2 Pi I)}, 
{eps, 10^Range[0, -5, -1] }]

enter image description here

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.