Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext

Tables of Error Rates for all Functions

Table 20.3. Error rates for beta

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Beta Function: Small Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = +INFε (Mean = +INFε) And other failures.)
(Rmath 3.2.3: Max = 1.14ε (Mean = 0.574ε))

Max = 2.86ε (Mean = 1.22ε)

(<cmath>: Max = 364ε (Mean = 76.2ε))

Max = 2.86ε (Mean = 1.22ε)

Max = 2.23ε (Mean = 1.14ε)

Beta Function: Medium Values

Max = 0.978ε (Mean = 0.0595ε)

(GSL 2.1: Max = 1.18e+03ε (Mean = 238ε))
(Rmath 3.2.3: Max = 1.09e+03ε (Mean = 265ε))

Max = 61.4ε (Mean = 19.4ε)

(<cmath>: Max = 1.07e+03ε (Mean = 264ε))

Max = 107ε (Mean = 24.5ε)

Max = 96.5ε (Mean = 22.4ε)

Beta Function: Divergent Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 12.1ε (Mean = 1.99ε))
(Rmath 3.2.3: Max = 176ε (Mean = 28ε))

Max = 8.99ε (Mean = 2.44ε)

(<cmath>: Max = 128ε (Mean = 23.8ε))

Max = 18.8ε (Mean = 2.71ε)

Max = 11.4ε (Mean = 2.19ε)


Table 20.4. Error rates for beta (incomplete)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Incomplete Beta Function: Small Values

Max = 0ε (Mean = 0ε)

Max = 11.1ε (Mean = 2.32ε)

Max = 18.7ε (Mean = 3.19ε)

Max = 9.94ε (Mean = 2.17ε)

Incomplete Beta Function: Medium Values

Max = 0.568ε (Mean = 0.0254ε)

Max = 69.2ε (Mean = 13.4ε)

Max = 174ε (Mean = 25ε)

Max = 90ε (Mean = 12.7ε)

Incomplete Beta Function: Large and Diverse Values

Max = 0.999ε (Mean = 0.0325ε)

Max = 6.84e+04ε (Mean = 2.76e+03ε)

Max = 6.86e+04ε (Mean = 2.79e+03ε)

Max = 633ε (Mean = 29.7ε)

Incomplete Beta Function: Small Integer Values

Max = 0.786ε (Mean = 0.0323ε)

Max = 11.6ε (Mean = 3.6ε)

Max = 51.8ε (Mean = 11ε)

Max = 26ε (Mean = 6.28ε)


Table 20.5. Error rates for betac

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Incomplete Beta Function: Small Values

Max = 0.676ε (Mean = 0.0302ε)

Max = 9.92ε (Mean = 2.3ε)

Max = 11.2ε (Mean = 2.94ε)

Max = 8.94ε (Mean = 2.06ε)

Incomplete Beta Function: Medium Values

Max = 0.949ε (Mean = 0.098ε)

Max = 63.5ε (Mean = 13.5ε)

Max = 97.6ε (Mean = 24.3ε)

Max = 90.6ε (Mean = 14.8ε)

Incomplete Beta Function: Large and Diverse Values

Max = 1.12ε (Mean = 0.0458ε)

Max = 1.05e+05ε (Mean = 5.45e+03ε)

Max = 1.04e+05ε (Mean = 5.46e+03ε)

Max = 3.72e+03ε (Mean = 113ε)

Incomplete Beta Function: Small Integer Values

Max = 0.586ε (Mean = 0.0314ε)

Max = 11.1ε (Mean = 3.65ε)

Max = 103ε (Mean = 17.4ε)

Max = 26.2ε (Mean = 6.36ε)


Table 20.6. Error rates for binomial_coefficient

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Binomials: small arguments

Max = 1ε (Mean = 0.369ε)

Max = 1.5ε (Mean = 0.339ε)

Max = 1.5ε (Mean = 0.339ε)

Max = 1ε (Mean = 0.369ε)

Binomials: large arguments

Max = 0.939ε (Mean = 0.314ε)

Max = 26.6ε (Mean = 6.13ε)

Max = 53.2ε (Mean = 10.8ε)

Max = 37.2ε (Mean = 7.4ε)


Table 20.7. Error rates for boost::math::powm1

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

powm1

(<math.h>: Max = 2.04ε (Mean = 0.493ε))

Max = 2.04ε (Mean = 0.493ε)

(<cmath>: Max = 2.04ε (Mean = 0.493ε))

(Rmath 3.2.3: Max = 1.06ε (Mean = 0.425ε))

(GSL 2.1: Max = 1.06ε (Mean = 0.425ε))

Max = 1.06ε (Mean = 0.425ε)

Max = 1.88ε (Mean = 0.49ε)

(<math.h>: Max = 1.88ε (Mean = 0.49ε))

(<math.h>: Max = 1.84ε (Mean = 0.486ε))

Max = 1.84ε (Mean = 0.486ε)


Table 20.8. Error rates for cbrt

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

cbrt Function

Max = 0ε (Mean = 0ε)

Max = 1.34ε (Mean = 0.471ε)

(<cmath>: Max = 1.34ε (Mean = 0.471ε))
(<math.h>: Max = 1.34ε (Mean = 0.471ε))

Max = 1.34ε (Mean = 0.471ε)

(<math.h>: Max = 1.34ε (Mean = 0.471ε))

Max = 1.7ε (Mean = 0.565ε)

(<math.h>: Max = 1.7ε (Mean = 0.565ε))


Table 20.9. Error rates for cos_pi

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

sin_pi and cos_pi

Max = 0ε (Mean = 0ε)

Max = 0.991ε (Mean = 0.302ε)

Max = 0.991ε (Mean = 0.302ε)

Max = 0.996ε (Mean = 0.284ε)

sin_pi and cos_pi near integers and half integers

Max = 0ε (Mean = 0ε)

Max = 0.976ε (Mean = 0.28ε)

Max = 0.976ε (Mean = 0.28ε)

Max = 0.996ε (Mean = 0.298ε)


Table 20.10. Error rates for cyl_bessel_i

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel I0: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 270ε (Mean = 91.6ε) And other failures.)
(Rmath 3.2.3: Max = 1.52ε (Mean = 0.622ε) And other failures.)

Max = 1.95ε (Mean = 0.738ε)

(<cmath>: Max = 8.49ε (Mean = 3.46ε) And other failures.)

Max = 1.95ε (Mean = 0.661ε)

Max = 0.762ε (Mean = 0.329ε)

Bessel I1: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 128ε (Mean = 41ε) And other failures.)
(Rmath 3.2.3: Max = 1.53ε (Mean = 0.483ε) And other failures.)

Max = 0.64ε (Mean = 0.202ε)

(<cmath>: Max = 5ε (Mean = 2.15ε) And other failures.)

Max = 0.64ε (Mean = 0.202ε)

Max = 0.767ε (Mean = 0.398ε)

Bessel In: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.31ε (Mean = 0.838ε) And other failures.)
(Rmath 3.2.3: Max = 1.73ε (Mean = 0.601ε) And other failures.)

Max = 1.8ε (Mean = 1.33ε)

(<cmath>: Max = 430ε (Mean = 163ε) And other failures.)

Max = 463ε (Mean = 140ε)

Max = 3.46ε (Mean = 1.32ε)

Bessel Iv: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 5.95ε (Mean = 2.08ε) And other failures.)
(Rmath 3.2.3: Max = 3.53ε (Mean = 1.39ε))

Max = 4.12ε (Mean = 1.85ε)

(<cmath>: Max = 616ε (Mean = 221ε) And other failures.)

Max = 4.12ε (Mean = 1.95ε)

Max = 2.97ε (Mean = 1.24ε)

Bessel In: Random Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 261ε (Mean = 53.2ε) And other failures.)
(Rmath 3.2.3: Max = 7.37ε (Mean = 2.4ε))

Max = 4.62ε (Mean = 1.06ε)

(<cmath>: Max = 645ε (Mean = 132ε))

Max = 176ε (Mean = 39.1ε)

Max = 9.67ε (Mean = 1.88ε)

Bessel Iv: Random Data

Max = 0.661ε (Mean = 0.0441ε)

(GSL 2.1: Max = 6.18e+03ε (Mean = 1.55e+03ε) And other failures.)
(Rmath 3.2.3: Max = 4.28e+08ε (Mean = 2.85e+07ε))

Max = 8.35ε (Mean = 1.62ε)

(<cmath>: Max = 1.05e+03ε (Mean = 224ε) And other failures.)

Max = 283ε (Mean = 88.4ε)

Max = 7.46ε (Mean = 1.71ε)

Bessel Iv: Mathworld Data (large values)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 37ε (Mean = 18ε) And other failures.)
(Rmath 3.2.3: Max = 3.77e+168ε (Mean = 2.39e+168ε) And other failures.)

Max = 14.7ε (Mean = 6.66ε)

(<cmath>: Max = 118ε (Mean = 57.2ε) And other failures.)

Max = 14.7ε (Mean = 6.59ε)

Max = 3.67ε (Mean = 1.64ε)


Table 20.11. Error rates for cyl_bessel_i (integer orders)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel I0: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.79ε (Mean = 0.482ε))
(Rmath 3.2.3: Max = 1.52ε (Mean = 0.622ε) And other failures.)

Max = 1.95ε (Mean = 0.738ε)

(<cmath>: Max = 8.49ε (Mean = 3.46ε) And other failures.)

Max = 1.95ε (Mean = 0.661ε)

Max = 0.762ε (Mean = 0.329ε)

Bessel I1: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.82ε (Mean = 0.456ε))
(Rmath 3.2.3: Max = 1.53ε (Mean = 0.483ε) And other failures.)

Max = 0.64ε (Mean = 0.202ε)

(<cmath>: Max = 5ε (Mean = 2.15ε) And other failures.)

Max = 0.64ε (Mean = 0.202ε)

Max = 0.767ε (Mean = 0.398ε)

Bessel In: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 5.15ε (Mean = 2.13ε) And other failures.)
(Rmath 3.2.3: Max = 1.73ε (Mean = 0.601ε) And other failures.)

Max = 1.8ε (Mean = 1.33ε)

(<cmath>: Max = 430ε (Mean = 163ε) And other failures.)

Max = 463ε (Mean = 140ε)

Max = 3.46ε (Mean = 1.32ε)


Table 20.12. Error rates for cyl_bessel_i_prime

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel I'0: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 0.82ε (Mean = 0.259ε)

Max = 0.82ε (Mean = 0.259ε)

Max = 0.82ε (Mean = 0.354ε)

Bessel I'1: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 1.97ε (Mean = 0.757ε)

Max = 1.97ε (Mean = 0.757ε)

Max = 1.36ε (Mean = 0.782ε)

Bessel I'n: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 2.31ε (Mean = 1.41ε)

Max = 701ε (Mean = 212ε)

Max = 3.61ε (Mean = 1.22ε)

Bessel I'v: Mathworld Data

Max = 1.62ε (Mean = 0.512ε)

Max = 2.89e+03ε (Mean = 914ε)

Max = 2.89e+03ε (Mean = 914ε)

Max = 3.76e+03ε (Mean = 1.19e+03ε)

Bessel I'n: Random Data

Max = 0ε (Mean = 0ε)

Max = 3.95ε (Mean = 1.06ε)

Max = 195ε (Mean = 37.1ε)

Max = 9.85ε (Mean = 1.82ε)

Bessel I'v: Random Data

Max = 0ε (Mean = 0ε)

Max = 14.1ε (Mean = 2.93ε)

Max = 336ε (Mean = 68.5ε)

Max = 14ε (Mean = 2.5ε)

Bessel I'v: Mathworld Data (large values)

Max = 0ε (Mean = 0ε)

Max = 42.6ε (Mean = 20.2ε)

Max = 42.6ε (Mean = 20.2ε)

Max = 59.5ε (Mean = 26.6ε)


Table 20.13. Error rates for cyl_bessel_i_prime (integer orders)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel I'0: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 0.82ε (Mean = 0.259ε)

Max = 0.82ε (Mean = 0.259ε)

Max = 0.82ε (Mean = 0.354ε)

Bessel I'1: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 1.97ε (Mean = 0.757ε)

Max = 1.97ε (Mean = 0.757ε)

Max = 1.36ε (Mean = 0.782ε)

Bessel I'n: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 2.31ε (Mean = 1.41ε)

Max = 701ε (Mean = 212ε)

Max = 3.61ε (Mean = 1.22ε)


Table 20.14. Error rates for cyl_bessel_j

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel J0: Mathworld Data

Max = 6.55ε (Mean = 2.86ε)

