点乘和叉乘的区别是什么?

假如 向量a 为(x1, y1),向量b为(x2, y2)
点积(也叫内积)结果 为 x1 * x2 + y1 * y2 = |a||b| cos,可以理解为向量a在向量b上投影的长度乘以向量b的长度。
叉积(也叫外积)的模为 x1 * y2 - x2 * y1 = |a||b| sin,可以理解为平行四边形的有向面积(三维以上为体积)。外积的方向垂直于这两个方向。

作者:信徒
链接:https://www.zhihu.com/question/21080171/answer/1715138895
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

1. 点乘(dot product)

又叫内积/数量积,记作 (也有人习惯写作 ),点乘的结果是个标量(scalar),它的几何意义是 向量a在向量b上的投影长度 乘以 向量b的长度,计算公式如下

点乘公式常被用于:

a. 衡量两个向量的相似度,两个向量越相似,点乘结果越大;

b. 计算两个向量的夹角

c. 判断两个向量的正交性

时两个向量正交,也就是 时两个向量正交;

时两个向量同向,夹角在0到90度;

时两个向量反向,夹角在90到180度。

d. 实现线性变换(也就是把数据投影到特征空间)。比如向量b作为基向量(线性的特征空间),把数据a投影到特征空间b中得到投影后的数据 。

2. 叉乘(cross product)

又叫外积/向量积,记作 ,注意叉乘的结果是个向量(vector),所以它有方向(direction)和模长(magnitude),计算方式如下

方向+模长: ,推导如下

点乘和叉乘的区别是什么?_第1张图片

方向:根据右手定则确定人类的感官方向,但是高维度时就需要使用上面的向量表示

模长:

叉乘公式常被用于:

a. 求解向量a和向量b构成平面的法向量 ,

b. 利用叉乘生成z轴,构建坐标系

c. 计算点到线的距离,假设原点为 , , ,则点A到直线OB的距离

d. 确定平面方程并计算点到面的距离,假设原点为 , , ,则点C到向量a和向量b构成的平面间的距离求解如下:

先求解平面的法向量 ,

然后求解平面方程为 ( 通过代入A或B得到),

最后点面距离为

码字不易,可能会存在一些问题,欢迎纠正。

你可能感兴趣的:(Qt,线性代数)