Compare this to log1p (which is its inverse).
Also, You may have to use a similar workaraound in case the underlying C library
does not support expm1:
function expm1($x) {
return ($x>-1.0e-6 && $x<1.0e-6) ? ($x + $x*$x/2) : (exp($x)-1);
}
expm1
(PHP 4 >= 4.0.7, PHP 5)
expm1 — Returns exp(number) - 1, computed in a way that is accurate even when the value of number is close to zero
Description
float expm1
( float $arg
)
Warning
This function is EXPERIMENTAL. The behaviour of this function, its name, and surrounding documentation may change without notice in a future release of PHP. This function should be used at your own risk.
expm1() returns the equivalent to 'exp(arg ) - 1' computed in a way that is accurate even if the value of arg is near zero, a case where 'exp (arg ) - 1' would be inaccurate due to subtraction of two numbers that are nearly equal.
Parameters
- arg
-
The argument to process
Return Values
'e' to the power of arg minus one
ChangeLog
| Version | Description |
|---|---|
| 5.3.0 | This function is now available on all platforms |
expm1
hagen at von-eitzen dot de
24-Feb-2003 12:57
24-Feb-2003 12:57