(<cmath>: Max = 5.04ε (Mean = 1.78ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.629ε (Mean = 0.223ε) And other failures.)
(Rmath 3.2.3: Max = 0.629ε (Mean = 0.223ε) And other failures.)

Max = 6.55ε (Mean = 2.86ε)

Max = 2.52ε (Mean = 1.2ε)

Bessel J0: Mathworld Data (Tricky cases)

Max = 1.64e+08ε (Mean = 6.69e+07ε)

(<cmath>: Max = 4.79e+08ε (Mean = 1.96e+08ε))

Max = 8e+04ε (Mean = 3.27e+04ε)

(GSL 2.1: Max = 6.5e+07ε (Mean = 2.66e+07ε))
(Rmath 3.2.3: Max = 1.04e+07ε (Mean = 4.29e+06ε))

Max = 1.64e+08ε (Mean = 6.69e+07ε)

Max = 1e+07ε (Mean = 4.09e+06ε)

Bessel J1: Mathworld Data

Max = 3.59ε (Mean = 1.33ε)

(<cmath>: Max = 6.1ε (Mean = 2.95ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.62ε (Mean = 2.35ε) And other failures.)
(Rmath 3.2.3: Max = 0.946ε (Mean = 0.39ε) And other failures.)

Max = 1.44ε (Mean = 0.637ε)

Max = 1.73ε (Mean = 0.976ε)

Bessel J1: Mathworld Data (tricky cases)

Max = 2.18e+05ε (Mean = 9.76e+04ε)

(<cmath>: Max = 2.15e+06ε (Mean = 1.58e+06ε))

Max = 106ε (Mean = 47.5ε)

(GSL 2.1: Max = 8.75e+05ε (Mean = 5.32e+05ε))
(Rmath 3.2.3: Max = 2.93e+06ε (Mean = 1.7e+06ε))

Max = 2.18e+05ε (Mean = 9.76e+04ε)

Max = 3.23e+04ε (Mean = 1.45e+04ε)

Bessel JN: Mathworld Data

Max = 6.85ε (Mean = 3.35ε)

(<cmath>: Max = 2.13e+19ε (Mean = 5.16e+18ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.9e+05ε (Mean = 2.15e+05ε) And other failures.)
(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 463ε (Mean = 112ε)

Max = 14.7ε (Mean = 5.4ε)

Bessel J: Mathworld Data

Max = 14.7ε (Mean = 4.11ε)

(<cmath>: Max = 3.49e+05ε (Mean = 8.09e+04ε) And other failures.)

Max = 10ε (Mean = 2.24ε)

(GSL 2.1: Max = 2.39e+05ε (Mean = 5.37e+04ε) And other failures.)
(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 14.7ε (Mean = 4.22ε)

Max = 14.9ε (Mean = 3.89ε)

Bessel J: Mathworld Data (large values)

Max = 607ε (Mean = 305ε)

(<cmath>: Max = 34.9ε (Mean = 17.4ε) And other failures.)

Max = 0.536ε (Mean = 0.268ε)

(GSL 2.1: Max = 4.91e+03ε (Mean = 2.46e+03ε) And other failures.)
(Rmath 3.2.3: Max = 5.9ε (Mean = 3.76ε))

Max = 607ε (Mean = 305ε)

Max = 9.31ε (Mean = 5.52ε)

Bessel JN: Random Data

Max = 50.8ε (Mean = 3.69ε)

(<cmath>: Max = 1.12e+03ε (Mean = 88.7ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 75.7ε (Mean = 5.36ε))
(Rmath 3.2.3: Max = 3.93ε (Mean = 1.22ε))

Max = 99.6ε (Mean = 22ε)

Max = 17.5ε (Mean = 1.46ε)

Bessel J: Random Data

Max = 11.4ε (Mean = 1.68ε)

(<cmath>: Max = 501ε (Mean = 52.3ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 15.5ε (Mean = 3.33ε) And other failures.)
(Rmath 3.2.3: Max = 6.74ε (Mean = 1.3ε))

Max = 260ε (Mean = 34ε)

Max = 9.24ε (Mean = 1.17ε)

Bessel J: Random Data (Tricky large values)

Max = 785ε (Mean = 94.2ε)

(<cmath>: Max = 5.01e+17ε (Mean = 6.23e+16ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.48e+05ε (Mean = 5.11e+04ε))
(Rmath 3.2.3: Max = 71.6ε (Mean = 11.7ε))

Max = 785ε (Mean = 97.4ε)

Max = 59.2ε (Mean = 8.67ε)


Table 20.15. Error rates for cyl_bessel_j (integer orders)

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel J0: Mathworld Data (Integer Version)

Max = 6.55ε (Mean = 2.86ε)

(<cmath>: Max = 5.04ε (Mean = 1.78ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.12ε (Mean = 0.488ε))
(Rmath 3.2.3: Max = 0.629ε (Mean = 0.223ε) And other failures.)

Max = 6.55ε (Mean = 2.86ε)

Max = 2.52ε (Mean = 1.2ε)

(<math.h>: Max = 1.89ε (Mean = 0.988ε))

Bessel J0: Mathworld Data (Tricky cases) (Integer Version)

Max = 1.64e+08ε (Mean = 6.69e+07ε)

(<cmath>: Max = 4.79e+08ε (Mean = 1.96e+08ε))

Max = 8e+04ε (Mean = 3.27e+04ε)

(GSL 2.1: Max = 1e+07ε (Mean = 4.11e+06ε))
(Rmath 3.2.3: Max = 1.04e+07ε (Mean = 4.29e+06ε))

Max = 1.64e+08ε (Mean = 6.69e+07ε)

Max = 1e+07ε (Mean = 4.09e+06ε)

(<math.h>: Max = 2.54e+08ε (Mean = 1.04e+08ε))

Bessel J1: Mathworld Data (Integer Version)

Max = 3.59ε (Mean = 1.33ε)

(<cmath>: Max = 6.1ε (Mean = 2.95ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.89ε (Mean = 0.721ε))
(Rmath 3.2.3: Max = 0.946ε (Mean = 0.39ε) And other failures.)

Max = 1.44ε (Mean = 0.637ε)

Max = 1.73ε (Mean = 0.976ε)

(<math.h>: Max = 11.4ε (Mean = 4.15ε))

Bessel J1: Mathworld Data (tricky cases) (Integer Version)

Max = 2.18e+05ε (Mean = 9.76e+04ε)

(<cmath>: Max = 2.15e+06ε (Mean = 1.58e+06ε))

Max = 106ε (Mean = 47.5ε)

(GSL 2.1: Max = 1.26e+06ε (Mean = 6.28e+05ε))
(Rmath 3.2.3: Max = 2.93e+06ε (Mean = 1.7e+06ε))

Max = 2.18e+05ε (Mean = 9.76e+04ε)

Max = 3.23e+04ε (Mean = 1.45e+04ε)

(<math.h>: Max = 1.44e+07ε (Mean = 6.5e+06ε))

Bessel JN: Mathworld Data (Integer Version)

Max = 6.85ε (Mean = 3.35ε)

(<cmath>: Max = 2.13e+19ε (Mean = 5.16e+18ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.9e+05ε (Mean = 2.53e+05ε) And other failures.)
(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 463ε (Mean = 112ε)

Max = 14.7ε (Mean = 5.4ε)

(<math.h>: Max = +INFε (Mean = +INFε) And other failures.)


Table 20.16. Error rates for cyl_bessel_j_prime

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel J0': Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 18.9ε (Mean = 6.82ε)

Max = 18.9ε (Mean = 6.72ε)

Max = 6.62ε (Mean = 2.55ε)

Bessel J0': Mathworld Data (Tricky cases)

Max = 0ε (Mean = 0ε)

Max = 7.44ε (Mean = 3.34ε)

Max = 7.44ε (Mean = 3.31ε)

Max = 3.67ε (Mean = 1.74ε)

Bessel J1': Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 7.9ε (Mean = 3.37ε)

Max = 7.9ε (Mean = 3.37ε)

Max = 0.999ε (Mean = 0.627ε)

Bessel J1': Mathworld Data (tricky cases)

Max = 287ε (Mean = 129ε)

Max = 5.88e+05ε (Mean = 2.63e+05ε)

Max = 5.88e+05ε (Mean = 2.63e+05ε)

Max = 288ε (Mean = 129ε)

Bessel JN': Mathworld Data

Max = 0.527ε (Mean = 0.128ε)

Max = 1.29e+03ε (Mean = 312ε)

Max = 1.29e+03ε (Mean = 355ε)

Max = 14ε (Mean = 6.13ε)

Bessel J': Mathworld Data

Max = 21.5ε (Mean = 4.7ε)

Max = 42.5ε (Mean = 9.31ε)

Max = 42.5ε (Mean = 9.32ε)

Max = 23.7ε (Mean = 8ε)

Bessel J': Mathworld Data (large values)

Max = 0ε (Mean = 0ε)

Max = 989ε (Mean = 495ε)

Max = 989ε (Mean = 495ε)

Max = 2.9ε (Mean = 1.61ε)

Bessel JN': Random Data

Max = 0.593ε (Mean = 0.0396ε)

Max = 11.3ε (Mean = 1.85ε)

Max = 79.4ε (Mean = 16.2ε)

Max = 6.34ε (Mean = 0.999ε)

Bessel J': Random Data

Max = 0.885ε (Mean = 0.033ε)

Max = 139ε (Mean = 6.47ε)

Max = 279ε (Mean = 27.2ε)

Max = 176ε (Mean = 9.75ε)

Bessel J': Random Data (Tricky large values)

Max = 0ε (Mean = 0ε)

Max = 474ε (Mean = 62.2ε)

Max = 474ε (Mean = 64.5ε)

Max = 379ε (Mean = 45.4ε)


Table 20.17. Error rates for cyl_bessel_j_prime (integer orders)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel J0': Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 18.9ε (Mean = 6.82ε)

Max = 18.9ε (Mean = 6.72ε)

Max = 6.62ε (Mean = 2.55ε)

Bessel J0': Mathworld Data (Tricky cases) (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 7.44ε (Mean = 3.34ε)

Max = 7.44ε (Mean = 3.31ε)

Max = 3.67ε (Mean = 1.74ε)

Bessel J1': Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 7.9ε (Mean = 3.37ε)

Max = 7.9ε (Mean = 3.37ε)

Max = 0.999ε (Mean = 0.627ε)

Bessel J1': Mathworld Data (tricky cases) (Integer Version)

Max = 287ε (Mean = 129ε)

Max = 5.88e+05ε (Mean = 2.63e+05ε)

Max = 5.88e+05ε (Mean = 2.63e+05ε)

Max = 288ε (Mean = 129ε)

Bessel JN': Mathworld Data (Integer Version)

Max = 0.527ε (Mean = 0.128ε)

Max = 1.29e+03ε (Mean = 312ε)

Max = 1.29e+03ε (Mean = 355ε)

Max = 14ε (Mean = 6.13ε)


Table 20.18. Error rates for cyl_bessel_k

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel K0: Mathworld Data

Max = 0.833ε (Mean = 0.436ε)

(<cmath>: Max = 9.33ε (Mean = 3.25ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.04ε (Mean = 2.16ε))
(Rmath 3.2.3: Max = 0.833ε (Mean = 0.601ε))

Max = 0.833ε (Mean = 0.436ε)

Max = 0.833ε (Mean = 0.552ε)

Bessel K1: Mathworld Data

Max = 0.786ε (Mean = 0.329ε)

(<cmath>: Max = 8.94ε (Mean = 3.19ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.26ε (Mean = 2.21ε))
(Rmath 3.2.3: Max = 0.894ε (Mean = 0.516ε))

Max = 0.786ε (Mean = 0.329ε)

Max = 0.786ε (Mean = 0.39ε)

Bessel Kn: Mathworld Data

Max = 2.6ε (Mean = 1.21ε)

(<cmath>: Max = 12.9ε (Mean = 4.91ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3.36ε (Mean = 1.43ε) And other failures.)
(Rmath 3.2.3: Max = 8.48ε (Mean = 2.98ε))

Max = 2.6ε (Mean = 1.21ε)

Max = 3.63ε (Mean = 1.46ε)

Bessel Kv: Mathworld Data

Max = 3.58ε (Mean = 2.39ε)

(<cmath>: Max = 13ε (Mean = 4.81ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 5.47ε (Mean = 2.04ε) And other failures.)
(Rmath 3.2.3: Max = 3.15ε (Mean = 1.35ε))

Max = 5.21ε (Mean = 2.53ε)

Max = 4.78ε (Mean = 2.19ε)

Bessel Kv: Mathworld Data (large values)

Max = 42.3ε (Mean = 21ε)

(<cmath>: Max = 42.3ε (Mean = 19.8ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 308ε (Mean = 142ε) And other failures.)
(Rmath 3.2.3: Max = 84.6ε (Mean = 37.8ε))

Max = 42.3ε (Mean = 21ε)

Max = 59.8ε (Mean = 26.9ε)

Bessel Kn: Random Data

Max = 4.55ε (Mean = 1.12ε)

(<cmath>: Max = 13.9ε (Mean = 2.91ε))

Max = 0.764ε (Mean = 0.0348ε)

(GSL 2.1: Max = 8.71ε (Mean = 1.76ε) And other failures.)
(Rmath 3.2.3: Max = 7.47ε (Mean = 1.34ε))

Max = 4.55ε (Mean = 1.12ε)

Max = 9.34ε (Mean = 1.7ε)

Bessel Kv: Random Data

Max = 7.88ε (Mean = 1.48ε)

(<cmath>: Max = 13.6ε (Mean = 2.68ε) And other failures.)

Max = 0.507ε (Mean = 0.0313ε)

(GSL 2.1: Max = 9.71ε (Mean = 1.47ε) And other failures.)
(Rmath 3.2.3: Max = 7.37ε (Mean = 1.49ε))

Max = 7.88ε (Mean = 1.47ε)

Max = 8.33ε (Mean = 1.62ε)


Table 20.19. Error rates for cyl_bessel_k (integer orders)

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel K0: Mathworld Data (Integer Version)

Max = 0.833ε (Mean = 0.436ε)

(<cmath>: Max = 9.33ε (Mean = 3.25ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.2ε (Mean = 0.733ε))
(Rmath 3.2.3: Max = 0.833ε (Mean = 0.601ε))

Max = 0.833ε (Mean = 0.436ε)

Max = 0.833ε (Mean = 0.552ε)

Bessel K1: Mathworld Data (Integer Version)

Max = 0.786ε (Mean = 0.329ε)

(<cmath>: Max = 8.94ε (Mean = 3.19ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.626ε (Mean = 0.333ε))
(Rmath 3.2.3: Max = 0.894ε (Mean = 0.516ε))

Max = 0.786ε (Mean = 0.329ε)

Max = 0.786ε (Mean = 0.39ε)

Bessel Kn: Mathworld Data (Integer Version)

Max = 2.6ε (Mean = 1.21ε)

(<cmath>: Max = 12.9ε (Mean = 4.91ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 168ε (Mean = 59.5ε))
(Rmath 3.2.3: Max = 8.48ε (Mean = 2.98ε))

Max = 2.6ε (Mean = 1.21ε)

Max = 3.63ε (Mean = 1.46ε)


Table 20.20. Error rates for cyl_bessel_k_prime

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel K'0: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 0.786ε (Mean = 0.329ε)

Max = 0.786ε (Mean = 0.329ε)

Max = 0.786ε (Mean = 0.39ε)

Bessel K'1: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 0.736ε (Mean = 0.389ε)

Max = 0.736ε (Mean = 0.389ε)

Max = 0.761ε (Mean = 0.444ε)

Bessel K'n: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 2.16ε (Mean = 1.08ε)

Max = 2.16ε (Mean = 1.08ε)

Max = 4.17ε (Mean = 1.75ε)

Bessel K'v: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 3.94ε (Mean = 2.44ε)

Max = 3.94ε (Mean = 2.34ε)

Max = 3.94ε (Mean = 1.47ε)

Bessel K'v: Mathworld Data (large values)

Max = 0ε (Mean = 0ε)

Max = 59.2ε (Mean = 42.9ε)

Max = 58.7ε (Mean = 42.6ε)

Max = 18.6ε (Mean = 11.8ε)

Bessel K'n: Random Data

Max = 0ε (Mean = 0ε)

Max = 4.45ε (Mean = 1.19ε)

Max = 4.45ε (Mean = 1.19ε)

Max = 9.67ε (Mean = 1.73ε)

Bessel K'v: Random Data

Max = 0ε (Mean = 0ε)

Max = 7.95ε (Mean = 1.53ε)

Max = 7.95ε (Mean = 1.52ε)

Max = 8.32ε (Mean = 1.65ε)


Table 20.21. Error rates for cyl_bessel_k_prime (integer orders)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel K'0: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 0.786ε (Mean = 0.329ε)

Max = 0.786ε (Mean = 0.329ε)

Max = 0.786ε (Mean = 0.39ε)

Bessel K'1: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 0.736ε (Mean = 0.389ε)

Max = 0.736ε (Mean = 0.389ε)

Max = 0.761ε (Mean = 0.444ε)

Bessel K'n: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 2.16ε (Mean = 1.08ε)

Max = 2.16ε (Mean = 1.08ε)

Max = 4.17ε (Mean = 1.75ε)


Table 20.22. Error rates for cyl_neumann

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Y0: Mathworld Data

Max = 5.53ε (Mean = 2.4ε)

(<cmath>: Max = 2.05e+05ε (Mean = 6.87e+04ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 60.9ε (Mean = 20.4ε))
(Rmath 3.2.3: Max = 167ε (Mean = 56.5ε))

Max = 5.53ε (Mean = 2.4ε)

Max = 4.61ε (Mean = 2.29ε)

Y1: Mathworld Data

Max = 6.33ε (Mean = 2.25ε)

(<cmath>: Max = 9.71e+03ε (Mean = 4.08e+03ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 23.4ε (Mean = 8.1ε))
(Rmath 3.2.3: Max = 193ε (Mean = 64.4ε))

Max = 6.33ε (Mean = 2.29ε)

Max = 4.75ε (Mean = 1.72ε)

Yn: Mathworld Data

Max = 55.2ε (Mean = 17.8ε)

(<cmath>: Max = 2.2e+20ε (Mean = 6.97e+19ε) And other failures.)

Max = 0.993ε (Mean = 0.314ε)

(GSL 2.1: Max = 2.41e+05ε (Mean = 7.62e+04ε) And other failures.)
(Rmath 3.2.3: Max = 1.24e+04ε (Mean = 4e+03ε))

Max = 55.2ε (Mean = 17.8ε)

Max = 35ε (Mean = 11.9ε)

Yv: Mathworld Data

Max = 10.7ε (Mean = 4.93ε)

(<cmath>: Max = 3.49e+15ε (Mean = 1.05e+15ε) And other failures.)

Max = 10ε (Mean = 3.02ε)

(GSL 2.1: Max = 1.07e+05ε (Mean = 3.22e+04ε) And other failures.)
(Rmath 3.2.3: Max = 243ε (Mean = 73.9ε))

Max = 10.7ε (Mean = 5.1ε)

Max = 7.89ε (Mean = 3.27ε)

Yv: Mathworld Data (large values)

Max = 1.7ε (Mean = 1.33ε)

(<cmath>: Max = 43.2ε (Mean = 16.3ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 60.8ε (Mean = 23ε) And other failures.)
(Rmath 3.2.3: Max = 0.682ε (Mean = 0.335ε))

Max = 1.7ε (Mean = 1.33ε)

Max = 0.682ε (Mean = 0.423ε)

Y0 and Y1: Random Data

Max = 10.8ε (Mean = 3.04ε)

(<cmath>: Max = 2.59e+03ε (Mean = 500ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 34.4ε (Mean = 8.9ε))
(Rmath 3.2.3: Max = 83ε (Mean = 14.2ε))

Max = 10.8ε (Mean = 3.04ε)

Max = 4.17ε (Mean = 1.24ε)

Yn: Random Data

Max = 338ε (Mean = 27.5ε)

(<cmath>: Max = 4.01e+03ε (Mean = 348ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 500ε (Mean = 47.8ε))
(Rmath 3.2.3: Max = 691ε (Mean = 67.9ε))

Max = 338ε (Mean = 27.5ε)

Max = 117ε (Mean = 10.2ε)

Yv: Random Data

Max = 2.08e+03ε (Mean = 149ε)

(<cmath>: Max = +INFε (Mean = +INFε) And other failures.)

Max = 1.53ε (Mean = 0.102ε)

(GSL 2.1: Max = 1.41e+06ε (Mean = 7.67e+04ε))
(Rmath 3.2.3: Max = 1.79e+05ε (Mean = 9.64e+03ε))

Max = 2.08e+03ε (Mean = 149ε)

Max = 1.23e+03ε (Mean = 69.9ε)


Table 20.23. Error rates for cyl_neumann (integer orders)

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Y0: Mathworld Data (Integer Version)

Max = 5.53ε (Mean = 2.4ε)

(<cmath>: Max = 2.05e+05ε (Mean = 6.87e+04ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.46ε (Mean = 2.38ε))
(Rmath 3.2.3: Max = 167ε (Mean = 56.5ε))

Max = 5.53ε (Mean = 2.4ε)

Max = 4.61ε (Mean = 2.29ε)

(<math.h>: Max = 5.37e+03ε (Mean = 1.81e+03ε))

Y1: Mathworld Data (Integer Version)

Max = 6.33ε (Mean = 2.25ε)

(<cmath>: Max = 9.71e+03ε (Mean = 4.08e+03ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.51ε (Mean = 0.839ε))
(Rmath 3.2.3: Max = 193ε (Mean = 64.4ε))

Max = 6.33ε (Mean = 2.29ε)

Max = 4.75ε (Mean = 1.72ε)

(<math.h>: Max = 1.86e+04ε (Mean = 6.2e+03ε))

Yn: Mathworld Data (Integer Version)

Max = 55.2ε (Mean = 17.8ε)

(<cmath>: Max = 2.2e+20ε (Mean = 6.97e+19ε) And other failures.)

Max = 0.993ε (Mean = 0.314ε)

(GSL 2.1: Max = 2.41e+05ε (Mean = 7.62e+04ε))
(Rmath 3.2.3: Max = 1.24e+04ε (Mean = 4e+03ε))

Max = 55.2ε (Mean = 17.8ε)

Max = 35ε (Mean = 11.9ε)

(<math.h>: Max = 2.49e+05ε (Mean = 8.14e+04ε))


Table 20.24. Error rates for cyl_neumann_prime

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Y'0: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 6.33ε (Mean = 3.12ε)

Max = 6.33ε (Mean = 3.14ε)

Max = 4.75ε (Mean = 1.75ε)

Y'1: Mathworld Data

Max = 0.58ε (Mean = 0.193ε)

Max = 37.1ε (Mean = 12.8ε)

Max = 34ε (Mean = 11.8ε)

Max = 3.08ε (Mean = 1.2ε)

Y'n: Mathworld Data

Max = 2.05ε (Mean = 0.677ε)

Max = 56ε (Mean = 18.2ε)

Max = 56ε (Mean = 21.3ε)

Max = 563ε (Mean = 178ε)

Y'v: Mathworld Data

Max = 21.5ε (Mean = 6.49ε)

Max = 42.5ε (Mean = 13.4ε)

Max = 42.5ε (Mean = 13.6ε)

Max = 23.7ε (Mean = 10.1ε)

Y'v: Mathworld Data (large values)

Max = 0ε (Mean = 0ε)

Max = 1.57ε (Mean = 1.24ε)

Max = 1.57ε (Mean = 1.24ε)

Max = 0.627ε (Mean = 0.237ε)

Y'0 and Y'1: Random Data

Max = 0ε (Mean = 0ε)

Max = 23.8ε (Mean = 3.69ε)

Max = 23.8ε (Mean = 3.69ε)

Max = 5.95ε (Mean = 1.36ε)

Y'n: Random Data

Max = 1.53ε (Mean = 0.0885ε)

Max = 2.35e+03ε (Mean = 136ε)

Max = 2.35e+03ε (Mean = 136ε)

Max = 621ε (Mean = 36ε)

Y'v: Random Data

Max = 56.8ε (Mean = 2.59ε)

Max = 1.16e+05ε (Mean = 5.28e+03ε)

Max = 1.16e+05ε (Mean = 5.28e+03ε)

Max = 3.23e+04ε (Mean = 1.13e+03ε)


Table 20.25. Error rates for cyl_neumann_prime (integer orders)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Y'0: Mathworld Data (Integer Version)

Max = 0ε (Mean = 0ε)

Max = 6.33ε (Mean = 3.12ε)

Max = 6.33ε (Mean = 3.14ε)

Max = 4.75ε (Mean = 1.75ε)

Y'1: Mathworld Data (Integer Version)

Max = 0.58ε (Mean = 0.193ε)

Max = 37.1ε (Mean = 12.8ε)

Max = 34ε (Mean = 11.8ε)

Max = 3.08ε (Mean = 1.2ε)

Y'n: Mathworld Data (Integer Version)

Max = 2.05ε (Mean = 0.677ε)

Max = 56ε (Mean = 18.2ε)

Max = 56ε (Mean = 21.3ε)

Max = 563ε (Mean = 178ε)


Table 20.26. Error rates for digamma

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Digamma Function: Large Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.84ε (Mean = 0.71ε))
(Rmath 3.2.3: Max = 1.18ε (Mean = 0.331ε))

Max = 1.39ε (Mean = 0.413ε)

Max = 1.39ε (Mean = 0.413ε)

Max = 0.98ε (Mean = 0.369ε)

Digamma Function: Near the Positive Root

Max = 0.891ε (Mean = 0.0995ε)

(GSL 2.1: Max = 135ε (Mean = 11.9ε))
(Rmath 3.2.3: Max = 2.02e+03ε (Mean = 256ε))

Max = 1.37ε (Mean = 0.477ε)

Max = 1.31ε (Mean = 0.471ε)

Max = 0.997ε (Mean = 0.527ε)

Digamma Function: Near Zero

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.953ε (Mean = 0.348ε))
(Rmath 3.2.3: Max = 1.17ε (Mean = 0.564ε))

Max = 0.984ε (Mean = 0.361ε)

Max = 0.984ε (Mean = 0.361ε)

Max = 0.953ε (Mean = 0.337ε)

Digamma Function: Negative Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.56e+04ε (Mean = 3.91e+03ε))
(Rmath 3.2.3: Max = 4.6e+04ε (Mean = 3.94e+03ε))

Max = 180ε (Mean = 13ε)

Max = 180ε (Mean = 13ε)

Max = 214ε (Mean = 16.1ε)

Digamma Function: Values near 0

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.866ε (Mean = 0.387ε))
(Rmath 3.2.3: Max = 3.58e+05ε (Mean = 1.6e+05ε))

Max = 1ε (Mean = 0.592ε)

Max = 1ε (Mean = 0.592ε)

Max = 0ε (Mean = 0ε)

Digamma Function: Integer arguments

Max = 0.992ε (Mean = 0.215ε)

(GSL 2.1: Max = 1.18ε (Mean = 0.607ε))
(Rmath 3.2.3: Max = 4.33ε (Mean = 0.982ε))

Max = 0.888ε (Mean = 0.403ε)

Max = 0.888ε (Mean = 0.403ε)

Max = 0.992ε (Mean = 0.452ε)

Digamma Function: Half integer arguments

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.09ε (Mean = 0.531ε))
(Rmath 3.2.3: Max = 46.2ε (Mean = 7.24ε))

Max = 0.906ε (Mean = 0.409ε)

Max = 0.906ε (Mean = 0.409ε)

Max = 0.78ε (Mean = 0.314ε)


Table 20.27. Error rates for ellint_1

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral F: Mathworld Data

Max = 0.94ε (Mean = 0.509ε)

(<cmath>: Max = +INFε (Mean = +INFε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.919ε (Mean = 0.544ε))

Max = 0.94ε (Mean = 0.509ε)

Max = 0.919ε (Mean = 0.542ε)

Elliptic Integral F: Random Data

Max = 1.57ε (Mean = 0.56ε)

(<cmath>: Max = 2.56ε (Mean = 0.816ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.99ε (Mean = 0.797ε))

Max = 1.57ε (Mean = 0.561ε)

Max = 2.26ε (Mean = 0.631ε)


Table 20.28. Error rates for ellint_1 (complete)

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral K: Mathworld Data

Max = 0.887ε (Mean = 0.296ε)

(<cmath>: Max = 1.19ε (Mean = 0.765ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.623ε (Mean = 0.393ε))

Max = 0.887ε (Mean = 0.296ε)

Max = 0.915ε (Mean = 0.547ε)

Elliptic Integral K: Random Data

Max = 1.27ε (Mean = 0.473ε)

(<cmath>: Max = 2.19ε (Mean = 0.694ε))

Max = 0.851ε (Mean = 0.0851ε)

(GSL 2.1: Max = 2.32ε (Mean = 0.688ε))

Max = 1.27ε (Mean = 0.473ε)

Max = 0.958ε (Mean = 0.408ε)


Table 20.29. Error rates for ellint_2

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral E: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.63ε (Mean = 0.325ε))

Max = 0.656ε (Mean = 0.317ε)

(<cmath>: Max = +INFε (Mean = +INFε) And other failures.)

Max = 0.656ε (Mean = 0.317ε)

Max = 1.31ε (Mean = 0.727ε)

Elliptic Integral E: Random Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.4ε (Mean = 1.16ε))

Max = 2.05ε (Mean = 0.632ε)

(<cmath>: Max = 3.08e+04ε (Mean = 3.84e+03ε))

Max = 2.05ε (Mean = 0.632ε)

Max = 2.23ε (Mean = 0.639ε)

Elliptic Integral E: Small Angles

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.5ε (Mean = 0.118ε))

Max = 1ε (Mean = 0.283ε)

(<cmath>: Max = 2ε (Mean = 0.333ε))

Max = 1ε (Mean = 0.283ε)

Max = 1ε (Mean = 0.421ε)


Table 20.30. Error rates for ellint_2 (complete)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral E: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3.09ε (Mean = 1.04ε) And other failures.)

Max = 0.836ε (Mean = 0.469ε)

(<cmath>: Max = 170ε (Mean = 55.1ε))

Max = 0.836ε (Mean = 0.469ε)

Max = 1.3ε (Mean = 0.615ε)

Elliptic Integral E: Random Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.34ε (Mean = 1.18ε))

Max = 1.97ε (Mean = 0.629ε)

(<cmath>: Max = 2.49e+04ε (Mean = 3.39e+03ε))

Max = 1.97ε (Mean = 0.629ε)

Max = 1.71ε (Mean = 0.553ε)


Table 20.31. Error rates for ellint_3

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral PI: Mathworld Data

Max = 475ε (Mean = 86.3ε)

(<cmath>: Max = +INFε (Mean = +INFε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.48e+05ε (Mean = 2.54e+04ε) And other failures.)

Max = 475ε (Mean = 86.3ε)

Max = 565ε (Mean = 102ε)

Elliptic Integral PI: Random Data

Max = 4.54ε (Mean = 0.895ε)

(<cmath>: Max = 3.37e+20ε (Mean = 3.47e+19ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 633ε (Mean = 50.1ε))

Max = 4.49ε (Mean = 0.885ε)

Max = 8.33ε (Mean = 0.971ε)

Elliptic Integral PI: Large Random Data

Max = 3.7ε (Mean = 0.893ε)

(<cmath>: Max = 2.52e+18ε (Mean = 4.83e+17ε) And other failures.)

Max = 0.557ε (Mean = 0.0389ε)

(GSL 2.1: Max = 40.1ε (Mean = 7.77ε))

Max = 3.7ε (Mean = 0.892ε)

Max = 2.86ε (Mean = 0.944ε)


Table 20.32. Error rates for ellint_3 (complete)

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Complete Elliptic Integral PI: Mathworld Data

Max = 1.4ε (Mean = 0.575ε)

(<cmath>: Max = 6.31e+20ε (Mean = 1.53e+20ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 6.33e+04ε (Mean = 1.54e+04ε) And other failures.)

Max = 1.4ε (Mean = 0.575ε)

Max = 0.971ε (Mean = 0.464ε)

Complete Elliptic Integral PI: Random Data

Max = 2.45ε (Mean = 0.696ε)

(<cmath>: Max = 8.78e+20ε (Mean = 1.02e+20ε) And other failures.)

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 24ε (Mean = 2.99ε))

Max = 2.4ε (Mean = 0.677ε)

Max = 2.46ε (Mean = 0.657ε)


Table 20.33. Error rates for ellint_d

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral E: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.862ε (Mean = 0.568ε))

Max = 1.3ε (Mean = 0.813ε)

Max = 1.3ε (Mean = 0.813ε)

Max = 0.862ε (Mean = 0.457ε)

Elliptic Integral D: Random Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3.01ε (Mean = 0.928ε))

Max = 2.51ε (Mean = 0.883ε)

Max = 2.51ε (Mean = 0.883ε)

Max = 2.87ε (Mean = 0.805ε)


Table 20.34. Error rates for ellint_d (complete)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral E: Mathworld Data

Max = 0.637ε (Mean = 0.368ε)

Max = 1.27ε (Mean = 0.735ε)

Max = 1.27ε (Mean = 0.735ε)

Max = 0.637ε (Mean = 0.368ε)

Elliptic Integral D: Random Data

Max = 0ε (Mean = 0ε)

Max = 1.27ε (Mean = 0.334ε)

Max = 1.27ε (Mean = 0.334ε)

Max = 1.27ε (Mean = 0.355ε)


Table 20.35. Error rates for ellint_rc

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Microsoft Visual C++ version 14.1
Win32
double

RC: Random data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.4ε (Mean = 0.624ε))

Max = 0.995ε (Mean = 0.433ε)

Max = 0.962ε (Mean = 0.407ε)


Table 20.36. Error rates for ellint_rd

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Microsoft Visual C++ version 14.1
Win32
double

RD: Random data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.59ε (Mean = 0.878ε))

Max = 2.73ε (Mean = 0.831ε)

Max = 2.16ε (Mean = 0.803ε)

RD: y = z

Max = 0.896ε (Mean = 0.022ε)

(GSL 2.1: Max = 2.88ε (Mean = 0.839ε))

Max = 2.65ε (Mean = 0.82ε)

Max = 16.5ε (Mean = 0.843ε)

RD: x = y

Max = 0.824ε (Mean = 0.0272ε)

(GSL 2.1: Max = 3.74ε (Mean = 0.84ε))

Max = 2.85ε (Mean = 0.865ε)

Max = 3.51ε (Mean = 0.816ε)

RD: x = 0, y = z

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2ε (Mean = 0.656ε))

Max = 1.19ε (Mean = 0.522ε)

Max = 1.16ε (Mean = 0.497ε)

RD: x = y = z

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.03ε (Mean = 0.418ε))

Max = 0.998ε (Mean = 0.387ε)

Max = 1.03ε (Mean = 0.418ε)

RD: x = 0

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.85ε (Mean = 0.781ε))

Max = 2.79ε (Mean = 0.883ε)

Max = 2.64ε (Mean = 0.894ε)


Table 20.37. Error rates for ellint_rf

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Microsoft Visual C++ version 14.1
Win32
double

RF: Random data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.73ε (Mean = 0.804ε))

Max = 2.54ε (Mean = 0.674ε)

Max = 2.02ε (Mean = 0.677ε)

RF: x = y = z

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.999ε (Mean = 0.34ε))

Max = 0.991ε (Mean = 0.345ε)

Max = 0.999ε (Mean = 0.34ε)

RF: x = y or y = z or x = z

Max = 0.536ε (Mean = 0.00658ε)

(GSL 2.1: Max = 2.89ε (Mean = 0.749ε))

Max = 1.95ε (Mean = 0.418ε)

Max = 1.21ε (Mean = 0.394ε)

RF: x = 0, y = z

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.29ε (Mean = 0.527ε))

Max = 0.894ε (Mean = 0.338ε)

Max = 0.999ε (Mean = 0.407ε)

RF: z = 0

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.54ε (Mean = 0.781ε))

Max = 1.7ε (Mean = 0.539ε)

Max = 1.89ε (Mean = 0.587ε)


Table 20.38. Error rates for ellint_rg

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Microsoft Visual C++ version 14.1
Win32
double

RG: Random Data

Max = 0.983ε (Mean = 0.0172ε)

(GSL 2.1: Max = 0.983ε (Mean = 0.0172ε))

Max = 3.95ε (Mean = 0.951ε)

Max = 3.65ε (Mean = 0.929ε)

RG: two values 0

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε))

Max = 0ε (Mean = 0ε)

Max = 0ε (Mean = 0ε)

RG: All values the same or zero

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε))

Max = 0.992ε (Mean = 0.288ε)

Max = 1.06ε (Mean = 0.348ε)

RG: two values the same

Max = 0.594ε (Mean = 0.0103ε)

(GSL 2.1: Max = 0.594ε (Mean = 0.0103ε))

Max = 1.51ε (Mean = 0.404ε)

Max = 1.96ε (Mean = 0.374ε)

RG: one value zero

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε))

Max = 2.14ε (Mean = 0.722ε)

Max = 1.96ε (Mean = 0.674ε)


Table 20.39. Error rates for ellint_rj

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Microsoft Visual C++ version 14.1
Win32
double

RJ: Random data

Max = 0.52ε (Mean = 0.0184ε)

(GSL 2.1: Max = 3.57ε (Mean = 0.704ε) And other failures.)

Max = 186ε (Mean = 6.67ε)

Max = 215ε (Mean = 7.66ε)

RJ: 4 Equal Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.03ε (Mean = 0.418ε))

Max = 0.998ε (Mean = 0.387ε)

Max = 1.03ε (Mean = 0.418ε)

RJ: 3 Equal Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3.96ε (Mean = 1.06ε))

Max = 20.8ε (Mean = 0.986ε)

Max = 39.9ε (Mean = 1.17ε)

RJ: 2 Equal Values

Max = 0.6ε (Mean = 0.0228ε)

(GSL 2.1: Max = 2.57ε (Mean = 0.754ε))

Max = 220ε (Mean = 6.64ε)

Max = 214ε (Mean = 5.28ε)

RJ: Equal z and p

Max = 0.742ε (Mean = 0.0166ε)

(GSL 2.1: Max = 2.62ε (Mean = 0.699ε))

Max = 17.2ε (Mean = 1.16ε)

Max = 16.1ε (Mean = 1.14ε)


Table 20.40. Error rates for erf

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Erf Function: Small Values

Max = 0.925ε (Mean = 0.193ε)

(<cmath>: Max = 0.944ε (Mean = 0.191ε))
(<math.h>: Max = 0.944ε (Mean = 0.191ε))

Max = 0.841ε (Mean = 0.0687ε)

(GSL 2.1: Max = 2.06ε (Mean = 0.319ε))

Max = 0.925ε (Mean = 0.193ε)

(<math.h>: Max = 0.944ε (Mean = 0.194ε))

Max = 0.996ε (Mean = 0.182ε)

(<math.h>: Max = 1.57ε (Mean = 0.317ε))

Erf Function: Medium Values

Max = 1.5ε (Mean = 0.193ε)

(<cmath>: Max = 0.921ε (Mean = 0.0723ε))
(<math.h>: Max = 0.921ε (Mean = 0.0723ε))

Max = 1ε (Mean = 0.119ε)

(GSL 2.1: Max = 2.31ε (Mean = 0.368ε))

Max = 1.5ε (Mean = 0.197ε)

(<math.h>: Max = 0.921ε (Mean = 0.071ε))

Max = 1ε (Mean = 0.171ε)

(<math.h>: Max = 1.19ε (Mean = 0.244ε))

Erf Function: Large Values

Max = 0ε (Mean = 0ε)

(<cmath>: Max = 0ε (Mean = 0ε))
(<math.h>: Max = 0ε (Mean = 0ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε))

Max = 0ε (Mean = 0ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Max = 0ε (Mean = 0ε)

(<math.h>: Max = 0ε (Mean = 0ε))


Table 20.41. Error rates for erf_inv

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse Erf Function

Max = 0ε (Mean = 0ε)

Max = 0.996ε (Mean = 0.389ε)

Max = 1.08ε (Mean = 0.395ε)

Max = 1.09ε (Mean = 0.502ε)


Table 20.42. Error rates for erfc

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Erf Function: Small Values

Max = 0ε (Mean = 0ε)

(<cmath>: Max = 0ε (Mean = 0ε))
(<math.h>: Max = 0ε (Mean = 0ε))

Max = 0.658ε (Mean = 0.0537ε)

(GSL 2.1: Max = 1.01ε (Mean = 0.485ε))

Max = 0ε (Mean = 0ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Max = 0ε (Mean = 0ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Erf Function: Medium Values

Max = 1.76ε (Mean = 0.365ε)

(<cmath>: Max = 1.35ε (Mean = 0.307ε))
(<math.h>: Max = 1.35ε (Mean = 0.307ε))

Max = 0.983ε (Mean = 0.213ε)

(GSL 2.1: Max = 2.64ε (Mean = 0.662ε))

Max = 1.76ε (Mean = 0.38ε)

(<math.h>: Max = 2.81ε (Mean = 0.739ε))

Max = 1.65ε (Mean = 0.373ε)

(<math.h>: Max = 2.36ε (Mean = 0.539ε))

Erf Function: Large Values

Max = 1.57ε (Mean = 0.542ε)

(<cmath>: Max = 1.26ε (Mean = 0.441ε))
(<math.h>: Max = 1.26ε (Mean = 0.441ε))

Max = 0.868ε (Mean = 0.147ε)

(GSL 2.1: Max = 3.9ε (Mean = 0.472ε))

Max = 1.57ε (Mean = 0.564ε)

(<math.h>: Max = 4.91ε (Mean = 1.54ε))

Max = 1.14ε (Mean = 0.248ε)

(<math.h>: Max = 1.84ε (Mean = 0.331ε))


Table 20.43. Error rates for erfc_inv

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse Erfc Function

Max = 0ε (Mean = 0ε)

Max = 0.996ε (Mean = 0.397ε)

Max = 1.08ε (Mean = 0.403ε)

Max = 1ε (Mean = 0.491ε)

Inverse Erfc Function: extreme values

Max = 1.62ε (Mean = 0.383ε)

Max = 1.62ε (Mean = 0.383ε)


Table 20.44. Error rates for expint (Ei)

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Exponential Integral Ei

Max = 5.05ε (Mean = 0.821ε)

(<cmath>: Max = 14.1ε (Mean = 2.43ε) And other failures.)

Max = 0.994ε (Mean = 0.142ε)

(GSL 2.1: Max = 8.96ε (Mean = 0.703ε))

Max = 5.05ε (Mean = 0.835ε)

Max = 1.43ε (Mean = 0.54ε)

Exponential Integral Ei: double exponent range

Max = 1.72ε (Mean = 0.593ε)

(<cmath>: Max = 3.11ε (Mean = 1.13ε))

Max = 0.998ε (Mean = 0.156ε)

(GSL 2.1: Max = 1.5ε (Mean = 0.612ε))

Max = 1.72ε (Mean = 0.607ε)

Max = 1.7ε (Mean = 0.66ε)

Exponential Integral Ei: long exponent range

Max = 1.98ε (Mean = 0.595ε)

(<cmath>: Max = 1.93ε (Mean = 0.855ε))

Max = 1.98ε (Mean = 0.575ε)


Table 20.45. Error rates for expint (En)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Exponential Integral En

Max = 0.589ε (Mean = 0.0331ε)

(GSL 2.1: Max = 58.5ε (Mean = 17.1ε))

Max = 9.97ε (Mean = 2.13ε)

Max = 9.97ε (Mean = 2.13ε)

Max = 7.16ε (Mean = 1.85ε)

Exponential Integral En: small z values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 115ε (Mean = 23.6ε))

Max = 1.99ε (Mean = 0.559ε)

Max = 1.99ε (Mean = 0.559ε)

Max = 2.62ε (Mean = 0.531ε)

Exponential Integral E1

Max = 0.556ε (Mean = 0.0625ε)

(GSL 2.1: Max = 0.988ε (Mean = 0.469ε))

Max = 0.965ε (Mean = 0.414ε)

Max = 0.965ε (Mean = 0.408ε)

Max = 0.988ε (Mean = 0.486ε)


Table 20.46. Error rates for expm1

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Random test data

Max = 0.992ε (Mean = 0.402ε)

(<cmath>: Max = 0.992ε (Mean = 0.402ε))
(<math.h>: Max = 0.992ε (Mean = 0.402ε))

Max = 0.793ε (Mean = 0.126ε)

(Rmath 3.2.3: Max = 0.793ε (Mean = 0.126ε))

Max = 1.31ε (Mean = 0.428ε)

(<math.h>: Max = 0.996ε (Mean = 0.426ε))

Max = 1.31ε (Mean = 0.496ε)

(<math.h>: Max = 1.31ε (Mean = 0.496ε))


Table 20.47. Error rates for gamma_p

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma(a, z) medium values

Max = 0.955ε (Mean = 0.05ε)

(GSL 2.1: Max = 342ε (Mean = 45.8ε))
(Rmath 3.2.3: Max = 389ε (Mean = 44ε))

Max = 41.6ε (Mean = 8.09ε)

Max = 239ε (Mean = 30.2ε)

Max = 35.1ε (Mean = 6.98ε)

tgamma(a, z) small values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.82ε (Mean = 0.758ε))
(Rmath 3.2.3: Max = 1.01ε (Mean = 0.306ε))

Max = 2ε (Mean = 0.464ε)

Max = 2ε (Mean = 0.461ε)

Max = 1.54ε (Mean = 0.439ε)

tgamma(a, z) large values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.02e+03ε (Mean = 105ε))
(Rmath 3.2.3: Max = 1.11e+03ε (Mean = 67.5ε))

Max = 3.08e+04ε (Mean = 1.86e+03ε)

Max = 3.02e+04ε (Mean = 1.91e+03ε)

Max = 243ε (Mean = 20.2ε)

tgamma(a, z) integer and half integer values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 128ε (Mean = 22.6ε))
(Rmath 3.2.3: Max = 66.2ε (Mean = 12.2ε))

Max = 11.8ε (Mean = 2.66ε)

Max = 71.6ε (Mean = 9.47ε)

Max = 13ε (Mean = 2.97ε)


Table 20.48. Error rates for gamma_p_inv

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

incomplete gamma inverse(a, z) medium values

Max = 0.993ε (Mean = 0.15ε)

(Rmath 3.2.3: Max = 4.88ε (Mean = 0.868ε))

Max = 1.8ε (Mean = 0.406ε)

Max = 1.89ε (Mean = 0.466ε)

Max = 1.71ε (Mean = 0.34ε)

incomplete gamma inverse(a, z) large values

Max = 0ε (Mean = 0ε)

(Rmath 3.2.3: Max = 0.816ε (Mean = 0.0874ε))

Max = 0.509ε (Mean = 0.0447ε)

Max = 0.509ε (Mean = 0.0447ε)

Max = 0.924ε (Mean = 0.108ε)

incomplete gamma inverse(a, z) small values

Max = 441ε (Mean = 53.9ε)

(Rmath 3.2.3: Max = 547ε (Mean = 61.6ε))

Max = 9.17e+03ε (Mean = 1.45e+03ε)

Max = 1.09e+04ε (Mean = 1.3e+03ε)

Max = 1.1e+03ε (Mean = 131ε)


Table 20.49. Error rates for gamma_p_inva

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Incomplete gamma inverses.

Max = 0ε (Mean = 0ε)

Max = 7.87ε (Mean = 1.15ε)

Max = 4.08ε (Mean = 1.12ε)

Max = 4.92ε (Mean = 1.03ε)


Table 20.50. Error rates for gamma_q

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma(a, z) medium values

Max = 0.927ε (Mean = 0.035ε)

(GSL 2.1: Max = 201ε (Mean = 13.5ε))
(Rmath 3.2.3: Max = 131ε (Mean = 12.7ε))

Max = 32.3ε (Mean = 6.61ε)

Max = 199ε (Mean = 26.6ε)

Max = 23.7ε (Mean = 4ε)

tgamma(a, z) small values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.38e+10ε (Mean = 1.05e+09ε))
(Rmath 3.2.3: Max = 65.6ε (Mean = 11ε))

Max = 2.45ε (Mean = 0.885ε)

Max = 2.45ε (Mean = 0.819ε)

Max = 2.26ε (Mean = 0.74ε)

tgamma(a, z) large values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.71e+04ε (Mean = 2.16e+03ε))
(Rmath 3.2.3: Max = 1.02e+03ε (Mean = 62.7ε))

