log1p

log1p(x: array, /) array

Calculates an implementation-dependent approximation to log(1+x), where log refers to the natural (base e) logarithm, having domain [-1, +infinity] and codomain [-infinity, +infinity], for each element x_i of the input array x.

Note

The purpose of this function is to calculate log(1+x) more accurately when x is close to zero. Accordingly, conforming implementations should avoid implementing this function as simply log(1+x). See FDLIBM, or some other IEEE 754-2019 compliant mathematical library, for a potential reference implementation.

Special cases

For floating-point operands,

  • If x_i is NaN, the result is NaN.

  • If x_i is less than -1, the result is NaN.

  • If x_i is -1, the result is -infinity.

  • If x_i is -0, the result is -0.

  • If x_i is +0, the result is +0.

  • If x_i is +infinity, the result is +infinity.

Parameters:

x (array) – input array. Should have a floating-point data type.

Returns:

out (array) – an array containing the evaluated result for each element in x. The returned array must have a floating-point data type determined by Type Promotion Rules.