Generated by docs/reports/accuracies.jl on Julia 1.13.0-DEV.1123.
This report samples a representative subset; it does not cover all available functions.
Errors are measured against a 512-bit BigFloat reference in units of the Double64 working precision, 1 ulp = 2⁻¹⁰⁴ (about 4.9e-32) relative. A worst case of about 1 ulp means the function is as accurate as the format allows.
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
exp | (-100, 100) | 250 | 0.16 | 0.60 |
exp | (-660, -600) | 250 | 0.02 | 0.12 |
expm1 | (-1, 1) | 250 | 0.11 | 0.70 |
log | (0, 100) | 250 | 0.06 | 0.32 |
log | 1 ± 2⁻³¹ | 250 | 0.05 | 1.04 |
log1p | (-1, 1) | 250 | 0.05 | 0.90 |
log2 | (0, 100) | 250 | 0.08 | 0.49 |
log10 | (0, 100) | 250 | 0.67 | 1.02 |
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
sin | (-100, 100) | 250 | 0.02 | 0.23 |
cos | (-100, 100) | 250 | 0.02 | 0.22 |
tan | (-1, 1) | 250 | 0.14 | 0.85 |
sin | near π/2 | 250 | 0.03 | 0.23 |
cos | near π/2 | 250 | 0.07 | 0.48 |
cos | near π | 250 | 0.02 | 0.19 |
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
asin | (-1, 1) | 250 | 0.02 | 0.12 |
acos | (-1, 1) | 250 | 0.02 | 0.12 |
atan | (-100, 100) | 250 | 0.03 | 0.42 |
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
sinh | (-300, 300) | 250 | 0.17 | 0.96 |
cosh | (-100, 100) | 250 | 0.13 | 0.72 |
tanh | (-1, 1) | 250 | 0.13 | 1.16 |
asinh | (-100, 100) | 250 | 0.07 | 0.37 |
asinh | ±2⁻⁴⁰ | 250 | 0.08 | 0.91 |
acosh | (1, 101) | 250 | 0.07 | 0.32 |
acosh | 1 + ε | 250 | 0.12 | 1.09 |
atanh | (-1, 1) | 250 | 0.06 | 0.90 |
atanh | ±2⁻⁴⁰ | 250 | 0.00 | 0.99 |
erf, erfc, and gamma are computed via Float128; its 113-bit significand caps their accuracy at roughly half an ulp of Double64.
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
erf | (-1, 1) | 250 | 0.02 | 0.11 |
erfc | (-1, 1) | 250 | 0.02 | 0.11 |
gamma | (0.1, 10) | 250 | 0.02 | 0.11 |
ellipk | (0, 1) | 250 | 0.11 | 0.70 |
ellipk | 1 - 2⁻²⁰⁻⁵⁰ | 250 | 0.16 | 0.93 |
Matrix routines are checked through their defining identities on random matrices, normalized per matrix dimension. An unavailable row identifies a routine that cannot currently execute for that precision.
| identity | size | samples | median (ulps) | worst (ulps) |
|---|
eigen residual ‖AV−VΛ‖ | 8×8 | 25 | 0.38 | 0.88 |
exp∘log roundtrip | 8×8 | 25 | 1.90 | 3.22 |
sqrt squared | 8×8 | 25 | 2.03 | 3.57 |
sin²+cos²−I | 8×8 | 25 | 6.13 | 13.86 |
Errors are measured against a 512-bit BigFloat reference in units of the Double32 working precision, 1 ulp = 2⁻⁴⁶ (about 1.4e-14) relative. A worst case of about 1 ulp means the function is as accurate as the format allows.
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
exp | (-100, 100) | 230 | 0.03 | 228653268098.46 |
exp | (-660, -600) | 250 | 70368744177664.00 | 70368744177664.00 |
expm1 | (-1, 1) | 250 | 0.02 | 0.12 |
log | (0, 100) | 250 | 0.02 | 0.12 |
log | 1 ± 2⁻³¹ | 250 | 0.00 | 0.01 |
log1p | (-1, 1) | 250 | 0.02 | 0.11 |
log2 | (0, 100) | 250 | 0.03 | 0.13 |
log10 | (0, 100) | 250 | 0.02 | 0.10 |
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
sin | (-100, 100) | 250 | 0.02 | 0.12 |
cos | (-100, 100) | 250 | 0.02 | 0.11 |
tan | (-1, 1) | 250 | 0.02 | 0.12 |
sin | near π/2 | 250 | 0.02 | 0.07 |
cos | near π/2 | 250 | 0.02 | 0.10 |
cos | near π | 250 | 0.01 | 0.06 |
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
asin | (-1, 1) | 250 | 0.02 | 0.11 |
acos | (-1, 1) | 250 | 0.02 | 0.12 |
atan | (-100, 100) | 250 | 0.02 | 0.08 |
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
sinh | (-300, 300) | 80 | 0.03 | 0.13 |
cosh | (-100, 100) | 220 | 0.02 | 0.12 |
tanh | (-1, 1) | 250 | 0.02 | 0.13 |
asinh | (-100, 100) | 250 | 0.02 | 0.11 |
asinh | ±2⁻⁴⁰ | 250 | 0.00 | 0.00 |
acosh | (1, 101) | 250 | 0.02 | 0.12 |
acosh | 1 + ε | 250 | 0.02 | 0.11 |
atanh | (-1, 1) | 250 | 0.02 | 0.12 |
atanh | ±2⁻⁴⁰ | 250 | 0.00 | 0.00 |
erf, erfc, and gamma are computed via Float128; its 113-bit significand caps their accuracy at roughly half an ulp of Double64.
| function | domain | samples | median (ulps) | worst (ulps) |
|---|
erf | (-1, 1) | 250 | 0.02 | 0.10 |
erfc | (-1, 1) | 250 | 0.02 | 0.11 |
gamma | (0.1, 10) | 250 | 0.03 | 0.12 |
ellipk | (0, 1) | 250 | 0.10 | 0.91 |
ellipk | 1 - 2⁻²⁰⁻⁵⁰ | 250 | 0.16 | 0.77 |
Matrix routines are checked through their defining identities on random matrices, normalized per matrix dimension. An unavailable row identifies a routine that cannot currently execute for that precision.
| identity | size | samples | median (ulps) | worst (ulps) |
|---|
eigen residual ‖AV−VΛ‖ | 8×8 | 25 | 0.38 | 0.66 |
exp∘log roundtrip | 8×8 | — | unavailable | unavailable |
sqrt squared | 8×8 | — | unavailable | unavailable |
sin²+cos²−I | 8×8 | 25 | 4.11 | 13.30 |
The unavailable Double32 matrix rows currently require a generic Schur path through Complex{Double32}, which is not supported.