NumPy - 三角函数
NumPy 三角函数
在数学中,三角函数用于将三角形的角度与其边长联系起来。最常见的三角函数是正弦 (sin)、余弦 (cos) 和正切 (tan),它们基于直角三角形。
这些函数在几何、物理和工程等各个领域都有用,尤其是在计算角度和距离方面。
NumPy 提供了几个函数,例如 sin()、cos() 和 tan(),用于计算角度数组的这些值。
正弦、余弦和正切函数
NumPy 中的基本三角函数包括正弦、余弦和正切。这些函数对数组进行逐元素运算,这意味着它们会应用于数组中的每个元素。三角函数通常应用于角度,并且角度通常以弧度表示。
例如,角的正弦是直角三角形中对边与斜边的比值。余弦是邻边与斜边的比值,正切是对边与邻边的比值。
示例:正弦、余弦和正切
在以下示例中,我们使用 NumPy 函数计算以弧度为单位的角度数组的正弦、余弦和正切 -
import numpy as np # 定义一个以弧度为单位的角度数组 angles = np.array([0, np.pi/4, np.pi/2, np.pi]) # 计算正弦、余弦和正切 sine_values = np.sin(angles) cosine_values = np.cos(angles) tangent_values = np.tan(角度) print("正弦值:", sine_values) print("余弦值:", cosine_values) print("正切值:", tangent_values)
以下是得到的输出 -
正弦值:[0.00000000e+00 7.07106781e-01 1.00000000e+00 1.22464680e-16] 余弦值:[ 1.00000000e+00 7.07106781e-01 6.12323400e-17 -1.00000000e+00] 正切值:[ 0.00000000e+00 1.00000000e+00 1.63312394e+16 -1.22464680e-16]
请注意,pi/2 的正切为无穷大,因为 pi/2 的余弦为零,而除以零是无定义的。
反三角函数
除了基本三角函数外,NumPy 还提供反三角函数,可用于根据三角比的值计算角度。这些函数包括反正弦函数(arcsine)、反余弦函数(arccosine)和反正切函数(arctangent)。
当你知道一个三角比的值并需要求出相应的角度时,反三角函数非常有用。
示例:反正弦、反余弦和反正切
在以下示例中,我们使用 NumPy 函数计算一组值的反正弦、反余弦和反正切 -
import numpy as np # 定义一个数组,其中包含我们要计算反三角函数的值 values = np.array([0, 0.5, 1]) # 计算反正弦、反余弦和反正切正切 arcsine_values = np.arcsin(values) arccosine_values = np.arccos(values) arctangent_values = np.arctan(values) print("反正弦值:", arcsine_values) print("反余弦值:", arccosine_values) print("反正切值:", arctangent_values)
我们得到如下所示的输出 −
反正弦值:[0. 0.52359878 1.57079633] 反余弦值:[1.57079633 1.04719755 0. ] 反正切值:[0.0.46364761 0.78539816]
双曲三角函数
NumPy 还包含计算双曲三角函数的函数,这些函数类似于标准三角函数,但针对的是双曲线而不是圆。这些函数包括双曲正弦、余弦和正切。
双曲正弦和余弦函数与常规正弦和余弦函数类似,但使用指数函数进行计算。双曲正切是双曲正弦与双曲余弦的比值。
示例:双曲正弦、余弦和正切
在以下示例中,我们使用 NumPy 函数计算数组的双曲正弦、双曲余弦和双曲正切 -
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]
带度数的三角函数
默认情况下,NumPy 中三角函数的输入以弧度为单位。但是,有时您可能希望使用度数而不是弧度。要在度数和弧度之间转换,可以使用 numpy.deg2rad() 函数和 numpy.rad2deg() 函数。
numpy.deg2rad() 函数将角度从度数转换为弧度,而 numpy.rad2deg() 函数将角度从弧度转换为度数。然后,您可以使用这些函数执行以度为单位的三角函数计算。
示例:使用以度为单位的三角函数
在本例中,我们首先将度转换为弧度,然后计算所得角度的正弦和余弦 -
import numpy as np # 定义一个以度为单位的角度数组 angles_deg = np.array([0, 45, 90, 180]) # 将度转换为弧度 angles_rad = np.deg2rad(angles_deg) # 计算正弦和余弦 sine_values = np.sin(angles_rad) cosine_values = np.cos(angles_rad) print("正弦值:", sine_values) print("余弦值:", cosine_values)
我们得到如下所示的输出 −
正弦值:[0.00000000e+00 7.07106781e-01 1.00000000e+00 1.22464680e-16] 余弦值:[1.00000000e+00 7.07106781e-01 6.12323400e-17 -1.00000000e+00]
三角函数的应用
三角函数广泛应用于各个领域,尤其是在科学、工程和计算机图形学领域。它们有助于对周期性行为、振荡、波形和旋转进行建模。以下是一些应用示例:-
- 信号处理:三角函数用于建模和分析声波、电磁波和其他周期性信号。
- 物理学:在物理学中,三角函数用于描述波、圆周运动和谐振子的行为。
- 计算机图形学:三角函数用于二维和三维变换、旋转和渲染。
函数列表
NumPy 有一个标准三角函数,可以返回以弧度为单位的角度的三角比。以下是它们的列表 -
序号 | 函数和说明 |
---|---|
1 |
numpy.sin()
逐元素计算三角正弦。 |
2 |
numpy.cos()
逐元素计算余弦。 |
3 |
numpy.tan()
逐元素计算正切。 |
4 |
numpy.arcsin()
反正弦逐元素计算。 |
5 |
numpy.arccos()
逐元素计算三角函数反余弦。 |
6 |
numpy.arctan()
逐元素计算三角函数反正切。 |
7 |
numpy.arctan2()
逐元素计算圆弧正确选择象限求 x1/x2 的正切值。 |
8 |
numpy.hypot()
相当于逐元素 sqrt(x12 + x22),广播标量。 |
9 |
numpy.sinh()
逐元素求双曲正弦值。 |
10 |
numpy.cosh()
逐元素计算双曲余弦。 |
11 |
numpy.tanh()
逐元素计算双曲正切。 |
12 |
numpy.arcsinh()
逐元素计算反双曲正弦。 |
13 |
numpy.arccosh()
逐元素计算反双曲余弦。 |
14 |
numpy.arctanh()
逐元素计算反双曲正切。 |
15 |
numpy.deg2rad()
将角度从度数转换为弧度。 |
16 |
numpy.rad2deg()
将角度从弧度转换为度数。 |