Skip to content

Sudden Loss/Reset of Precision in Bessel Functions #360

@fingolfin

Description

@fingolfin

On Nemocas/Nemo.jl#954 there is a report for some loss/reset of precision in the besselk, bessely and besselj (while besseli seems to be unaffected).

In short, besselk(2.0, 57.9668555791947111700112064539202300037282162) is evaluated for various precisions; notice the jump from precision 110 to 120:

(p, besselk) = (100, 1.13687286812830688844382559e-26)
(p, besselk) = (110, 1.13687286812830688844382558995e-26)
(p, besselk) = (120, [+/- 1.19e-9])
(p, besselk) = (130, [+/- 1.17e-12])
(p, besselk) = (140, [+/- 1.18e-15])
(p, besselk) = (150, [+/- 1.15e-18])
(p, besselk) = (160, [+/- 1.14e-21])
(p, besselk) = (170, [+/- 1.13e-24])
(p, besselk) = (180, 1e-26)
(p, besselk) = (190, 1.137e-26)
(p, besselk) = (200, 1.136873e-26)
(p, besselk) = (210, 1.136872868e-26)
(p, besselk) = (220, 1.136872868128e-26)
(p, besselk) = (230, 1.136872868128307e-26)
(p, besselk) = (240, 1.136872868128306888e-26)
(p, besselk) = (250, 1.136872868128306888444e-26)

Further examples for bessely and besselj can be found at the Nemo issue I linked above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions