2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-27 07:02:08 +00:00

Updated docs with error rates and links to GSL/GLIBC etc.

[SVN r38676]
This commit is contained in:
John Maddock
2007-08-15 14:15:53 +00:00
parent e16e81bf10
commit a8fd036dfb
10 changed files with 81 additions and 72 deletions

View File

@@ -61,7 +61,7 @@ a simplified version of this implementation
[h4 Accuracy]
The following tables show how the accuracy of these functions
varies on various platforms, along with a comparison to the GSL library.
varies on various platforms, along with a comparison to the __gsl library.
Note that only results for the widest floating-point type on the
system are given, as narrower types have __zero_error. All values
are relative errors in units of epsilon.

View File

@@ -62,7 +62,7 @@ a simplified version of this implementation
[h4 Accuracy]
The following tables show how the accuracy of these functions
varies on various platforms, along with comparisons to the GSL and
varies on various platforms, along with comparisons to the __gsl and
Cephes libraries. Note that the cyclic nature of these
functions means that they have an infinite number of irrational
roots: in general these functions have arbitrarily large /relative/
@@ -110,7 +110,7 @@ GSL Peak=500 Mean=54
Cephes Peak=923 Mean=83]
[Peak=561 Mean=36
GSL Peak=2x10[super 6][space] Mean\=1x10[super 5][space]
GSL Peak=1.4x10[super 6][space] Mean\=7x10[super 4][space]
Cephes Peak=+INF]]
[[64] [Red Hat Linux IA64 / G++ 3.4] [Peak=470 Mean=56] [Peak=843 Mean=51] [Peak=741 Mean=51] ]

View File

@@ -40,7 +40,7 @@ when T1 and T2 are different types.
[h4 Accuracy]
The following table shows peak errors for various domains of input arguments,
plus comparisons to other open source implementations where available. Note that
along with comparisons to the __gsl and Cephes libraries. Note that
only results for the widest floating point type on the system are given as
narrower types have __zero_error.

View File

@@ -57,7 +57,8 @@ Returns the complement of the [@http://functions.wolfram.com/GammaBetaErf/Erfc/
[h4 Accuracy]
The following table shows the peak errors (in units of epsilon)
found on various platforms with various floating point types.
found on various platforms with various floating point types,
along with comparisons to the __gsl, __glibc, __hpc and Cephes libraries.
Unless otherwise specified any floating point type that is narrower
than the one shown will have __zero_error.
@@ -78,25 +79,25 @@ GSL Peak=0 Mean=0
Cephes Peak=0 Mean=0]]
[[64] [RedHat Linux IA32, gcc-3.3] [Peak=0.7 Mean=0.07
Native Peak=0.9 Mean=0.2] [Peak=0.9 Mean=0.2
__glibc Peak=0.9 Mean=0.2] [Peak=0.9 Mean=0.2
Native Peak=0.9 Mean=0.07] [Peak=0 Mean=0
__glibc Peak=0.9 Mean=0.07] [Peak=0 Mean=0
Native Peak=0 Mean=0]]
__glibc Peak=0 Mean=0]]
[[64] [Redhat Linux IA64, gcc-3.4.4] [Peak=0.7 Mean=0.07
Native Peak=0 Mean=0] [Peak=0.9 Mean=0.1
__glibc Peak=0 Mean=0] [Peak=0.9 Mean=0.1
Native Peak=0.5 Mean=0.03] [Peak=0 Mean=0
__glibc Peak=0.5 Mean=0.03] [Peak=0 Mean=0
Native Peak=0 Mean=0]]
__glibc Peak=0 Mean=0]]
[[113] [HPUX IA64, aCC A.06.06] [Peak=0.8 Mean=0.1
Native Peak=0.9 Mean=0.2] [Peak=0.9 Mean=0.1
__hpc Lib Peak=0.9 Mean=0.2] [Peak=0.9 Mean=0.1
Native Peak=0.5 Mean=0.02] [Peak=0 Mean=0
__hpc Lib Peak=0.5 Mean=0.02] [Peak=0 Mean=0
Native Peak=0 Mean=0]]
__hpc Lib Peak=0 Mean=0]]
]
[table Errors In the Function erfc(z)
@@ -116,25 +117,25 @@ GSL Peak=3.9 Mean=0.4
Cephes Peak=2.7 Mean=0.4]]
[[64] [RedHat Linux IA32, gcc-3.3] [Peak=0 Mean=0
Native Peak=0 Mean=0] [Peak=1.4 Mean=0.3
__glibc Peak=0 Mean=0] [Peak=1.4 Mean=0.3
Native Peak=1.3 Mean=0.3] [Peak=1.6 Mean=0.4
__glibc Peak=1.3 Mean=0.3] [Peak=1.6 Mean=0.4
Native Peak=1.3 Mean=0.4]]
__glibc Peak=1.3 Mean=0.4]]
[[64] [Redhat Linux IA64, gcc-3.4.4] [Peak=0 Mean=0
Native Peak=0 Mean=0] [Peak=1.4 Mean=0.3
__glibc Peak=0 Mean=0] [Peak=1.4 Mean=0.3
Native Peak=0 Mean=0] [Peak=1.5 Mean=0.4
__glibc Peak=0 Mean=0] [Peak=1.5 Mean=0.4
Native Peak=0 Mean=0] ]
__glibc Peak=0 Mean=0] ]
[[113] [HPUX IA64, aCC A.06.06] [Peak=0 Mean=0
Native Peak=0 Mean=0] [Peak=1.5 Mean=0.3
__hpc Peak=0 Mean=0] [Peak=1.5 Mean=0.3
Native Peak=0.9 Mean=0.08] [Peak=1.6 Mean=0.4
__hpc Peak=0.9 Mean=0.08] [Peak=1.6 Mean=0.4
Native Peak=0.9 Mean=0.1]]
__hpc Peak=0.9 Mean=0.1]]
]
[h4 Testing]

