diff options
Diffstat (limited to 'libm/man/exp.3')
-rw-r--r-- | libm/man/exp.3 | 236 |
1 files changed, 0 insertions, 236 deletions
diff --git a/libm/man/exp.3 b/libm/man/exp.3 deleted file mode 100644 index f6aed8f..0000000 --- a/libm/man/exp.3 +++ /dev/null @@ -1,236 +0,0 @@ -.\" Copyright (c) 1985, 1991 Regents of the University of California. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" from: @(#)exp.3 6.12 (Berkeley) 7/31/91 -.\" $FreeBSD: src/lib/msun/man/exp.3,v 1.22 2005/04/05 02:57:28 das Exp $ -.\" -.Dd April 5, 2005 -.Dt EXP 3 -.Os -.Sh NAME -.Nm exp , -.Nm expf , -.\" The sorting error is intentional. exp and expf should be adjacent. -.Nm exp2 , -.Nm exp2f , -.Nm expm1 , -.Nm expm1f , -.Nm log , -.Nm logf , -.Nm log10 , -.Nm log10f , -.Nm log1p , -.Nm log1pf , -.Nm pow , -.Nm powf -.Nd exponential, logarithm, power functions -.Sh LIBRARY -.Lb libm -.Sh SYNOPSIS -.In math.h -.Ft double -.Fn exp "double x" -.Ft float -.Fn expf "float x" -.Ft double -.Fn exp2 "double x" -.Ft float -.Fn exp2f "float x" -.Ft double -.Fn expm1 "double x" -.Ft float -.Fn expm1f "float x" -.Ft double -.Fn log "double x" -.Ft float -.Fn logf "float x" -.Ft double -.Fn log10 "double x" -.Ft float -.Fn log10f "float x" -.Ft double -.Fn log1p "double x" -.Ft float -.Fn log1pf "float x" -.Ft double -.Fn pow "double x" "double y" -.Ft float -.Fn powf "float x" "float y" -.Sh DESCRIPTION -The -.Fn exp -and the -.Fn expf -functions compute the base -.Ms e -exponential value of the given argument -.Fa x . -.Pp -The -.Fn exp2 -and the -.Fn exp2f -functions compute the base 2 exponential of the given argument -.Fa x . -.Pp -The -.Fn expm1 -and the -.Fn expm1f -functions compute the value exp(x)\-1 accurately even for tiny argument -.Fa x . -.Pp -The -.Fn log -and the -.Fn logf -functions compute the value of the natural logarithm of argument -.Fa x . -.Pp -The -.Fn log10 -and the -.Fn log10f -functions compute the value of the logarithm of argument -.Fa x -to base 10. -.Pp -The -.Fn log1p -and the -.Fn log1pf -functions compute -the value of log(1+x) accurately even for tiny argument -.Fa x . -.Pp -The -.Fn pow -and the -.Fn powf -functions compute the value -of -.Ar x -to the exponent -.Ar y . -.Sh ERROR (due to Roundoff etc.) -The values of -.Fn exp 0 , -.Fn expm1 0 , -.Fn exp2 integer , -and -.Fn pow integer integer -are exact provided that they are representable. -.\" XXX Is this really true for pow()? -Otherwise the error in these functions is generally below one -.Em ulp . -.Sh RETURN VALUES -These functions will return the appropriate computation unless an error -occurs or an argument is out of range. -The functions -.Fn pow x y -and -.Fn powf x y -raise an invalid exception and return an \*(Na if -.Fa x -< 0 and -.Fa y -is not an integer. -An attempt to take the logarithm of \*(Pm0 will result in -a divide-by-zero exception, and an infinity will be returned. -An attempt to take the logarithm of a negative number will -result in an invalid exception, and an \*(Na will be generated. -.Sh NOTES -The functions exp(x)\-1 and log(1+x) are called -expm1 and logp1 in -.Tn BASIC -on the Hewlett\-Packard -.Tn HP Ns \-71B -and -.Tn APPLE -Macintosh, -.Tn EXP1 -and -.Tn LN1 -in Pascal, exp1 and log1 in C -on -.Tn APPLE -Macintoshes, where they have been provided to make -sure financial calculations of ((1+x)**n\-1)/x, namely -expm1(n\(**log1p(x))/x, will be accurate when x is tiny. -They also provide accurate inverse hyperbolic functions. -.Pp -The function -.Fn pow x 0 -returns x**0 = 1 for all x including x = 0, \*(If, and \*(Na . -Previous implementations of pow may -have defined x**0 to be undefined in some or all of these -cases. -Here are reasons for returning x**0 = 1 always: -.Bl -enum -width indent -.It -Any program that already tests whether x is zero (or -infinite or \*(Na) before computing x**0 cannot care -whether 0**0 = 1 or not. -Any program that depends -upon 0**0 to be invalid is dubious anyway since that -expression's meaning and, if invalid, its consequences -vary from one computer system to another. -.It -Some Algebra texts (e.g.\& Sigler's) define x**0 = 1 for -all x, including x = 0. -This is compatible with the convention that accepts a[0] -as the value of polynomial -.Bd -literal -offset indent -p(x) = a[0]\(**x**0 + a[1]\(**x**1 + a[2]\(**x**2 +...+ a[n]\(**x**n -.Ed -.Pp -at x = 0 rather than reject a[0]\(**0**0 as invalid. -.It -Analysts will accept 0**0 = 1 despite that x**y can -approach anything or nothing as x and y approach 0 -independently. -The reason for setting 0**0 = 1 anyway is this: -.Bd -ragged -offset indent -If x(z) and y(z) are -.Em any -functions analytic (expandable -in power series) in z around z = 0, and if there -x(0) = y(0) = 0, then x(z)**y(z) \(-> 1 as z \(-> 0. -.Ed -.It -If 0**0 = 1, then -\*(If**0 = 1/0**0 = 1 too; and -then \*(Na**0 = 1 too because x**0 = 1 for all finite -and infinite x, i.e., independently of x. -.El -.Sh SEE ALSO -.Xr fenv 3 , -.Xr math 3 |