Max = 6.82e+03ε (Mean = 414ε)

Max = 1.15e+04ε (Mean = 733ε)

Max = 469ε (Mean = 31.5ε)

tgamma(a, z) integer and half integer values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 118ε (Mean = 12.5ε))
(Rmath 3.2.3: Max = 138ε (Mean = 16.9ε))

Max = 11.1ε (Mean = 2.07ε)

Max = 54.7ε (Mean = 6.16ε)

Max = 8.72ε (Mean = 1.48ε)


Table 20.51. Error rates for gamma_q_inv

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

incomplete gamma inverse(a, z) medium values

Max = 0.912ε (Mean = 0.154ε)

(Rmath 3.2.3: Max = 4.66ε (Mean = 0.792ε))

Max = 6.2ε (Mean = 0.627ε)

Max = 6.2ε (Mean = 0.683ε)

Max = 2.88ε (Mean = 0.469ε)

incomplete gamma inverse(a, z) large values

Max = 0.894ε (Mean = 0.0915ε)

(Rmath 3.2.3: Max = 0.894ε (Mean = 0.106ε))

Max = 0ε (Mean = 0ε)

Max = 0ε (Mean = 0ε)

Max = 0.814ε (Mean = 0.0856ε)

incomplete gamma inverse(a, z) small values

