| Home > Publications database > How to compute a special function with near machine-precision accuracy > print |
| 001 | 1040612 | ||
| 005 | 20250324202210.0 | ||
| 037 | _ | _ | |a FZJ-2025-01961 |
| 100 | 1 | _ | |a Wuttke, Joachim |0 P:(DE-Juel1)131044 |b 0 |u fzj |
| 111 | 2 | _ | |a 5th conference for Research Software Engineering in Germany |c Karlsruhe |d 2025-02-25 - 2025-02-27 |w Germany |
| 245 | _ | _ | |a How to compute a special function with near machine-precision accuracy |
| 260 | _ | _ | |c 2025 |
| 336 | 7 | _ | |a Conference Paper |0 33 |2 EndNote |
| 336 | 7 | _ | |a Other |2 DataCite |
| 336 | 7 | _ | |a INPROCEEDINGS |2 BibTeX |
| 336 | 7 | _ | |a conferenceObject |2 DRIVER |
| 336 | 7 | _ | |a LECTURE_SPEECH |2 ORCID |
| 336 | 7 | _ | |a Conference Presentation |b conf |m conf |0 PUB:(DE-HGF)6 |s 1742798975_20755 |2 PUB:(DE-HGF) |x Other |
| 520 | _ | _ | |a 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. |
| 536 | _ | _ | |a 6G4 - Jülich Centre for Neutron Research (JCNS) (FZJ) (POF4-6G4) |0 G:(DE-HGF)POF4-6G4 |c POF4-6G4 |f POF IV |x 0 |
| 536 | _ | _ | |a 632 - Materials – Quantum, Complex and Functional Materials (POF4-632) |0 G:(DE-HGF)POF4-632 |c POF4-632 |f POF IV |x 1 |
| 650 | 2 | 7 | |a Others |0 V:(DE-MLZ)SciArea-250 |2 V:(DE-HGF) |x 0 |
| 650 | 1 | 7 | |a Information and Communication |0 V:(DE-MLZ)GC-120-2016 |2 V:(DE-HGF) |x 0 |
| 693 | _ | _ | |0 EXP:(DE-MLZ)SCG-20150203 |5 EXP:(DE-MLZ)SCG-20150203 |e SCG: Scientific Computing Group |x 0 |
| 909 | C | O | |o oai:juser.fz-juelich.de:1040612 |p VDB:MLZ |p VDB |
| 910 | 1 | _ | |a Forschungszentrum Jülich |0 I:(DE-588b)5008462-8 |k FZJ |b 0 |6 P:(DE-Juel1)131044 |
| 913 | 1 | _ | |a DE-HGF |b Forschungsbereich Materie |l Großgeräte: Materie |1 G:(DE-HGF)POF4-6G0 |0 G:(DE-HGF)POF4-6G4 |3 G:(DE-HGF)POF4 |2 G:(DE-HGF)POF4-600 |4 G:(DE-HGF)POF |v Jülich Centre for Neutron Research (JCNS) (FZJ) |x 0 |
| 913 | 1 | _ | |a DE-HGF |b Forschungsbereich Materie |l Von Materie zu Materialien und Leben |1 G:(DE-HGF)POF4-630 |0 G:(DE-HGF)POF4-632 |3 G:(DE-HGF)POF4 |2 G:(DE-HGF)POF4-600 |4 G:(DE-HGF)POF |v Materials – Quantum, Complex and Functional Materials |x 1 |
| 914 | 1 | _ | |y 2025 |
| 920 | _ | _ | |l yes |
| 920 | 1 | _ | |0 I:(DE-Juel1)JCNS-4-20201012 |k JCNS-4 |l JCNS-4 |x 0 |
| 920 | 1 | _ | |0 I:(DE-Juel1)JCNS-FRM-II-20110218 |k JCNS-FRM-II |l JCNS-FRM-II |x 1 |
| 920 | 1 | _ | |0 I:(DE-588b)4597118-3 |k MLZ |l Heinz Maier-Leibnitz Zentrum |x 2 |
| 980 | _ | _ | |a conf |
| 980 | _ | _ | |a VDB |
| 980 | _ | _ | |a I:(DE-Juel1)JCNS-4-20201012 |
| 980 | _ | _ | |a I:(DE-Juel1)JCNS-FRM-II-20110218 |
| 980 | _ | _ | |a I:(DE-588b)4597118-3 |
| 980 | _ | _ | |a UNRESTRICTED |
| Library | Collection | CLSMajor | CLSMinor | Language | Author |
|---|