向量的叉乘

叉乘表示

代数表示

例如向量a叉乘向量b,我们代数可以这么描述:

\vec {a} \times \vec {b}

坐标表示

例如: 我们用坐标去描述 \vec {a} 向量时,我们可以用 (x,y,z) 进行描述。叉乘通常是围绕着三维空间来说的。

向量叉乘,我们不用两个坐标值相乘来表示。

叉乘的含义

叉乘的结果

向量叉乘向量,结果为一个向量。

叉乘的几何含义

向量a叉乘向量b,可以理解为,向量a向量b组成了一个平面,叉乘的结果向量是垂直于这个面的。

叉乘的计算

向量a叉乘向量b等于向量c,表示为:

\vec {c} = \vec {a} \times \vec {b}

\vec {a}的坐标值为(x_a, y_a, z_a)

\vec {b}的坐标值为(x_b, y_b, z_b)

\vec {c}的坐标值为(x_c, y_c, z_c)

那么:

x_c = y_a \cdot z_b - z_a \cdot y_b
y_c = z_a \cdot x_b - x_a \cdot z_b
z_c = x_a \cdot y_b - y_a \cdot x_b

代码描述叉乘

import numpy as np
from math import pow, sqrt

xa = 3
ya = 2
za = 7

xb = 2
yb = 4
zb = 6

a = np.array([xa, ya, za])
b = np.array([xb, yb, zb])

xc = ya * zb - za * yb
yc = za * xb - xa * zb
zc = xa * yb - ya * xb
print(xc)
print(yc)
print(zc)


# 叉乘
print(np.cross(a, b))