Max = 292ε (Mean = 36.4ε)

(Rmath 3.2.3: Max = 415ε (Mean = 48.7ε))

Max = 8.28e+03ε (Mean = 1.09e+03ε)

Max = 8.98e+03ε (Mean = 877ε)

Max = 451ε (Mean = 64.7ε)


Table 20.52. Error rates for gamma_q_inva

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Incomplete gamma inverses.

Max = 0ε (Mean = 0ε)

Max = 8.42ε (Mean = 1.3ε)

Max = 7.86ε (Mean = 1.24ε)

Max = 5.05ε (Mean = 1.08ε)


Table 20.53. Error rates for hermite

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Hermite Polynomials

Max = 0ε (Mean = 0ε)

Max = 6.24ε (Mean = 2.07ε)

Max = 6.24ε (Mean = 2.07ε)

Max = 4.46ε (Mean = 1.41ε)


Table 20.54. Error rates for heuman_lambda

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral Jacobi Zeta: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 1.89ε (Mean = 0.887ε)

Max = 1.89ε (Mean = 0.887ε)

Max = 1.08ε (Mean = 0.734ε)

Elliptic Integral Heuman Lambda: Random Data

Max = 0ε (Mean = 0ε)

Max = 3.82ε (Mean = 0.609ε)

