numpy.log1p¶

numpy.
log1p
(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) = <ufunc 'log1p'>¶ Return the natural logarithm of one plus the input array, elementwise.
Calculates
log(1 + x)
.Parameters:  x : array_like
Input values.
 out : ndarray, None, or tuple of ndarray and None, optional
A location into which the result is stored. If provided, it must have a shape that the inputs broadcast to. If not provided or None, a freshlyallocated array is returned. A tuple (possible only as a keyword argument) must have length equal to the number of outputs.
 where : array_like, optional
Values of True indicate to calculate the ufunc at that position, values of False indicate to leave the value in the output alone.
 **kwargs
For other keywordonly arguments, see the ufunc docs.
Returns:  y : ndarray
Natural logarithm of 1 + x, elementwise. This is a scalar if x is a scalar.
Notes
For realvalued input,
log1p
is accurate also for x so small that 1 + x == 1 in floatingpoint accuracy.Logarithm is a multivalued function: for each x there is an infinite number of z such that exp(z) = 1 + x. The convention is to return the z whose imaginary part lies in [pi, pi].
For realvalued input data types,
log1p
always returns real output. For each value that cannot be expressed as a real number or infinity, it yieldsnan
and sets the invalid floating point error flag.For complexvalued input,
log1p
is a complex analytical function that has a branch cut [inf, 1] and is continuous from above on it.log1p
handles the floatingpoint negative zero as an infinitesimal negative number, conforming to the C99 standard.References
[1] M. Abramowitz and I.A. Stegun, “Handbook of Mathematical Functions”, 10th printing, 1964, pp. 67. http://www.math.sfu.ca/~cbm/aands/ [2] Wikipedia, “Logarithm”. https://en.wikipedia.org/wiki/Logarithm Examples
>>> np.log1p(1e99) 1e99 >>> np.log(1 + 1e99) 0.0