exp man page on NeXTSTEP

Man page or keyword search:  
man Server   1419 pages
apropos Keyword Search (all sections)
Output format
NeXTSTEP logo
[printable version]


EXP(3M)								       EXP(3M)

NAME
       exp, log, log10, pow, expm1, log1p - exponential, logarithm, power

SYNOPSIS
       #include <math.h>

       double exp(double x);

       double log(double x);

       double log10(double x);

       double pow(double x, double y);

(ALSO AVAILABLE IN BSD)
       double expm1(double x);

       double log1p(double x);

DESCRIPTION
       Exp returns the exponential function of x.

       Log returns the natural logarithm of x.

       Log10 returns the logarithm of x to base 10.

       Pow(x,y) returns x**y.

       Expm1 returns exp(x)-1 accurately even for tiny x.

       Log1p returns log(1+x) accurately even for tiny x.

ERROR (due to roundoff, etc.)
       exp(x),	log(x),	 expm1(x)  and log1p(x) are accurate to within an ulp,
       and log10(x) to within about 2 ulps; an ulp is one  Unit	 in  the  Last
       Place.	The error in pow(x,y) is below about 2 ulps when its magnitude
       is moderate, but increases as pow(x,y)  approaches  the	over/underflow
       thresholds  until  almost as many bits could be lost as are occupied by
       the floating-point format's exponent field.  No such drastic  loss  has
       been  exposed  by  testing.  Moderate values of pow are accurate enough
       that pow(integer,integer) is exact until it is bigger than 2**56	 on  a
       VAX, 2**53 for IEEE 754.

NOTES
       The functions exp(x)-1 and log(1+x) are called expm1 and logp1 in BASIC
       on the Hewlett-Packard HP-71B and APPLE	Macintosh,  EXP1  and  LN1  in
       Pascal,	exp1  and log1 in C on 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.

       Pow(x,0) returns x**0 = 1 for all x including x = 0,  Infinity  operand
       on a VAX).  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:

       (1) Any	program	 that  already tests whether x is zero (or infinite or
	   NaN) 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.

       (2) 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
		p(x) = a[0]∗x**0 + a[1]∗x**1 + a[2]∗x**2 +...+ a[n]∗x**n

	   at x = 0 rather than reject a[0]∗0**0 as invalid.

       (3) 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:

	   If  x(z)  and  y(z) are 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.

       (4) If 0**0 = 1, then infinity**0 = 1/0**0 = 1 too; and then NaN**0 = 1
	   too because	x**0  =	 1  for	 all  finite  and  infinite  x,	 i.e.,
	   independently of x.

SEE ALSO
       math(3M)

AUTHOR
       Kwok-Choi Ng, W. Kahan

4th Berkeley Distribution	August 1, 1992			       EXP(3M)
[top]

List of man pages available for NeXTSTEP

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net