Python(NumPy)で配列要素の三角関数・逆正接(arctan)を求める方法
逆正接(アークタンジェント)とは
arctan(逆正接、atan または tan-1 とも呼ばれます)は多価関数です。つまり、各 x に対して tan(z) = x を満たす z は無限に存在します。
一般的な規約では、実部が [-π/2, π/2] の範囲に収まる角度 z を返します。実数型の入力データに対しては、arctan は常に実数の出力を返します。実数や無限大として表現できない値が入力された場合は nan を返し、無効な浮動小数点エラーフラグを設定します。複素数入力の場合、arctan は [1j, infj] と [-1j, -infj] を分枝切断線とする複素解析関数となり、前者については左側から、後者については右側から連続になります。
numpy.arctan() メソッドの概要
配列要素の三角関数・逆正接(アークタンジェント)を求めるには、Python の NumPy ライブラリで numpy.arctan() メソッドを使用します。このメソッドは tan の逆関数を返します。つまり、y = tan(x) ならば x = arctan(y) という関係が成り立ちます。
- 第1引数: 配列のようなオブジェクト(array-like)。計算対象となる入力データです。
- 第2引数(任意): ndarray 型。結果を格納する場所を指定します。指定する場合は、入力がブロードキャストされる形状と一致している必要があります。省略または None の場合は、新しく確保された配列が返されます。タプルを渡す場合、その長さは出力の数と等しくなければなりません。
- 第3引数(任意): 条件(condition)。入力に対してブロードキャストされます。条件が True の位置では out 配列に ufunc の結果が設定され、それ以外の位置では out 配列は元の値を保持します。
手順
まず、必要なライブラリをインポートします。
import numpy as np
numpy.array() メソッドを使って配列を作成し、その要素の逆正接を求めます。
arr = np.array((1, -1, 0, 0.3))
作成した配列を表示します。
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)最後に、配列要素の三角関数・逆正接を求めて表示します。
print("\nResult...", np.arctan(arr))完全なコード例
import numpy as np
# 配列要素の三角関数・逆正接を求めるには、
# Python Numpy の numpy.arctan() メソッドを使用する
# このメソッドは tan の逆関数を返す。
# y = tan(x) ならば x = arctan(y)
print("配列要素の逆正接を求めます...\n")
# numpy.array() メソッドで配列を作成
arr = np.array((1, -1, 0, 0.3))
# 配列を表示
print("Array...\n", arr)
# 配列のデータ型を表示
print("\nOur Array type...\n", arr.dtype)
# 配列の次元数を表示
print("\nOur Array Dimensions...\n", arr.ndim)
# 配列の要素数を表示
print("\nNumber of elements...\n", arr.size)
# 配列要素の三角関数・逆正接を求める
print("\nResult...", np.arctan(arr))実行結果
Get the Trigonometric inverse tangent of the array elements... Array... [ 1. -1. 0. 0.3] Our Array type... float64 Our Array Dimensions... 1 Number of elements... 4 Result... [ 0.78539816 -0.78539816 0. 0.29145679]
実行結果からわかるように、各要素に対して arctan がラジアン単位で計算されています。例えば、tan(π/4) = 1 であるため、要素 1 に対する結果は π/4 ≒ 0.78539816 となります。負の値 -1 に対しては -0.78539816、0 に対しては 0、そして 0.3 に対しては約 0.29145679 が返されます。
-
Python NumPyのsin()メソッドで角度の正弦(サイン)を求める方法
PythonのNumPyライブラリでは、numpy.sin()メソッドを使うことで、角度の三角関数である正弦(サイン)を簡単に計算できます。このメソッドは、第1引数xの各要素に対してサイン値を返し、スカラーが渡された場合はスカラー値を返します。第1引数xにはラジアン単位の角度を指定します(2πが360度に相当)。第2引数と第3引数は省略可能です。numpy.sin()の主なパラメータ第2引数(out):計算結果を格納するためのndarrayです。指定する場合は、入力がブロードキャストされる形状と一致している必要があります。指定しない場合やNoneの場合は、新しく確保された配列が返されます。タプ
-
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です。指定