向量的叉积

向量积,也被称为叉积(即交叉乘积)、外积,是一种在向量空间中向量的二元运算。与点积不同,它的运算结果是一个伪向量而不是一个标量。并且两个向量的叉积与这两个向量都垂直。

定义:

两个向量ab的叉积写作a × b(有时也被写成ab,避免和字母x混淆)。叉积可以被定义为:

\mathbf{a} \times \mathbf{b} = a b \sin \theta \ \mathbf{n}

在这里θ表示'ab之间的角度(0° ≤ θ ≤ 180°),它位于这两个矢量所定义的平面上。而n是一个与ab所在平面均垂直的单位矢量。

这个定义有一个问题,就是同时有两个单位向量都垂直于ab:若n满足垂直的条件,那么 -n也满足。

“正确”的向量由向量空间的方向确定,即按照给定直角坐标系 (i, j, k)的左右手定则。若 (i, j, k)满足右手定则,则 (a, b, a × b)也满足右手定则;或者两者同时满足左手定则。

一个简单的确定满足“右手定则”的结果向量的方向的方法是这样的:若坐标系是满足右手定则的,\mathbf{c} = \mathbf{a}\times\mathbf{b}当右手的四指从a以不超过180度的转角转向b时,竖起的大拇指指向是c的方向。由于向量的叉积由坐标系确定,所以其结果被称为伪向量

220px-Cross_product_vector_svg

矩阵形式:

给定直角坐标系的单位向量ijk满足下列等式:

i × j = k j × k = i k × i = j

通过这些规则,两个向量的叉积的坐标可以方便地计算出来,不需要考虑任何角度:设

a = a1i + a2j + a3k = [a1, a2, a3]
b = b1i + b2j + b3k = [b1, b2, b3]

a × b = [a2b3 − a3b2, a3b1 − a1b3, a1b2 − a2b1]   (这个式子可以用来方便地计算平面法向量)

上述等式可以写成矩阵的行列式的形式:

\mathbf{a}\times\mathbf{b}=\det \begin{bmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
a_1 & a_2 & a_3 \\
b_1 & b_2 & b_3 \\
\end{bmatrix}

叉积也可以用四元数来表示。注意到上述ijk之间的叉积满足四元数的乘法。一般而言,若将向量[a1, a2, a3]表示成四元数a1i + a2j + a3k,两个向量的叉积可以这样计算:计算两个四元数的乘积得到一个四元数,并将这个四元数的实部去掉,即为结果。关于四元数的信息可以参考这里

posted on   youthlion  阅读(22851)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理

导航

< 2012年1月 >
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4
5 6 7 8 9 10 11
点击右上角即可分享
微信分享提示