对于一组向量,有时候我们需要对其进行正交化处理,也就是说,该组向量中任意两个向量都是互相垂直的。那么,要怎么做呢?
假设只有两个向量,v0和v1,正交化的几何示意图如下所示。

假设正交化之后的向量为w0和w1,那么由图可知,可得w0=v0,且有:
w1=v1−∣w0∣v1⋅w0
这里减去的部分是向量v1在向量w0上的投影。然后将w0和w1进行归一化,就得到了最终的结果。
那么,如果有三个向量,v0,v1,v2,这种情况要如何处理呢?同样地,正交化的几何示意图如下所示。

假设正交化之后的向量为w0,w1,w2,由图可知,可得w0=v0,且有:
w1=v1−∣w0∣v1⋅w0
w2=v2−∣w0∣v2⋅w0−∣w1∣v2⋅w1
从图中可以看出向量w2即为向量v2减去在w0和w1上的投影。将这三个向量进行归一化即可得到最终的结果。
那么,假如我们有一组向量{v0,v1,v2,...,vn},要想求得它们正交化后的向量组{w0,w1,w2,...,wn},步骤如下:
- 令w0=v0;
- 计算:wi=vi−∑j=0i−1∣wj∣vi⋅wj;(1≤i≤n);
- 将得到的{w0,w1,w2,...,wn}进行正交化。