Max = 3.82ε (Mean = 0.608ε)

Max = 2.12ε (Mean = 0.588ε)


Table 20.55. Error rates for ibeta

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Incomplete Beta Function: Small Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 682ε (Mean = 32.6ε))
(Rmath 3.2.3: Max = 22.9ε (Mean = 3.35ε))

Max = 8.97ε (Mean = 2.09ε)

Max = 21.3ε (Mean = 2.75ε)

Max = 8.4ε (Mean = 1.93ε)

Incomplete Beta Function: Medium Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 690ε (Mean = 151ε))
(Rmath 3.2.3: Max = 232ε (Mean = 27.9ε))

Max = 50ε (Mean = 12.1ε)

Max = 124ε (Mean = 18.4ε)

Max = 106ε (Mean = 16.3ε)

Incomplete Beta Function: Large and Diverse Values

Max = 1.26ε (Mean = 0.063ε)

(GSL 2.1: Max = 3.9e+05ε (Mean = 1.82e+04ε) And other failures.)
(Rmath 3.2.3: Max = 574ε (Mean = 49.4ε))

Max = 1.96e+04ε (Mean = 997ε)

Max = 4.98e+04ε (Mean = 2.07e+03ε)

Max = 1.32e+03ε (Mean = 68.5ε)

Incomplete Beta Function: Small Integer Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 254ε (Mean = 50.9ε))
(Rmath 3.2.3: Max = 62.2ε (Mean = 8.95ε))

