三维空间 向量 点积 叉积
时间: 2025-04-25 20:32:22 AIGC 浏览: 48
### 三维空间中向量的点积和叉积
#### 点积
点积有两种定义方式:代数方式和几何方式。通过在欧氏空间中引入笛卡尔坐标系,向量之间的点积既可以由向量坐标的代数运算得出,也可以通过引入两个向量的长度和角度等几何概念来求解[^4]。
对于两个向量 \(\vec{a} = a_x\hat{i} + a_y\hat{j} + a_z\hat{k}\) 和 \(\vec{b} = b_x\hat{i} + b_y\hat{j} + b_z\hat{k}\),其点积可以通过以下两种方式进行计算:
- **代数形式**:
\[ \vec{a} \cdot \vec{b} = a_xb_x + a_yb_y + a_zb_z \]
- **几何形式**:
\[ \vec{a} \cdot \vec{b} = |\vec{a}| |\vec{b}| \cos{\theta} \]
其中 \(|\vec{a}|\) 表示向量 \(\vec{a}\) 的模长,\(θ\) 是两向量间的夹角。
#### 叉积
叉积的结果是一个新的向量,该新向量垂直于原来的两个输入向量所构成的平面,并遵循右手定则方向。如果给定了两个不共线的非零向量 \(\vec{v}\) 和 \(\vec{w}\),那么它们的叉积可表示为一个新的向量 \(\vec{n}\):
\[ \vec{n} = \vec{v} \times \vec{w} \]
此操作不仅限于简单的乘法;实际上它涉及到行列式的计算过程。具体来说,
```python
import numpy as np
def cross_product(v, w):
v_matrix = np.array([[v[0], v[1], v[2]]])
w_matrix = np.array([[w[0], w[1], w[2]]])
result_vector = np.cross(v_matrix.T.flatten(), w_matrix.T.flatten())
return result_vector.tolist()
```
当考虑标准基底下的分量时,即有:
\[ \vec{v} \times \vec{w} =
\begin{vmatrix}
\hat{i} & \hat{j} & \hat{k}\\
v_x & v_y & v_z\\
w_x & w_y & w_z
\end{vmatrix} \]
这里的矩阵并非传统意义上的行列式,而是用于帮助理解和记忆的一种工具[^3]。最终得到的新向量的方向取决于原始两个向量的位置关系以及所在的空间定向(右手法则),而大小等于这两个向量组成的平行四边形面积[^1]。
阅读全文
相关推荐




















