NumPy - 三角函数 ufunc
三角函数通用函数 (ufunc)
NumPy 中的三角函数通用函数 (ufunc) 是对数组中每个元素执行三角运算的函数。这些函数可以计算输入数组中每个元素的各种三角函数值,例如正弦、余弦、正切及其倒数。
这些函数对数组进行逐元素运算,并针对性能进行了优化,使其比使用 Python 循环更快。
NumPy 正弦函数
numpy.sin() 函数用于计算数组中每个元素的正弦值。输入值假定为弧度。
直角三角形中某个角的正弦值是对边长度与斜边长度的比值。它表示为 sin()。
示例
在以下示例中,我们使用 numpy.sin() 函数计算数组中每个元素的正弦值 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/2, np.pi, 3*np.pi/2]) # 计算每个角度的正弦值 sine_values = np.sin(angles) print("正弦值:", sine_values)
以下是得到的结果 -
正弦值: [ 0.0000000e+00 1.0000000e+00 1.2246468e-16 -1.0000000e+00]
NumPy 余弦函数
numpy.cos() 函数用于计算数组中每个元素的余弦值。
直角三角形中某个角的余弦值是邻边与斜边之比。它表示为 cos()。
示例
在下面的示例中,我们使用 numpy.cos() 函数计算数组中每个元素的余弦值 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/2, np.pi, 3*np.pi/2]) # 计算每个角度的余弦值 cosine_values = np.cos(angles) print("余弦值:", cosine_values)
这将产生以下结果 -
余弦值: [ 1.0000000e+00 6.1232340e-17 -1.0000000e+00 -1.8369702e-16]
NumPy 正切函数
numpy.tan() 函数用于计算数组中每个元素的正切。
直角三角形中一个角的正切是对边与邻边长度的比值。它表示为 tan()。
示例
以下示例中,我们使用 numpy.tan() 函数计算数组中每个元素的正切值 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/4, np.pi/2, np.pi]) # 计算每个角度的正切值 tangent_values = np.tan(angles) print("正切值:", tangent_values)
结果如下 -
正切值:[ 0.00000000e+00 1.00000000e+00 1.63312394e+16 -1.22464680e-16]
NumPy 还提供了用于计算数组元素反三角函数(反正弦、反余弦和反正切)的函数。这些函数返回给定三角函数值对应的角度(以弧度为单位)。
NumPy 反正弦函数
numpy.arcsin() 函数用于计算数组中每个元素的反正弦,并返回以弧度为单位的角度。
反正弦是正弦的反函数,它返回正弦值为给定数的角度。它表示为 arcsin(x) 或 sin(x)。
示例
在此示例中,我们使用 numpy.arcsin() 函数计算数组中每个元素的反正弦值 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/4, np.pi/2, np.pi]) # 计算每个角度的反正弦值 inverse_sine_values = np.arcsin(angles) print("反正弦值:", inverse_sine_values)
我们得到如下所示的输出 −
反正弦值:[0.0.90333911 nan nan]
NumPy 反余弦函数
numpy.arccos() 函数用于计算数组中每个元素的反余弦值,并以弧度为单位返回该角度。
反余弦是余弦的反函数,它返回余弦值为给定数的角度。它表示为 arccos(x) 或 cos(x)。
示例
在此示例中,我们使用 numpy.arccos() 函数计算数组中每个元素的反余弦值 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/4, np.pi/2, np.pi]) # 计算每个角度的反余弦值 inverse_cosine_values = np.arccos(angles) print("反余弦值:", inverse_cosine_values)
执行上述代码后,我们得到以下输出 -
反余弦值:[1.57079633 0.66745722 nan nan]
NumPy 反正切函数
numpy.arctan() 函数用于计算数组中每个元素的反正切,并以弧度为单位返回该角度。
反正切是正切的反函数,它返回正切值为给定数的角度。它表示为 arctan(x) 或 tan(x)。
示例
在下面的示例中,我们使用 numpy.arctan() 函数计算数组中每个元素的反正切 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/4, np.pi/2, np.pi]) # 计算每个角度的反正切 inverse_tangent_values = np.arctan(angles) print("反正切值:", inverse_tangent_values)
执行上述代码后,我们得到以下输出 -
反正切值:[0. 0.66577375 1.00388482 1.26262726]
NumPy 双曲函数
双曲函数是类似于三角函数的数学函数,但基于双曲线而非圆。
NumPy 还提供了用于计算双曲正弦 (sinh)、双曲余弦 (cosh) 和双曲正切 (tanh) 的函数,以及它们对数组元素的逆。这些函数类似于三角函数,但应用于双曲角。
示例
在下面的示例中,我们使用 numpy.sinh()、numpy.cosh() 和 numpy.tanh() 函数来计算数组中元素的双曲值 -
import numpy as np # 定义一个值数组 values = np.array([0, 1, 2]) # 计算双曲值 sinh_values = np.sinh(values) cosh_values = np.cosh(values) tanh_values = np.tanh(values) print("双曲正弦值:", sinh_values) print("双曲余弦值:", cosh_values) print("双曲正切值:", tanh_values)
这将产生以下结果 -
双曲正弦值:[0. 1.17520119 3.62686041] 双曲余弦值:[1. 1.54308063 3.76219569] 双曲正切值:[0. 0.76159416 0.96402758]