#20127: zetaderiv: numerically unstable
-------------------------------------+-------------------------------------
Reporter: behackl | Owner:
Type: defect | Status: new
Priority: major | Milestone: sage-7.1
Component: numerical | Resolution:
Keywords: | Merged in:
Authors: Benjamin Hackl | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/behackl/symbolic/test_relation/noconvergence|
4ddf10c1c65acabc21bae40d80b51735cf26be24
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by fredrik.johansson):
Arb can compute derivatives of the zeta function without difficulty. E.g.
with my own python-flint interface, I can do
{{{
>>> ctx.cap = 10
>>> acb_series([-600,1]).zeta()
([7.82232679749e+928 +/- 8.22e+916])*x + ([-3.56689160315e+929 +/-
4.12e+917])*x^2 + ([7.8112800125e+929 +/- 5.34e+918])*x^3 +
([-1.08969439943e+930 +/- 6.02e+918])*x^4 + ([1.07928682824e+930 +/-
9.55e+918])*x^5 + ([-7.957487571e+929 +/- 4.23e+919])*x^6 +
([4.390792240e+929 +/- 6.15e+919])*x^7 + ([-1.700332217e+929 +/-
6.11e+919])*x^8 + ([3.04336993e+928 +/- 6.00e+919])*x^9 + O(x^10)
}}}
which takes 0.1 milliseconds.
This would be easier to wrap with a Sage wrapper for Arb power series in
place, but it should not be too hard to do directly either: see
`acb_poly_zeta_series` and `arb_poly_zeta_series`.
In the left half plane, `mpmath.diff(mpmath.zeta, s, n)` could also be
used instead of `mpmath.zeta(s, 1, n)`.
It's a bit worrying that `zetaderiv` currently accepts CIF input and
outputs a *nonrigorous* CIF without warning, by going through a plain
numerical computation. It is easy to produce examples where the output is
plain *wrong*:
{{{
sage: q = CIF("2.46316186945432128587439505331",
"23.2983204927628579020109616266")
sage: zetaderiv(1,q)
-3.8826886735960628?e-17 - 7.4180200774526877?e-17*I
sage: q = ComplexIntervalField(128)("2.46316186945432128587439505331",
"23.2983204927628579020109616266")
sage: zetaderiv(1,q)
2.809208149461043895562049836274827424167?e-31 +
4.678424144202694674839595616043132108038?e-32*I
}}}
Are there other Sage functions that treat intervals as carelessly?
--
Ticket URL: <http://trac.sagemath.org/ticket/20127#comment:14>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.