Max = 4.45ε (Mean = 0.814ε)

Max = 44.5ε (Mean = 10.1ε)

Max = 3.85ε (Mean = 0.791ε)


Table 20.56. Error rates for ibeta_inv

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse incomplete beta

Max = 11ε (Mean = 0.345ε)

(Rmath 3.2.3: Max = 1.14e+121ε (Mean = 3.28e+119ε) And other failures.)

Max = 3.8e+04ε (Mean = 2.66e+03ε)

Max = 4.07e+04ε (Mean = 2.86e+03ε)

Max = 8.59e+03ε (Mean = 277ε)


Table 20.57. Error rates for ibeta_inva

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse incomplete beta

Max = 0.602ε (Mean = 0.0239ε)

Max = 377ε (Mean = 24.4ε)

Max = 438ε (Mean = 31.3ε)

Max = 242ε (Mean = 22.9ε)


Table 20.58. Error rates for ibeta_invb

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse incomplete beta

Max = 0.765ε (Mean = 0.0422ε)

Max = 407ε (Mean = 27.2ε)

Max = 407ε (Mean = 24.4ε)

Max = 409ε (Mean = 19.3ε)


Table 20.59. Error rates for ibetac

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Incomplete Beta Function: Small Values

Max = 0ε (Mean = 0ε)

(Rmath 3.2.3: Max = 22.4ε (Mean = 3.67ε))

Max = 10.6ε (Mean = 2.22ε)

Max = 13.8ε (Mean = 2.68ε)

Max = 6.94ε (Mean = 1.71ε)

Incomplete Beta Function: Medium Values

Max = 0ε (Mean = 0ε)

(Rmath 3.2.3: Max = 204ε (Mean = 25.8ε))

Max = 73.9ε (Mean = 11.2ε)

Max = 132ε (Mean = 19.8ε)

Max = 56.7ε (Mean = 14.3ε)

Incomplete Beta Function: Large and Diverse Values

Max = 0.981ε (Mean = 0.0573ε)

(Rmath 3.2.3: Max = 889ε (Mean = 68.4ε))

Max = 3.45e+04ε (Mean = 1.32e+03ε)

Max = 6.31e+04ε (Mean = 2.04e+03ε)

Max = 1.88e+03ε (Mean = 82.7ε)

Incomplete Beta Function: Small Integer Values

Max = 0ε (Mean = 0ε)

(Rmath 3.2.3: Max = 84.6ε (Mean = 18ε))

Max = 5.34ε (Mean = 1.11ε)

Max = 107ε (Mean = 17.1ε)

Max = 6.37ε (Mean = 1.03ε)


Table 20.60. Error rates for ibetac_inv

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse incomplete beta

Max = 0.977ε (Mean = 0.0976ε)

(Rmath 3.2.3: Max = 3.01e+132ε (Mean = 8.65e+130ε) And other failures.)

Max = 4.88e+04ε (Mean = 3.16e+03ε)

Max = 5.05e+04ε (Mean = 3.33e+03ε)

Max = 2.93e+03ε (Mean = 198ε)


Table 20.61. Error rates for ibetac_inva

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse incomplete beta

Max = 0.683ε (Mean = 0.0314ε)

Max = 382ε (Mean = 22.2ε)

Max = 315ε (Mean = 23.7ε)

Max = 408ε (Mean = 26.7ε)


Table 20.62. Error rates for ibetac_invb

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Inverse incomplete beta

Max = 0.724ε (Mean = 0.0303ε)

Max = 317ε (Mean = 19.8ε)

Max = 369ε (Mean = 22.6ε)

Max = 271ε (Mean = 16.4ε)


Table 20.63. Error rates for jacobi_cn

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Jacobi Elliptic: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 17.3ε (Mean = 4.29ε) And other failures.)

Max = 71.6ε (Mean = 19.3ε)

Max = 71.6ε (Mean = 19.4ε)

Max = 45.8ε (Mean = 11.4ε)

Jacobi Elliptic: Random Data

Max = 0.816ε (Mean = 0.0563ε)

(GSL 2.1: Max = 2.43ε (Mean = 0.803ε))

Max = 1.68ε (Mean = 0.443ε)

Max = 1.68ε (Mean = 0.454ε)

Max = 1.83ε (Mean = 0.455ε)

Jacobi Elliptic: Random Small Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 55.2ε (Mean = 1.64ε) And other failures.)

Max = 10.4ε (Mean = 0.594ε)

Max = 10.4ε (Mean = 0.602ε)

Max = 26.2ε (Mean = 1.17ε)

Jacobi Elliptic: Modulus near 1

Max = 0.919ε (Mean = 0.127ε)

(GSL 2.1: Max = 0ε (Mean = 0ε) And other failures.)

Max = 675ε (Mean = 87.1ε)

Max = 675ε (Mean = 86.8ε)

Max = 513ε (Mean = 126ε)

Jacobi Elliptic: Large Phi

Max = 14.2ε (Mean = 0.927ε)

(GSL 2.1: Max = 5.92e+03ε (Mean = 477ε))

Max = 2.97e+04ε (Mean = 1.9e+03ε)

Max = 2.97e+04ε (Mean = 1.9e+03ε)

Max = 3.27e+04ε (Mean = 1.93e+03ε)


Table 20.64. Error rates for jacobi_dn

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Jacobi Elliptic: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.82ε (Mean = 1.18ε) And other failures.)

Max = 49ε (Mean = 14ε)

Max = 49ε (Mean = 14ε)

Max = 34.3ε (Mean = 8.71ε)

Jacobi Elliptic: Random Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3ε (Mean = 0.61ε))

Max = 1.53ε (Mean = 0.473ε)

Max = 1.53ε (Mean = 0.481ε)

Max = 1.52ε (Mean = 0.466ε)

Jacobi Elliptic: Random Small Values

Max = 0.5ε (Mean = 0.0122ε)

(GSL 2.1: Max = 1.5ε (Mean = 0.391ε) And other failures.)

Max = 22.4ε (Mean = 0.777ε)

Max = 22.4ε (Mean = 0.763ε)

Max = 16.1ε (Mean = 0.685ε)

Jacobi Elliptic: Modulus near 1

Max = 2.28ε (Mean = 0.194ε)

(GSL 2.1: Max = 0ε (Mean = 0ε) And other failures.)

Max = 3.75e+03ε (Mean = 293ε)

Max = 3.75e+03ε (Mean = 293ε)

Max = 6.24e+03ε (Mean = 482ε)

Jacobi Elliptic: Large Phi

Max = 14.1ε (Mean = 0.897ε)

(GSL 2.1: Max = 121ε (Mean = 22ε))

Max = 2.82e+04ε (Mean = 1.79e+03ε)

Max = 2.82e+04ε (Mean = 1.79e+03ε)

Max = 1.67e+04ε (Mean = 1e+03ε)


Table 20.65. Error rates for jacobi_sn

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Jacobi Elliptic: Mathworld Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 588ε (Mean = 146ε) And other failures.)

Max = 341ε (Mean = 80.7ε)

Max = 341ε (Mean = 80.7ε)

Max = 481ε (Mean = 113ε)

Jacobi Elliptic: Random Data

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.02ε (Mean = 1.07ε))

Max = 2.01ε (Mean = 0.584ε)

Max = 2.01ε (Mean = 0.593ε)

Max = 1.92ε (Mean = 0.567ε)

Jacobi Elliptic: Random Small Values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 11.7ε (Mean = 1.65ε) And other failures.)

Max = 1.99ε (Mean = 0.347ε)

Max = 1.99ε (Mean = 0.347ε)

Max = 2.11ε (Mean = 0.385ε)

Jacobi Elliptic: Modulus near 1

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε) And other failures.)

Max = 109ε (Mean = 7.35ε)

Max = 109ε (Mean = 7.38ε)

Max = 23.2ε (Mean = 1.85ε)

Jacobi Elliptic: Large Phi

Max = 12ε (Mean = 0.771ε)

(GSL 2.1: Max = 4.54e+04ε (Mean = 2.63e+03ε))

Max = 2.45e+04ε (Mean = 1.51e+03ε)

Max = 2.45e+04ε (Mean = 1.51e+03ε)

Max = 4.36e+04ε (Mean = 2.54e+03ε)


Table 20.66. Error rates for jacobi_zeta

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Elliptic Integral Jacobi Zeta: Mathworld Data

Max = 0ε (Mean = 0ε)

Max = 1.66ε (Mean = 0.48ε)

Max = 1.66ε (Mean = 0.48ε)

Max = 1.52ε (Mean = 0.357ε)

Elliptic Integral Jacobi Zeta: Random Data

Max = 0ε (Mean = 0ε)

Max = 2.99ε (Mean = 0.824ε)

Max = 3.96ε (Mean = 1.06ε)

Max = 3.89ε (Mean = 0.824ε)

Elliptic Integral Jacobi Zeta: Large Phi Values

Max = 0ε (Mean = 0ε)

Max = 2.92ε (Mean = 0.951ε)

Max = 3.05ε (Mean = 1.13ε)

Max = 2.52ε (Mean = 0.977ε)


Table 20.67. Error rates for laguerre(n, m, x)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Associated Laguerre Polynomials

Max = 0.84ε (Mean = 0.0358ε)

(GSL 2.1: Max = 434ε (Mean = 10.7ε))

Max = 167ε (Mean = 6.38ε)

(<cmath>: Max = 206ε (Mean = 6.86ε))

Max = 167ε (Mean = 6.38ε)

Max = 434ε (Mean = 11.1ε)


Table 20.68. Error rates for laguerre(n, x)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Laguerre Polynomials

Max = 6.82ε (Mean = 0.408ε)

(GSL 2.1: Max = 3.1e+03ε (Mean = 185ε))

Max = 1.39e+04ε (Mean = 828ε)

(<cmath>: Max = 4.2e+03ε (Mean = 251ε))

Max = 1.39e+04ε (Mean = 828ε)

Max = 3.1e+03ε (Mean = 185ε)


Table 20.69. Error rates for legendre_p

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Legendre Polynomials: Small Values

Max = 0.732ε (Mean = 0.0619ε)

(GSL 2.1: Max = 211ε (Mean = 20.4ε))

Max = 69.2ε (Mean = 9.58ε)

(<cmath>: Max = 124ε (Mean = 13.2ε))

Max = 69.2ε (Mean = 9.58ε)

Max = 211ε (Mean = 20.4ε)

Legendre Polynomials: Large Values

Max = 0.632ε (Mean = 0.0693ε)

(GSL 2.1: Max = 300ε (Mean = 33.2ε))

Max = 699ε (Mean = 59.6ε)

(<cmath>: Max = 343ε (Mean = 32.1ε))

Max = 699ε (Mean = 59.6ε)

Max = 300ε (Mean = 33.2ε)


Table 20.70. Error rates for legendre_p (associated)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Associated Legendre Polynomials: Small Values

Max = 0.999ε (Mean = 0.05ε)

(GSL 2.1: Max = 121ε (Mean = 6.75ε) And other failures.)