View File

@@ -96,7 +96,7 @@ Returns the full (non-normalised) complement of the incomplete beta function of
[h4 Accuracy]
The following tables give peak and mean relative errors in over various domains of
a, b and x, along with comparisons to other open source implementations where available.
a, b and x, along with comparisons to the __gsl and Cephes libraries.
Note that only results for the widest floating-point type on the system are given as
narrower types have __zero_error.

View File

@@ -103,7 +103,7 @@ Returns the full (non-normalised) upper incomplete gamma function of a and z:
[h4 Accuracy]
The following tables give peak and mean relative errors in over various domains of
a and z, along with comparisons to other open source implementations where available.
a and z, along with comparisons to the __gsl and Cephes libraries.
Note that only results for the widest floating point type on the system are given as
narrower types have __zero_error.
@@ -119,37 +119,37 @@ All values are in units of epsilon.
[table Errors In the Function gamma_p(a,z)
[[Significand Size] [Platform and Compiler]
[0.5 < a < 100
[0.5 < a < 100
and
and
0.01*a < z < 100*a]
[1x10[super -12] < a < 5x10[super -2]
0.01*a < z < 100*a]
[1x10[super -12] < a < 5x10[super -2]
and
and
0.01*a < z < 100*a]
[1e-6 < a < 1.7x10[super 6]
0.01*a < z < 100*a]
[1e-6 < a < 1.7x10[super 6]
and
and
1 < z < 100*a]]
1 < z < 100*a]]
[[53] [Win32, Visual C++ 8]
[Peak=36 Mean=9.1
[Peak=36 Mean=9.1
(GSL Peak=342 Mean=46)
(GSL Peak=342 Mean=46)
(Cephes Peak=491 Mean=102)]
[Peak=4.5 Mean=1.4
(Cephes Peak=491 Mean=102)]
[Peak=4.5 Mean=1.4
(GSL Peak=4.8 Mean=0.76)
(GSL Peak=4.8 Mean=0.76)
(Cephes Peak=21 Mean=5.6)]
[Peak=244 Mean=21
(Cephes Peak=21 Mean=5.6)]
[Peak=244 Mean=21
(GSL Peak=1022 Mean=1054)
(GSL Peak=1022 Mean=1054)
(Cephes Peak~8x10[super 6] Mean~7x10[super 4])]]
(Cephes Peak~8x10[super 6] Mean~7x10[super 4])]]
[[64] [RedHat Linux IA32, gcc-3.3] [Peak=241 Mean=36] [Peak=4.7 Mean=1.5] [Peak~30,220 Mean=1929]]
[[64] [Redhat Linux IA64, gcc-3.4] [Peak=41 Mean=10] [Peak=4.7 Mean=1.4] [Peak~30,790 Mean=1864]]
[[113] [HPUX IA64, aCC A.06.06] [Peak=40.2 Mean=10.2] [Peak=5 Mean=1.6] [Peak=5,476 Mean=440]]

View File

