NumPy arctanh()
The numpy.arctanh()
function computes the inverse hyperbolic tangent (arctanh) of each element in an input array.
The input values must be in the range -1 < x < 1
, as the function is undefined outside this range.
Syntax
</>
Copy
numpy.arctanh(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True)
Parameters
Parameter | Type | Description |
---|---|---|
x | array_like | Input array containing values in the range (-1, 1). |
out | ndarray, None, or tuple of ndarray and None, optional | Optional output array where the result is stored. If None, a new array is created. |
where | array_like, optional | Boolean mask specifying which elements to compute. Elements where where=False retain their original value. |
casting | str, optional | Defines the casting behavior when computing the function. |
order | str, optional | Memory layout order of the output array. |
dtype | data-type, optional | Defines the data type of the output array. |
subok | bool, optional | Determines if subclasses of ndarray are preserved in the output. |
Return Value
Returns an array with the inverse hyperbolic tangent values of the input elements. If the input is a scalar, a scalar is returned.
Examples
1. Computing Inverse Hyperbolic Tangent of a Single Value
Here, we compute the inverse hyperbolic tangent of a single number within the valid range (-1, 1).
</>
Copy
import numpy as np
# Define a value within the valid range (-1, 1)
value = 0.5
# Compute the inverse hyperbolic tangent
result = np.arctanh(value)
# Print the result
print("arctanh(0.5):", result)
Output:
arctanh(0.5): 0.5493061443340549

2. Computing Inverse Hyperbolic Tangent for an Array of Values
We compute the inverse hyperbolic tangent for multiple values in an array.
</>
Copy
import numpy as np
# Define an array of values within the valid range (-1, 1)
values = np.array([-0.9, -0.5, 0, 0.5, 0.9])
# Compute the inverse hyperbolic tangent of each value
arctanh_values = np.arctanh(values)
# Print the results
print("Input values:", values)
print("Inverse hyperbolic tangent values:", arctanh_values)
Output:
Input values: [-0.9 -0.5 0. 0.5 0.9]
Inverse hyperbolic tangent values: [-1.47221949 -0.54930614 0. 0.54930614 1.47221949]

3. Using the out
Parameter
Using an output array to store results instead of creating a new array.
</>
Copy
import numpy as np
# Define an array of values within the valid range
values = np.array([-0.7, -0.3, 0.2, 0.6])
# Create an output array with the same shape
output_array = np.empty_like(values)
# Compute arctanh and store the result in output_array
np.arctanh(values, out=output_array)
# Print the results
print("Computed inverse hyperbolic tangent values:", output_array)
Output:
Computed inverse hyperbolic tangent values: [-0.86730053 -0.3095196 0.20273255 0.69314718]

4. Using the where
Parameter
Using a condition to compute arctanh only for selected elements.
</>
Copy
import numpy as np
# Define an array of values within the valid range
values = np.array([-0.8, -0.4, 0, 0.4, 0.8])
# Define a mask (compute arctanh only where mask is True)
mask = np.array([True, False, True, False, True])
# Compute arctanh values where mask is True
result = np.arctanh(values, where=mask)
# Print the results
print("Computed inverse hyperbolic tangent values with mask:", result)
Output:
Computed inverse hyperbolic tangent values with mask: [-1.09861229 0.5 0. 1.5 1.09861229]

The arctanh values are computed only for elements where mask=True
.