Max = 175ε (Mean = 9.88ε)

(<cmath>: Max = 175ε (Mean = 9.36ε) And other failures.)

Max = 77.7ε (Mean = 5.59ε)

Max = 121ε (Mean = 7.14ε)


Table 20.71. Error rates for legendre_q

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Legendre Polynomials: Small Values

Max = 0.612ε (Mean = 0.0517ε)

(GSL 2.1: Max = 46.4ε (Mean = 7.46ε))

Max = 50.9ε (Mean = 9ε)

Max = 50.9ε (Mean = 8.98ε)

Max = 46.4ε (Mean = 7.32ε)

Legendre Polynomials: Large Values

Max = 2.49ε (Mean = 0.202ε)

(GSL 2.1: Max = 4.6e+03ε (Mean = 366ε))

Max = 5.98e+03ε (Mean = 478ε)

Max = 5.98e+03ε (Mean = 478ε)

Max = 4.6e+03ε (Mean = 366ε)


Table 20.72. Error rates for lgamma

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

factorials

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 33.6ε (Mean = 2.78ε))
(Rmath 3.2.3: Max = 1.55ε (Mean = 0.592ε))

Max = 0.991ε (Mean = 0.308ε)

(<cmath>: Max = 1.67ε (Mean = 0.487ε))
(<math.h>: Max = 1.67ε (Mean = 0.487ε))

Max = 0.991ε (Mean = 0.383ε)

(<math.h>: Max = 1.36ε (Mean = 0.476ε))

Max = 0.914ε (Mean = 0.175ε)

(<math.h>: Max = 0.958ε (Mean = 0.38ε))

near 0

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 5.21ε (Mean = 1.57ε))
(Rmath 3.2.3: Max = 0ε (Mean = 0ε))

Max = 1.42ε (Mean = 0.566ε)

(<cmath>: Max = 0.964ε (Mean = 0.543ε))
(<math.h>: Max = 0.964ε (Mean = 0.543ε))

Max = 1.42ε (Mean = 0.566ε)

(<math.h>: Max = 0.964ε (Mean = 0.543ε))

Max = 0.964ε (Mean = 0.462ε)

(<math.h>: Max = 0.962ε (Mean = 0.372ε))

near 1

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 442ε (Mean = 88.8ε))
(Rmath 3.2.3: Max = 7.99e+04ε (Mean = 1.68e+04ε))

Max = 0.948ε (Mean = 0.36ε)

(<cmath>: Max = 0.615ε (Mean = 0.096ε))
(<math.h>: Max = 0.615ε (Mean = 0.096ε))

Max = 0.948ε (Mean = 0.36ε)

(<math.h>: Max = 1.71ε (Mean = 0.581ε))

Max = 0.867ε (Mean = 0.468ε)

(<math.h>: Max = 0.906ε (Mean = 0.565ε))

near 2

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.17e+03ε (Mean = 274ε))
(Rmath 3.2.3: Max = 2.63e+05ε (Mean = 5.84e+04ε))

Max = 0.878ε (Mean = 0.242ε)

(<cmath>: Max = 0.741ε (Mean = 0.263ε))
(<math.h>: Max = 0.741ε (Mean = 0.263ε))

Max = 0.878ε (Mean = 0.242ε)

(<math.h>: Max = 0.598ε (Mean = 0.235ε))

Max = 0.591ε (Mean = 0.159ε)

(<math.h>: Max = 0.741ε (Mean = 0.473ε))

near -10

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 24.9ε (Mean = 4.6ε))
(Rmath 3.2.3: Max = 4.22ε (Mean = 1.26ε))

Max = 3.81ε (Mean = 1.01ε)

(<cmath>: Max = 0.997ε (Mean = 0.412ε))
(<math.h>: Max = 0.997ε (Mean = 0.412ε))

Max = 3.81ε (Mean = 1.01ε)

(<math.h>: Max = 3.04ε (Mean = 1.01ε))

Max = 4.22ε (Mean = 1.33ε)

(<math.h>: Max = 0.997ε (Mean = 0.444ε))

near -55

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 7.02ε (Mean = 1.47ε))
(Rmath 3.2.3: Max = 250ε (Mean = 60.9ε))

Max = 0.821ε (Mean = 0.513ε)

(<cmath>: Max = 1.58ε (Mean = 0.672ε))
(<math.h>: Max = 1.58ε (Mean = 0.672ε))

Max = 1.59ε (Mean = 0.587ε)

(<math.h>: Max = 0.821ε (Mean = 0.674ε))

Max = 0.821ε (Mean = 0.419ε)

(<math.h>: Max = 249ε (Mean = 43.1ε))


Table 20.73. Error rates for log1p

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Random test data

Max = 0.818ε (Mean = 0.227ε)

(<cmath>: Max = 0.818ε (Mean = 0.227ε))
(<math.h>: Max = 0.818ε (Mean = 0.227ε))

Max = 0.846ε (Mean = 0.153ε)

(Rmath 3.2.3: Max = 0.846ε (Mean = 0.153ε))

Max = 2.3ε (Mean = 0.66ε)

(<math.h>: Max = 0.818ε (Mean = 0.249ε))

Max = 0.509ε (Mean = 0.057ε)

(<math.h>: Max = 0.509ε (Mean = 0.057ε))


Table 20.74. Error rates for non central beta CDF

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Non Central Beta, medium parameters

Max = 0.998ε (Mean = 0.0649ε)

(Rmath 3.2.3: Max = 1.46e+26ε (Mean = 3.5e+24ε) And other failures.)

Max = 824ε (Mean = 27.4ε)

Max = 832ε (Mean = 38.1ε)

Max = 242ε (Mean = 31ε)

Non Central Beta, large parameters

Max = 1.18ε (Mean = 0.175ε)

(Rmath 3.2.3: Max = 1.01e+36ε (Mean = 1.19e+35ε) And other failures.)

Max = 2.5e+04ε (Mean = 3.78e+03ε)

Max = 2.57e+04ε (Mean = 4.45e+03ε)

Max = 3.66e+03ε (Mean = 500ε)


Table 20.75. Error rates for non central beta CDF complement

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Non Central Beta, medium parameters

Max = 0.998ε (Mean = 0.0936ε)

(Rmath 3.2.3: Max = 7.5e+97ε (Mean = 1.37e+96ε) And other failures.)

Max = 396ε (Mean = 50.7ε)

Max = 554ε (Mean = 57.2ε)

Max = 624ε (Mean = 62.7ε)

Non Central Beta, large parameters

Max = 0.986ε (Mean = 0.188ε)

(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 6.83e+03ε (Mean = 993ε)

Max = 3.56e+03ε (Mean = 707ε)

Max = 1.25e+04ε (Mean = 1.49e+03ε)


Table 20.76. Error rates for non central chi squared CDF

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Non Central Chi Squared, medium parameters

Max = 0.99ε (Mean = 0.0544ε)

(Rmath 3.2.3: Max = 727ε (Mean = 121ε))

Max = 46.5ε (Mean = 10.3ε)

Max = 115ε (Mean = 13.9ε)

Max = 48.9ε (Mean = 10ε)

Non Central Chi Squared, large parameters

Max = 1.07ε (Mean = 0.102ε)

(Rmath 3.2.3: Max = 3.27e+08ε (Mean = 2.23e+07ε))

Max = 3.07e+03ε (Mean = 336ε)

Max = 6.17e+03ε (Mean = 677ε)

Max = 9.79e+03ε (Mean = 723ε)


Table 20.77. Error rates for non central chi squared CDF complement

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Non Central Chi Squared, medium parameters

Max = 0.96ε (Mean = 0.0635ε)

(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 107ε (Mean = 17.2ε)

Max = 171ε (Mean = 22.8ε)

Max = 98.6ε (Mean = 15.8ε)

Non Central Chi Squared, large parameters

Max = 2.11ε (Mean = 0.278ε)

(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 5.02e+03ε (Mean = 630ε)

Max = 5.1e+03ε (Mean = 577ε)

Max = 5.43e+03ε (Mean = 705ε)


Table 20.78. Error rates for non central t CDF

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Non Central T

Max = 0.796ε (Mean = 0.0691ε)

(Rmath 3.2.3: Max = 5.28e+15ε (Mean = 8.49e+14ε) And other failures.)

Max = 139ε (Mean = 31ε)

Max = 145ε (Mean = 30.9ε)

Max = 135ε (Mean = 32.1ε)

Non Central T (small non-centrality)

Max = 0ε (Mean = 0ε)

(Rmath 3.2.3: Max = 2.09e+03ε (Mean = 244ε))

Max = 3.86ε (Mean = 1.4ε)

Max = 9.15ε (Mean = 2.13ε)

Max = 6.17ε (Mean = 1.45ε)

Non Central T (large parameters)

Max = 257ε (Mean = 72.1ε)

(Rmath 3.2.3: Max = 2.46ε (Mean = 0.657ε))

Max = 5.26e+05ε (Mean = 1.48e+05ε)

Max = 5.24e+05ε (Mean = 1.47e+05ε)

Max = 286ε (Mean = 62.8ε)


Table 20.79. Error rates for non central t CDF complement

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Non Central T

Max = 0.707ε (Mean = 0.0497ε)

(Rmath 3.2.3: Max = 6.19e+15ε (Mean = 6.72e+14ε) And other failures.)

Max = 201ε (Mean = 31.7ε)

Max = 340ε (Mean = 43.2ε)

Max = 154ε (Mean = 32.1ε)

Non Central T (small non-centrality)

Max = 0ε (Mean = 0ε)

(Rmath 3.2.3: Max = 1.87e+03ε (Mean = 263ε))

Max = 10.5ε (Mean = 2.13ε)

Max = 10.5ε (Mean = 2.39ε)

Max = 4.6ε (Mean = 1.63ε)

Non Central T (large parameters)

Max = 478ε (Mean = 96.3ε)

(Rmath 3.2.3: Max = 2.24ε (Mean = 0.945ε))

Max = 9.79e+05ε (Mean = 1.97e+05ε)

Max = 9.79e+05ε (Mean = 1.97e+05ε)

Max = 227ε (Mean = 50.4ε)


Table 20.80. Error rates for owens_t

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Owens T (medium small values)

Max = 0ε (Mean = 0ε)

Max = 3.34ε (Mean = 0.944ε)

Max = 3.34ε (Mean = 0.911ε)

Max = 4.37ε (Mean = 0.98ε)

Owens T (large and diverse values)

Max = 0ε (Mean = 0ε)

Max = 49ε (Mean = 2.16ε)

Max = 24.5ε (Mean = 1.39ε)

Max = 3.78ε (Mean = 0.621ε)


Table 20.81. Error rates for polygamma

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Mathematica Data

Max = 0.824ε (Mean = 0.0574ε)

(GSL 2.1: Max = 62.9ε (Mean = 12.8ε))
(Rmath 3.2.3: Max = 108ε (Mean = 15.2ε))

Max = 7.38ε (Mean = 1.84ε)

Max = 34.3ε (Mean = 7.65ε)

Max = 9.32ε (Mean = 1.95ε)

Mathematica Data - large arguments

Max = 0.998ε (Mean = 0.0592ε)

(GSL 2.1: Max = 244ε (Mean = 32.8ε) And other failures.)
(Rmath 3.2.3: Max = 1.71e+56ε (Mean = 1.01e+55ε) And other failures.)

Max = 2.23ε (Mean = 0.323ε)

Max = 11.1ε (Mean = 0.848ε)

Max = 150ε (Mean = 13.9ε)

Mathematica Data - negative arguments

Max = 0.516ε (Mean = 0.022ε)

(GSL 2.1: Max = 36.6ε (Mean = 3.04ε) And other failures.)
(Rmath 3.2.3: Max = 0ε (Mean = 0ε) And other failures.)

Max = 269ε (Mean = 87.7ε)

Max = 269ε (Mean = 88.4ε)

Max = 497ε (Mean = 129ε)

Mathematica Data - large negative arguments

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.79ε (Mean = 0.197ε) And other failures.)
(Rmath 3.2.3: Max = 0ε (Mean = 0ε) And other failures.)

Max = 155ε (Mean = 96.4ε)

Max = 155ε (Mean = 96.4ε)

Max = 162ε (Mean = 101ε)

Mathematica Data - small arguments

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 15.2ε (Mean = 5.03ε))
(Rmath 3.2.3: Max = 106ε (Mean = 20ε))

Max = 3.33ε (Mean = 0.75ε)

Max = 3.33ε (Mean = 0.75ε)

Max = 3ε (Mean = 0.496ε)

Mathematica Data - Large orders and other bug cases

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 151ε (Mean = 39.3ε) And other failures.)
(Rmath 3.2.3: Max = +INFε (Mean = +INFε) And other failures.)

Max = 54.5ε (Mean = 13.3ε)

