Note that exp(x)-1 can be approximated by x + x^2/2! + ... + x^n/n! and for any value
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
expm1 —
Возвращает результат exp($num) - 1
, вычисленный так,
чтобы он был точным, даже если значение числа близко к нулю.
Функция expm1() возвращает эквивалент значения выражения
exp($
, вычисленный так,
чтобы результат был точным, даже если значение аргумента num
) - 1num
близко к нулю,
тогда как значение выражения exp($
будет неточным
из-за вычитания двух почти равных чисел.
num
) - 1
num
Входное значение
Возвращает e
в степени num
, минус один.
Note that exp(x)-1 can be approximated by x + x^2/2! + ... + x^n/n! and for any value
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:
<?php
function expm1($x) {
return ($x>-1.0e-6 && $x<1.0e-6) ? ($x + $x*$x/2) : (exp($x)-1);
}
?>