atan¶
- atan(x: array, /) array ¶
Calculates an implementation-dependent approximation of the principal value of the inverse tangent for each element
x_i
of the input arrayx
.Each element-wise result is expressed in radians.
Note
The principal value of the inverse tangent of a complex number \(z\) is
\[\operatorname{atan}(z) = -\frac{\ln(1 - zj) - \ln(1 + zj)}{2}j\]Note
For complex floating-point operands,
atan(conj(x))
must equalconj(atan(x))
.Note
The inverse tangent (or arc tangent) is a multi-valued function and requires a branch on the complex plane. By convention, a branch cut is placed at the line segments \((-\infty j, -j)\) and \((+j, \infty j)\) of the imaginary axis.
Accordingly, for complex arguments, the function returns the inverse tangent in the range of a strip unbounded along the imaginary axis and in the interval \([-\pi/2, +\pi/2]\) along the real axis.
Note: branch cuts follow C99 and have provisional status (see Branch Cuts).
- Parameters:
x (array) – input array. Should have a floating-point data type.
- Returns:
out (array) – an array containing the inverse tangent of each element in
x
. The returned array must have a floating-point data type determined by Type Promotion Rules.
Notes
Special cases
For real-valued floating-point operands,
If
x_i
isNaN
, the result isNaN
.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 an implementation-dependent approximation to+π/2
.If
x_i
is-infinity
, the result is an implementation-dependent approximation to-π/2
.
For complex floating-point operands, special cases must be handled as if the operation is implemented as
-1j * atanh(x*1j)
.Changed in version 2022.12: Added complex data type support.