线性代数导学:点积与叉积的作用
线性代数导学:点积与叉积的作用
在线性代数中,点积和叉积是两个非常重要的运算,它们不仅在数学理论中占据核心地位,还在物理学、工程学、计算机图形学等领域有着广泛的应用。本文将深入探讨点积和叉积的定义、计算方法及其实际应用,帮助读者建立对这两个概念的直观理解。
首先要有一种认知:向量可以表示一种运动,矩阵可以表示一种变换(旋转,缩放等等)。
二维平面上,一个向量(1,2)表示:某一个点向x轴正方向走了1个单位,向y轴正方向走了2个单位。向量有方向,有大小,在日常生活中,风,水,气流,力等等这些有方向有大小的事物,都可以用向量来表示。点积与叉积,就是向量之间的两种运算。
现在有两个向量
和
一. 做这两个向量的点积运算,可得
|a|与|b|表示向量a与向量b的模长(即长度)。上面两个式子的计算结果是相同的(这一点网上有资料可以证明)。
从这里我们可以知道:两个向量点积的结果,是一个数。点积运算,做了降维,把向量变成了一个数(这里的向量是二维的,数是一维的,由二维变成了一维)。
点积的作用:可以判断两个向量是否垂直。可以判断两个向量之间,是促进作用,还是抑制作用。可以做投影。
这里先把ab两个向量当成两个方向的力。
下面的图中,b向量向a向量做投影,得到a0向量,a0向量的方向与向量a相同,长度可由点积的公式求得:
二. 做这两个向量的叉积运算,可得到一个新的向量,记作向量c
向量c与向量a垂直的同时,也与向量b垂直。即向量c垂直于向量a与向量b所在的平面。其方向符合右手螺旋定则:
或者这种形式
其大小等于向量a与向量b所构成的平行四边形的面积(借用知乎小伙伴的一张图,侵删),即
这里我们看到向量a与向量b的叉积结果,生成了一个新的向量c,且垂直与a与b所构成的平面。叉积做了升维:abc三个向量,构成了一个三维的体系。
叉积的作用:建立三维的直角坐标系,判断两个向量的相对方位(左还是右),判断点是否在三角形内。
设垂直于纸面向上(外)的方向,为正方向。根据右手螺旋定则。
当点P在三角形ABC内部时,如上图,根据右手螺旋法则:
三次叉积运算产生的向量方向一致,可判断:点P在三角形ABC的内部。
三次叉积运算产生的向量方向不一致,可判断:点P在三角形ABC的外部。
之所以要判断点与三角形的位置关系(内或外),是因为在对三维物体进行建模时,模型会由很多三角形所生成(称之为面片,mesh)。在处理mesh时,计算机要判断像素点是否在某一个mesh中,从而对该像素点进行着色。
三. 叉积的运算
点积的运算非常简单,叉积的运算也不是太难。
我们先来看一下二维向量的叉乘。
二维向量叉乘:可以判断左右,判断是否共线。
三维坐标下的叉积公式:
叉乘计算有一个口诀,可以快速的算出结果:
向量横着写两遍,掐头去尾留中间,叉乘相乘再相减,求得向量再化简。
看一下具体的解释:
最后一句:求得向量再化简,是指做归一化,使得最终得到的向量是一个单位向量。
总结:
通过点积与叉积运算,计算机可以根据其结果的正负,判断两个向量之间的相对方位(上,下,左,右)。
同时点积可以用来做投影,叉积可以用来建立三维直角坐标系。
参考资料:
Xmathy:高考前最后3分,爱要不要!
线性代数导学(六):点积与叉积的作用 - 知乎 (zhihu.com)