atan_op
Structs
Struct: ATan
Fields
Methods
fwd(arg0: Array) -> Array
Computes the ArcPointertangent of the input array element-wise.
Args
arg0
:Array
The input array.
Returns
Array
- An array containing the ArcPointertangent of each element in the input array.
Examples:
a = Array([[1, 2], [3, 4]])
result = atan(a)
print(result)
Note: This function supports:
- Automatic differentiation (forward and reverse modes).
- Complex valued arguments.
jvp(primals: List[Array], tangents: List[Array]) -> Array
Computes the Jacobian-vector product for the ArcPointertangent function.
Args
-
primals
:List[Array]
A list containing the primal input array. -
tangents
:List[Array]
A list containing the tangent vector.
Returns
Array
- The Jacobian-vector product for the ArcPointertangent function.
Implements forward-mode automatic differentiation for the ArcPointertangent function.
Note: The Jacobian-vector product for the ArcPointertangent is computed as 1 / (1 + x^2) * dx, where x is the primal input and dx is the tangent vector.
vjp(primals: List[Array], grad: Array, out: Array) -> List[Array]
Computes the vector-Jacobian product for the ArcPointertangent function.
Args
-
primals
:List[Array]
A list containing the primal input array. -
grad
:Array
The gradient of the output with respect to some scalar function. -
out
:Array
The output of the forward pass (unused in this function).
Returns
List[Array]
- A list containing the gradient with respect to the input.
Implements reverse-mode automatic differentiation for the ArcPointertangent function.
unary_simd_op(arg0_real: SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)], arg0_imag: SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)]) -> Tuple[SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)], SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)]]
Low-level function to compute the ArcPointertangent of a complex number represented as SIMD vectors.
Args
-
arg0_real
:SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)]
The real part of the complex number. -
arg0_imag
:SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)]
The imaginary part of the complex number.
Returns
Tuple[SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)], SIMD[float32, nelts[::DType]().__mul__(2).__floordiv__(2)]]
- The real and imaginary parts of the ArcPointertangent of the complex number as a tuple.
__call__(mut curr: Array, args: List[Array])
Performs the forward pass for element-wise ArcPointertangent computation of an array.
Args
-
curr
:Array
The current array to store the result (modified in-place). -
args
:List[Array]
A list containing the input array.
Computes the ArcPointertangent of each element in the input array and stores the result in the current array. Initializes the current array if not already set up.
Note: This function assumes that the shape and data of the args are already set up. If the current array (curr) is not initialized, it computes the shape based on the input array and sets up the data accordingly.
Functions
atan
atan(arg0: Array) -> Array
Computes the ArcPointertangent of the input array element-wise.
Args
arg0
:Array
The input array.
Returns
Array
- An array containing the ArcPointertangent of each element in the input array.
Examples:
a = Array([[1, 2], [3, 4]])
result = atan(a)
print(result)
Note: This function supports:
- Automatic differentiation (forward and reverse modes).
- Complex valued arguments.