C#进行givens变换例题

1. 正交的一些概念和性质

在前一章嘚最小二乘的问题中我们知道不恰当的基向量会出现条件数过大系统防干扰能力差的现象这实际上和基向量的正交性有关。

两个向量的内积如果是零 那么就说这两个向量是正交的,在三维空间中正交的两个向量相互垂直。如果相互正交的向量长度均为 1, 那么他们又叫做标准正交基

正交矩阵则是指列向量相互正交的方阵。标准正交矩阵有具有如下性质:

  1. 若 P 和 Q 是标准正交矩阵那么 X = PQ 也是标准正交矩阵

在复平面内将一个向量逆时针旋转  角度,只需要在该复数前面乘以  即可现在我们要顺时针旋转,利用欧拉公式:

假设现在有一个复數: a + i b

上述运算写成矩阵相乘的形式即为:

其中左边的平面旋转矩阵(每一项少了一个)就是一个标准的正交方阵,可以保证旋转后的向量与原来的向量长度相同

有了 Givens 旋转方法,只要确定两个坐标之间的夹角我们可以将任意向量旋转到单位向量 e1 上,过程如下:

有性质2(若 P 和 Q 是标准正交矩阵那么 X = PQ 也是标准正交矩阵)推导出这个变换矩阵也是一个标准正交矩阵。

现在手头有某一个向量 x 想通过一个标准正茭矩阵 P 将 x 转换为 y,有什么方法可以求出矩阵 P一种方法是通过上面的旋转一步一步完成,P = G1G2G3这里,我们有一个更加快捷的公式即为 Householder Transformations.

拿上┅小节的例子,求转换矩阵 P 的运算过程如下:

  1. u是v的归一化向量

运算很简单可以用笔验证上述过程是否正确。

Px=x-2uu'x   这里uu’即为x在u方向上的投影矩阵(uu'/u'u为投影矩阵这里u'u=1),因此下图的虚线即为等腰三角形顶点得角平分线

用维基百科里面的一个图(u和v标反了)可以将上述运算過程表示成:

}

矩阵分解之givens变换例题与householder变换thank you !!!016/9///22正所谓条条大路通罗马,通过例 4.4和例 4.5我们可以知道可以用givens变换例题和 Householder变换化已知列向量为与某单位向量同向的向量这两种变换之间有何关系呢 ? ?

}

我要回帖

更多关于 givens变换 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信