@@ -50,7 +50,9 @@ the result is of type `double` if T is an integer type, or type T otherwise.
The following table shows the peak errors (in units of epsilon)
found on various platforms
with various floating point types. Unless otherwise specified any
with various floating point types, along with comparisons to the
__gsl, __glibc, __hpc and
Cephes libraries. Unless otherwise specified any
floating point type that is narrower than the one shown will have
__zero_error.
@@ -77,44 +79,44 @@ a low absolute error can be guaranteed.
[[64] [Linux IA32 / GCC]
[Peak=1.9 Mean=0.43
(Native Peak=1.7 Mean=0.49)]
(__glibc Peak=1.7 Mean=0.49)]
[Peak=1.4 Mean=0.57
(Native Peak= 0.96 Mean=0.54)]
(__glibc Peak= 0.96 Mean=0.54)]
[Peak=0.86 Mean=0.35
(Native Peak=0.74 Mean=0.26)]
(__glibc Peak=0.74 Mean=0.26)]
[Peak=6.0 Mean=1.8
(Native Peak=3.0 Mean=0.86)] ]
(__glibc Peak=3.0 Mean=0.86)] ]
[[64] [Linux IA64 / GCC]
[Peak=0.99 Mean=0.12
(Native=0)]
(__glibc Peak 0)]
[Pek=1.2 Mean=0.6
(Native=0)]
(__glibc Peak 0)]
[Peak=0.86 Mean=0.16
(Native=0)]
(__glibc Peak 0)]
[Peak=2.3 Mean=0.69
(Native 0)] ]
(__glibc Peak 0)] ]
[[113] [HPUX IA64, aCC A.06.06]
[Peak=0.96 Mean=0.13
(Native=0)]
(__hpc Peak 0)]
[Peak=0.99 Mean=0.53
(Native=0)]
(__hpc Peak 0)]
[Peak=0.9 Mean=0.4
(Native=0)]
(__hpc Peak 0)]
[Peak=3.0 Mean=0.9
(Native=0)] ]
(__hpc Peak 0)] ]
]
[h4 Testing]

View File

@@ -193,6 +193,11 @@ and use the function's name as the link text]
__chf, __mean, __median, __mode, __variance, __sd, __skewness,
__kurtosis, __kurtosis_excess, __range and __support]
[def __gsl [@http://www.gnu.org/software/gsl/ GSL-1.9]]
[def __glibc [@http://www.gnu.org/software/libc/ GNU C Lib]]
[def __hpc [@http://docs.hp.com/en/B9106-90010/index.html HP-UX C Library]]
[/ Some composite templates]
[template super[x]'''<superscript>'''[x]'''</superscript>''']
[template sub[x]'''<subscript>'''[x]'''</subscript>''']

View File

@@ -42,7 +42,7 @@ immune to optimizer-induced errors.
Finally when BOOST_HAS_LOG1P is defined then the `float/double/long double`
specializations of this template simply forward to the platform's
native implementation of this function.
native (POSIX) implementation of this function.
[h4 Accuracy]
@@ -86,7 +86,7 @@ a series expansion when x is small (giving an accuracy of less than __te).
Finally when BOOST_HAS_EXPM1 is defined then the `float/double/long double`
specializations of this template simply forward to the platform's
native implementation of this function.
native (POSIX) implementation of this function.
[h4 Accuracy]

View File

@@ -70,7 +70,8 @@ the result is `double` when T is an integer type, and T otherwise.
[h4 Accuracy]
The following table shows the peak errors (in units of epsilon)
found on various platforms with various floating point types.
found on various platforms with various floating point types,
along with comparisons to the __gsl, __glibc, __hpc and Cephes libraries.
Unless otherwise specified any floating point type that is narrower
than the one shown will have __zero_error.
@@ -100,42 +101,42 @@ than the one shown will have __zero_error.
[[64] [Linux IA32 / GCC]
[Peak=300 Mean=49.5
(Native Peak=395 Mean=89)]
(__glibc Peak=395 Mean=89)]
[Peak=3.0 Mean=1.4
(Native Peak=11 Mean=3.3)]
(__glibc Peak=11 Mean=3.3)]
[Peak=5.0 Mean=1.8
(Native Peak=0.92 Mean=0.2)]
(__glibc Peak=0.92 Mean=0.2)]
[Peak=157 Mean=65
(Native Peak=205 Mean=108)] ]
(__glibc Peak=205 Mean=108)] ]
[[64] [Linux IA64 / GCC]
[Peak=2.8 Mean=0.9
[__glibc Peak 2.8 Mean=0.9
(Native=0.7)]
(__glibc Peak 0.7)]
[Peak=4.8 Mean=1.5
(Native=0)]
(__glibc Peak 0)]
[Peak=4.8 Mean=1.5
(Native=0)]
(__glibc Peak 0)]
[Peak=5.0 Mean=1.7
(Native 0)] ]
(__glibc Peak 0)] ]
[[113] [HPUX IA64, aCC A.06.06]
[Peak=2.5 Mean=1.1
(Native=0)]
(__hpc Peak 0)]
[Peak=3.5 Mean=1.7
(Native=0)]
(__hpc Peak 0)]
[Peak=3.5 Mean=1.6
(Native=0)]
(__hpc Peak 0)]
[Peak=5.2 Mean=1.92
(Native=0)] ]
(__hpc Peak 0)] ]
]
[h4 Testing]