% IMPORTANT: The following is UTF-8 encoded. This means that in the presence
% of non-ASCII characters, it will not work with BibTeX 0.99 or older.
% Instead, you should use an up-to-date BibTeX implementation like “bibtex8” or
% “biber”.
@INPROCEEDINGS{Wuttke:1040612,
author = {Wuttke, Joachim},
title = {{H}ow to compute a special function with near
machine-precision accuracy},
reportid = {FZJ-2025-01961},
year = {2025},
abstract = {Based on my experience as developer and maintainer of some
numerical open-source libraries (libcerf, libkww,
libformfactor), I will explain key concepts for writing code
that computes a special function or integral with high
accuracy and high speed.- Choose different numerical
algorithms for different argument regions.- Don't be afraid
of divergent series or ill-conditioned recursions. - Confine
Chebyshev fits to small subregions. - Use code
instrumentation and bisection to ensure continuity where the
algorithm changes. - Beware of literature that is only
concerned with truncation. Near machine precision,
cancellation is the bigger problem. Visualization may reveal
the difference. - Never rely on non-standard facilities.
"Long double" makes no sense if it is not longer than
"double"? Tell Apple. - Generate test references and
hard-coded coefficients with high-precision scripts (e.g.
mpmath based). - Be graceful with relative accuracy measures
near zeros and for real or imaginary parts of complex
numbers.- Don't trust any performance measure you haven't
tweaked yourself. Take caching into account.},
month = {Feb},
date = {2025-02-25},
organization = {5th conference for Research Software
Engineering in Germany, Karlsruhe
(Germany), 25 Feb 2025 - 27 Feb 2025},
subtyp = {Other},
cin = {JCNS-4 / JCNS-FRM-II / MLZ},
cid = {I:(DE-Juel1)JCNS-4-20201012 /
I:(DE-Juel1)JCNS-FRM-II-20110218 / I:(DE-588b)4597118-3},
pnm = {6G4 - Jülich Centre for Neutron Research (JCNS) (FZJ)
(POF4-6G4) / 632 - Materials – Quantum, Complex and
Functional Materials (POF4-632)},
pid = {G:(DE-HGF)POF4-6G4 / G:(DE-HGF)POF4-632},
experiment = {EXP:(DE-MLZ)SCG-20150203},
typ = {PUB:(DE-HGF)6},
url = {https://juser.fz-juelich.de/record/1040612},
}