from qnm.schwarzschild.tabulated import QNMDict
schwarzschild = QNMDict(init=True)
schwarzschild(-2, 2, 0)[0]The generator solves Leaver's continued-fraction equation [1] by Newton iteration on the real and imaginary parts. The right infinite tail is evaluated by capped modified Lentz iteration as in [4], and each stored entry is the complex rectangle spanned by two computations.
Most rows use 50 decimal working digits with tail tolerance $10^{-10}$ and 70 decimal working digits with tail tolerance $10^{-12}$. The scalar monopole row uses 60 decimal working digits with tail tolerance $10^{-10}$ and 80 decimal working digits with tail tolerance $10^{-12}$ because its continued-fraction tail converges more slowly. The generator uses the Dolan-Ottewill expansion [5] only for initial guesses, compares every stored row with the Black Hole Perturbation Toolkit qnm cache [6] [3], and compares the diagonal $s=\ell=2$ and $s=\ell=1$ rows with Berti's tabulation [7]. The continued-fraction residuals are used as numerical diagnostics rather than certified error bounds, so the table does not claim proven values.