Max = 145ε (Mean = 55.9ε)

Max = 200ε (Mean = 57.2ε)


Table 20.82. Error rates for powm1

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

powm1

Max = 1.06ε (Mean = 0.425ε)

Max = 2.04ε (Mean = 0.493ε)

Max = 1.88ε (Mean = 0.49ε)

Max = 1.84ε (Mean = 0.486ε)


Table 20.83. Error rates for sin_pi

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

sin_pi and cos_pi

Max = 0ε (Mean = 0ε)

Max = 0.996ε (Mean = 0.335ε)

Max = 0.996ε (Mean = 0.336ε)

Max = 0.99ε (Mean = 0.328ε)

sin_pi and cos_pi near integers and half integers

Max = 0ε (Mean = 0ε)

Max = 0.976ε (Mean = 0.293ε)

Max = 0.976ε (Mean = 0.293ε)

Max = 0.996ε (Mean = 0.343ε)


Table 20.84. Error rates for sph_bessel

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel j: Random Data

Max = 243ε (Mean = 13.3ε)

(<cmath>: Max = 1.91e+06ε (Mean = 1.09e+05ε))

Max = 0.978ε (Mean = 0.0445ε)

(GSL 2.1: Max = 1.79e+03ε (Mean = 107ε))

Max = 243ε (Mean = 33.7ε)

Max = 245ε (Mean = 16.3ε)


Table 20.85. Error rates for sph_bessel_prime

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Bessel j': Random Data

Max = 0.753ε (Mean = 0.0343ε)

Max = 167ε (Mean = 12ε)

Max = 167ε (Mean = 33.2ε)

Max = 307ε (Mean = 25.2ε)


Table 20.86. Error rates for sph_neumann

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

y: Random Data

Max = 234ε (Mean = 19.5ε)

(<cmath>: Max = 1.6e+06ε (Mean = 1.4e+05ε))

Max = 0.995ε (Mean = 0.0665ε)

(GSL 2.1: Max = 8.5e+04ε (Mean = 5.33e+03ε))

Max = 234ε (Mean = 19.8ε)

Max = 281ε (Mean = 31.1ε)


Table 20.87. Error rates for sph_neumann_prime

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

y': Random Data

Max = 0.988ε (Mean = 0.0869ε)

Max = 158ε (Mean = 18.8ε)

Max = 158ε (Mean = 20.2ε)

Max = 296ε (Mean = 25.6ε)


Table 20.88. Error rates for spherical_harmonic_i

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Spherical Harmonics

Max = 1.36ε (Mean = 0.0765ε)

Max = 2.89e+03ε (Mean = 108ε)

Max = 1.03e+04ε (Mean = 327ε)

Max = 2.27e+04ε (Mean = 725ε)


Table 20.89. Error rates for spherical_harmonic_r

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Spherical Harmonics

Max = 1.58ε (Mean = 0.0707ε)

Max = 2.89e+03ε (Mean = 108ε)

Max = 1.03e+04ε (Mean = 327ε)

Max = 2.27e+04ε (Mean = 725ε)


Table 20.90. Error rates for sqrt1pm1

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

sqrt1pm1

Max = 1.3ε (Mean = 0.404ε)

Max = 1.33ε (Mean = 0.404ε)

Max = 1.54ε (Mean = 0.563ε)

Max = 1.35ε (Mean = 0.497ε)


Table 20.91. Error rates for tgamma

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

factorials

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3.95ε (Mean = 0.783ε))
(Rmath 3.2.3: Max = 314ε (Mean = 93.4ε))

Max = 2.67ε (Mean = 0.617ε)

(<cmath>: Max = 1.66ε (Mean = 0.584ε))
(<math.h>: Max = 1.66ε (Mean = 0.584ε))

Max = 172ε (Mean = 41ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Max = 1.85ε (Mean = 0.566ε)

(<math.h>: Max = 3.17ε (Mean = 0.928ε))

near 0

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.51ε (Mean = 1.92ε))
(Rmath 3.2.3: Max = 1ε (Mean = 0.335ε))

Max = 2ε (Mean = 0.608ε)

(<cmath>: Max = 1ε (Mean = 0.376ε))
(<math.h>: Max = 1ε (Mean = 0.376ε))

Max = 2ε (Mean = 0.647ε)

(<math.h>: Max = 0.5ε (Mean = 0.0791ε))

Max = 1.5ε (Mean = 0.635ε)

(<math.h>: Max = 1ε (Mean = 0.405ε))

near 1

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 4.41ε (Mean = 1.81ε))
(Rmath 3.2.3: Max = 1ε (Mean = 0.32ε))

Max = 2.51ε (Mean = 1.02ε)

(<cmath>: Max = 0.918ε (Mean = 0.203ε))
(<math.h>: Max = 0.918ε (Mean = 0.203ε))

Max = 3.01ε (Mean = 1.06ε)

(<math.h>: Max = 1ε (Mean = 0.175ε))

Max = 1.1ε (Mean = 0.59ε)

(<math.h>: Max = 1ε (Mean = 0.4ε))

near 2

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 7.95ε (Mean = 3.12ε))
(Rmath 3.2.3: Max = 1ε (Mean = 0.191ε))

Max = 4.1ε (Mean = 1.55ε)

(<cmath>: Max = 0.558ε (Mean = 0.298ε))
(<math.h>: Max = 0.558ε (Mean = 0.298ε))

Max = 5.01ε (Mean = 1.89ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Max = 2ε (Mean = 0.733ε)

(<math.h>: Max = 0ε (Mean = 0ε))

near -10

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 2.6ε (Mean = 1.05ε))
(Rmath 3.2.3: Max = 34.9ε (Mean = 9.2ε))

Max = 1.75ε (Mean = 0.895ε)

(<cmath>: Max = 2.26ε (Mean = 1.08ε))
(<math.h>: Max = 2.26ε (Mean = 1.08ε))

Max = 1.75ε (Mean = 0.819ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Max = 1.86ε (Mean = 0.881ε)

(<math.h>: Max = 0.866ε (Mean = 0.445ε))

near -55

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 1.8ε (Mean = 0.782ε))
(Rmath 3.2.3: Max = 3.89e+04ε (Mean = 9.52e+03ε))

Max = 2.69ε (Mean = 1.09ε)

(<cmath>: Max = 1.79ε (Mean = 0.75ε))
(<math.h>: Max = 1.79ε (Mean = 0.75ε))

Max = 98.5ε (Mean = 53.4ε)

(<math.h>: Max = 0ε (Mean = 0ε))

Max = 2.7ε (Mean = 1.35ε)

(<math.h>: Max = 3.87e+04ε (Mean = 6.71e+03ε))


Table 20.92. Error rates for tgamma1pm1

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma1pm1(dz)

Max = 0ε (Mean = 0ε)

Max = 1.12ε (Mean = 0.49ε)

Max = 6.61ε (Mean = 0.84ε)

Max = 3.31ε (Mean = 0.517ε)


Table 20.93. Error rates for tgamma_delta_ratio

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma + small delta ratios

Max = 0ε (Mean = 0ε)

Max = 5.83ε (Mean = 1.3ε)

Max = 15.4ε (Mean = 2.09ε)

Max = 7.56ε (Mean = 1.31ε)

tgamma + small delta ratios (negative delta)

Max = 0ε (Mean = 0ε)

Max = 7.94ε (Mean = 1.4ε)

Max = 18.3ε (Mean = 2.03ε)

Max = 7.43ε (Mean = 1.42ε)

tgamma + small integer ratios

Max = 0ε (Mean = 0ε)

Max = 1.96ε (Mean = 0.677ε)

Max = 1.96ε (Mean = 0.677ε)

Max = 2.74ε (Mean = 0.736ε)

tgamma + small integer ratios (negative delta)

Max = 0ε (Mean = 0ε)

Max = 1.62ε (Mean = 0.451ε)

Max = 1.62ε (Mean = 0.451ε)

Max = 2.15ε (Mean = 0.685ε)

integer tgamma ratios

Max = 0ε (Mean = 0ε)

Max = 0.997ε (Mean = 0.4ε)

Max = 0.997ε (Mean = 0.4ε)

Max = 0.968ε (Mean = 0.386ε)

integer tgamma ratios (negative delta)

Max = 0ε (Mean = 0ε)

Max = 0.853ε (Mean = 0.176ε)

Max = 0.853ε (Mean = 0.176ε)

Max = 0.974ε (Mean = 0.175ε)


Table 20.94. Error rates for tgamma (incomplete)

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma(a, z) medium values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 200ε (Mean = 13.3ε))

Max = 8.47ε (Mean = 1.9ε)

Max = 412ε (Mean = 95.5ε)

Max = 8.14ε (Mean = 1.76ε)

tgamma(a, z) small values

Max = 0.753ε (Mean = 0.0474ε)

(GSL 2.1: Max = 1.38e+10ε (Mean = 1.05e+09ε))

Max = 2.31ε (Mean = 0.775ε)

Max = 2.13ε (Mean = 0.717ε)

Max = 2.53ε (Mean = 0.66ε)

tgamma(a, z) integer and half integer values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 117ε (Mean = 12.5ε))

Max = 5.52ε (Mean = 1.48ε)

Max = 79.6ε (Mean = 20.9ε)

Max = 5.16ε (Mean = 1.33ε)


Table 20.95. Error rates for tgamma_lower

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma(a, z) medium values

Max = 0.833ε (Mean = 0.0315ε)

(GSL 2.1: Max = 0.833ε (Mean = 0.0315ε))

Max = 6.79ε (Mean = 1.46ε)

Max = 363ε (Mean = 63.8ε)

Max = 5.62ε (Mean = 1.49ε)

tgamma(a, z) small values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε))

Max = 1.97ε (Mean = 0.555ε)

Max = 1.97ε (Mean = 0.558ε)

Max = 1.57ε (Mean = 0.525ε)

tgamma(a, z) integer and half integer values

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0ε (Mean = 0ε))

Max = 4.83ε (Mean = 1.15ε)

Max = 84.7ε (Mean = 17.5ε)

Max = 2.69ε (Mean = 0.849ε)


Table 20.96. Error rates for tgamma_ratio

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

tgamma ratios

Max = 0.694ε (Mean = 0.0347ε)

Max = 2.99ε (Mean = 1.15ε)

Max = 174ε (Mean = 61.2ε)

Max = 3.28ε (Mean = 1.12ε)


Table 20.97. Error rates for trigamma

GNU C++ version 7.1.0
linux
double

GNU C++ version 7.1.0
linux
long double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Mathematica Data

Max = 0.998ε (Mean = 0.105ε)

(GSL 2.1: Max = 1.34e+04ε (Mean = 1.49e+03ε))
(Rmath 3.2.3: Max = 1.34e+04ε (Mean = 1.51e+03ε))

Max = 1.28ε (Mean = 0.449ε)

Max = 1.28ε (Mean = 0.449ε)

Max = 1ε (Mean = 0.382ε)


Table 20.98. Error rates for zeta

GNU C++ version 7.1.0
linux
long double

GNU C++ version 7.1.0
linux
double

Sun compiler version 0x5150
Sun Solaris
long double

Microsoft Visual C++ version 14.1
Win32
double

Zeta: Random values greater than 1

Max = 0.846ε (Mean = 0.0833ε)

(<cmath>: Max = 5.45ε (Mean = 1ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 8.69ε (Mean = 1.03ε))

Max = 0.846ε (Mean = 0.0833ε)

Max = 0.836ε (Mean = 0.093ε)

Zeta: Random values less than 1

Max = 7.03ε (Mean = 2.93ε)

(<cmath>: Max = 538ε (Mean = 59.3ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 137ε (Mean = 13.8ε))

Max = 70.1ε (Mean = 17.1ε)

Max = 6.84ε (Mean = 3.12ε)

Zeta: Values close to and greater than 1

Max = 0.995ε (Mean = 0.5ε)

(<cmath>: Max = 1.9e+06ε (Mean = 5.11e+05ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 7.73ε (Mean = 4.07ε))

Max = 0.995ε (Mean = 0.5ε)

Max = 0.994ε (Mean = 0.421ε)

Zeta: Values close to and less than 1

Max = 0.998ε (Mean = 0.508ε)

(<cmath>: Max = 8.53e+06ε (Mean = 1.87e+06ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 0.991ε (Mean = 0.28ε))

Max = 0.998ε (Mean = 0.508ε)

Max = 0.991ε (Mean = 0.375ε)

Zeta: Integer arguments

Max = 9ε (Mean = 3.06ε)

(<cmath>: Max = 70.3ε (Mean = 17.4ε))

Max = 0ε (Mean = 0ε)

(GSL 2.1: Max = 3.75ε (Mean = 1.1ε))

Max = 28ε (Mean = 5.62ε)

Max = 9ε (Mean = 3ε)



PrevUpHomeNext