Python NumPyのarctanh()メソッドで配列要素の逆双曲線正接(atanh)を計算する方法
逆双曲線正接(arctanh)は多価関数です。つまり、任意の x に対して tanh(z) = x を満たす数 z は無数に存在します。慣例として、虚部が [-pi/2, pi/2] の範囲に収まる z が返されます。なお、逆双曲線正接は「atanh」や「tanh^-1」という名称でも知られています。
配列要素の逆双曲線正接を計算するには、Python の NumPy ライブラリに含まれる numpy.arctanh() メソッドを使用します。このメソッドは入力 x と同じ形状の配列を返し、x がスカラーの場合は結果もスカラーになります。第1引数の x には入力配列を指定し、第2引数と第3引数は省略可能です。
主なパラメータ
- x(第1引数): 計算対象となる入力配列です。
- out(第2引数): 結果を格納するための ndarray を指定します。指定する場合は、入力がブロードキャストされた後の形状と一致している必要があります。省略した場合や None を指定した場合は、新しく確保された配列が返されます。
- where(第3引数): 入力全体にブロードキャストされる条件です。条件が True の位置には ufunc の計算結果が書き込まれ、それ以外の位置では out 配列の元の値がそのまま保持されます。
手順
まず、必要なライブラリをインポートします。
import numpy as np
NumPy の array() メソッドを使って配列を作成します。
arr = np.array((0, 0.2, 0.3, 0.5, 0.11))
作成した配列を表示します。
print("Array...\n", arr)
配列のデータ型を確認します。
print("\nArray datatype...\n", arr.dtype)
配列の次元数を取得します。
print("\nArray Dimensions...\n", arr.ndim)
配列の要素数を取得します。
print("\nNumber of elements in the Array...\n", arr.size)
配列要素の逆双曲線正接を求めるには、numpy.arctanh() メソッドを使用します。
print("\nResult...", np.arctanh(arr))
サンプルコード
import numpy as np
# 配列要素の逆双曲線正接を計算するには、numpy.arctanh() メソッドを使用します
# このメソッドは x と同じ形状の配列を返します(x がスカラーなら結果もスカラー)
# 第1引数の x は入力配列です
print("配列要素の逆双曲線正接を取得します...")
# array() メソッドで配列を作成
arr = np.array((0, 0.2, 0.3, 0.5, 0.11))
# 配列を表示
print("\nArray...\n", arr)
# 配列のデータ型を表示
print("\nOur Array type...\n", arr.dtype)
# 配列の次元数を表示
print("\nOur Array Dimensions...\n", arr.ndim)
# 配列の要素数を表示
print("\nNumber of elements...\n", arr.size)
# numpy.arctanh() メソッドで逆双曲線正接を計算
print("\nResult...", np.arctanh(arr))
出力結果
Get the Trigonometric inverse Hyperbolic tangent of array elements... Array... [0. 0.2 0.3 0.5 0.11] Our Array type... float64 Our Array Dimensions... 1 Number of elements... 5 Result... [0. 0.20273255 0.3095196 0.54930614 0.11044692]
注意点
実数の範囲では、逆双曲線正接は |x| < 1 の場合にのみ定義されます。|x| = 1 では結果は無限大となり、|x| > 1 の場合は NaN(非数)が返されますので注意してください。複素数を入力とした場合は、定義域外でも計算が行われます。
-
Python NumPyのnp.tanh()で配列要素の双曲線正接を計算する方法
配列要素の双曲線正接(ハイパボリック・タンジェント)を計算するには、PythonのNumPyが提供する numpy.tanh() メソッドを使用します。このメソッドは np.sinh(x)/np.cosh(x) または -1j * np.tan(1j*x) と数学的に等価であり、入力値に対応する双曲線正接の値を返します。入力 x がスカラーの場合、戻り値もスカラーになります。np.tanh()の主な引数第1引数(x): 入力となる配列です。ここに渡した各要素に対して双曲線正接が計算されます。第2引数と第3引数は省略可能です。第2引数(out): 計算結果を格納するためのndarrayです。指定
-
Pythonで双曲線正接(tanh)を計算する方法|NumPyのtanh()関数の使い方
PythonのNumPyで双曲線正接(ハイパボリックタンジェント)を計算するには、numpy.tanh()メソッドを使用します。この関数は np.sinh(x)/np.cosh(x) または -1j * np.tan(1j*x) と等価であり、入力値に対応する双曲線正接の値を返します。スカラー値を渡した場合、結果もスカラーとして返されます。 numpy.tanh()の主なパラメータ 第1引数(x): 入力配列を指定します。 第2引数(out・任意): 計算結果を格納するndarrayを指定します。指定する場合は、入力がブロードキャストされる形状と一致している必要があります。省略した場合やNon