向量的点积

科技一点鑫得 2024-04-08 13:44:42
点积的定义

线性代数中,n维向量v和w的点积定义如下,点积的结果为一个标量(只有数值,无方向):

针对二维和三维向量,向量a和b的点积根据定义计算公式可以写为:

点积的几何定义

另外,从几何意义上来说,a和b的点积还可以按照下面的公式来计算:

|a|、|b|表示向量的模(长度),θ表示向量a和b之间的夹角

点积的应用

我们先不关注为什么这两种计算方法是等价的,点积的主要作用是可以用来计算角度,点积是线性代数很多内容的核心,可以用来简化大量的计算,线性代数也是计算机图形学必须要掌握的学科之一。

例子:已知三维xyz坐标系a,b两点的坐标,如何计算向量a和b之间的夹角θ?

根据前面的点积的公式和几何定义我们可以推导出计算角度θ的计算公式:

说明:cos-1为反余弦函数函数,用来根据余弦值计算角度

有了上面的公式,接下来我们使用Julia语言来实际计算下这个角度值是多少

# 计算向量a和b之间的夹角using LinearAlgebra# 向量a,b的定义a = [4, 8, 10]b = [9, 2, 7]# 向量的点积dot_product = dot(a, b)# 求向量a,b的模长length_a = norm(a)length_b = norm(b)# 求θ角的余弦值cos_θ = dot_product / (length_a * length_b)# 求theta的弧度值θ = acos(cos_θ)print("θ的弧度值为:", θ)# 求θ的角度值print("\nθ的角度值为:", θ * (180/pi), "°")

运行结果向量a和b之间的夹角为38.2...°,你可以尝试使用其他的方法计算下试试,蛮复杂的。

θ的弧度值为:0.6672196386878θ的角度值为:38.22886930505464°证明点积的几何意义和坐标定义为什么是等价的

最后,来证明下为什么点积的坐标公式和几何定义是等价的,根据三角形的边长公式可知

说明:

1. a,b为向量,红色有向线段AB表示从b指向a的向量,三个向量组成一个三角形;θ为a和b之间的夹角;

2. 向量以三维向量为例进行演示,向量以坐标(x,y,z)表示。向量AB的坐标可以表示为(ax-bx,ay-by,az-bz)。

逐步展开推导如下

最后得出的结果等号两边刚好是叉积的坐标定义和几何定义,两种方式得出的结果是相同的,证明完毕。

0 阅读:0

科技一点鑫得

简介:感谢大家的关注