在线性代数中,正交基有许多美丽的性质。例如,由正交列向量组成的矩阵(又称正交矩阵)可以通过矩阵的转置很容易地进行反转。此外,例如:在由彼此正交的向量张成的子空间上投影向量也更容易。Gram-Schmidt过程是一个重要的算法,它允许我们将任意基转换为生成同一子空间的正交基。在这篇文章中,我们将使用一个流行的开源库。manim在3D中实现和可视化这个算法
Gram-Schmidt过程是一种用于将一组线性无关的向量转化为一组正交(或正交归一化)的向量的算法。这个过程在数学和工程中广泛应用,特别是在计算机图形学、信号处理和统计分析中。
Gram-Schmidt 正交化的步骤
假设我们有一组线性无关的向量 ,Gram-Schmidt过程的步骤如下:
- 初始化:给定向量,定它为第一个正交向量 :
2.后续向量的正交化:对于每个,计算新的正交向量 :
其中,投影 是:
这里表示向量的点积。
3.归一化(可选):如果需要将向量归一