• 矩阵分析与应用+张贤达


    第四章 (四)

    1.Givens旋转

    [ C S − S C ] [ a b ] = [ a 2 + b 2 0 ]

    [CSSC]" role="presentation" style="position: relative;">[CSSC]
    [ab]" role="presentation" style="position: relative;">[ab]
    =
    [a2+b20]" role="presentation" style="position: relative;">[a2+b20]
    [CSSC][ab]=[a2+b2 0]
    G = [ C S − S C ] 为正交矩阵 G=
    [CSSC]" role="presentation" style="position: relative;">[CSSC]
    为正交矩阵
    G=[CSSC]为正交矩阵


    { C a + S b = a 2 + b 2 − S a + C b = 0 C 2 + S 2 = 1 ⇒ { C = a a 2 + b 2 = c o s θ S = b a 2 + b 2 = s i n θ
    {Ca+Sb=a2+b2Sa+Cb=0C2+S2=1" role="presentation" style="position: relative;">{Ca+Sb=a2+b2Sa+Cb=0C2+S2=1
    \Rightarrow
    {C=aa2+b2=cosθS=ba2+b2=sinθ" role="presentation" style="position: relative;">{C=aa2+b2=cosθS=ba2+b2=sinθ
    Ca+Sb=a2+b2 Sa+Cb=0C2+S2=1{C=a2+b2 a=cosθS=a2+b2 b=sinθ

    这个 G G G就是旋转矩阵了
    两个向量模长相等
    类似地
    G ( i , j , θ ) = [ 1 ⋯ 0 ⋯ 0 ⋯ 0 ⋮ ⋱ ⋮ ⋮ ⋮ 0 ⋯ C ⋯ S ⋯ 0 ⋮ ⋮ ⋱ ⋮ ⋮ 0 ⋯ − S ⋯ C ⋯ 0 ⋮ ⋮ ⋮ ⋱ ⋮ 0 ⋯ 0 ⋯ 0 ⋯ 1 ] G(i,j,\theta)=
    [10000CS00SC00001]" role="presentation" style="position: relative;">[10000CS00SC00001]
    G(i,j,θ)= 10000CS00SC00001

    其中 g k k = 1 , k ≠ i , j g_{kk}= 1,k ≠ i,j gkk=1,k=i,j
    g i , i = g j , j = C g_{i,i}=g_{j,j}=C gi,i=gj,j=C
    g i , j = S g_{i,j}=S gi,j=S
    g j , i = − S g_{j,i}=-S gj,i=S
    其余元素为0
    G x = y Gx = y Gx=y,将 x x x i , j i,j i,j平面,顺时针旋转 θ \theta θ,得到 y y y

    2. 采用Givens旋转的QR分解

    Givens旋转也可以用来计算QR分解。
    这里以 4 × 3 4\times 3 4×3矩阵为例,说明Givens QR分解的思想:
    在这里插入图片描述
    其中, ⊗ \otimes 表示用Givens旋转进行变换的元素。
    从上述说明中易得出结论:如果令 G j G_j Gj代表约化过程中的第 j j j次Givens旋转,则 Q T A = R Q^TA=R QTA=R是上三角矩阵,其中, Q = G t G t − 1 … G 1 Q=G_tG_{t-1}…G_1 Q=GtGt1G1,而 t t t是总的旋转次数。


    用Givens旋转求下列线性方程的最小二乘解。
    x 1 + 2 x 2 = 5 x_1+2x_2=5 x1+2x2=5
    2 x 1 + 3 x 2 = 8 2x_1+3x_2=8 2x1+3x2=8
    6 x 1 + 7 x 2 = 21 6x_1+7x_2=21 6x1+7x2=21
    解构造增广矩阵
    X = [ 1 2 5 2 3 8 6 7 21 ] X=

    [1252386721]" role="presentation" style="position: relative;">[1252386721]
    X= 1262375821
    先用Givens旋转消去 X X X的(3,1)元素6。为此,选择 c = − 01663 , s = 0.9859 c=-01663,s=0.9859 c=01663s=0.9859,则有
    G 31 = [ − 0.1663 0 − 0.9859 0 1 0 0.9859 0 − 0.1663 ] → G 31 X = [ − 6.081 − 7.234 − 21.536 2 3 8 0 0.808 1.438 ] G_{31}=
    [0.166300.98590100.985900.1663]" role="presentation" style="position: relative;">[0.166300.98590100.985900.1663]
    \rightarrow G_{31}X=
    [6.0817.23421.53623800.8081.438]" role="presentation" style="position: relative;">[6.0817.23421.53623800.8081.438]
    G31= 0.166300.98590100.985900.1663 G31X= 6.081207.23430.80821.53681.438

    为了消去 G 31 X G_{31}X G31X的(2,1)元素2,选择c=0.952,s=0.313,故
    G 21 = [ 0.952 − 0.313 0 0.313 0.952 0 0 0 1 ] → G 21 G 31 X = [ − 6.081 − 7.234 − 23.008 0 0.592 0.875 0 0.808 1.438 ] G_{21}=
    [0.9520.31300.3130.9520001]" role="presentation" style="position: relative;">[0.9520.31300.3130.9520001]
    \rightarrow G_{21}G_{31}X=
    [6.0817.23423.00800.5920.87500.8081.438]" role="presentation" style="position: relative;">[6.0817.23423.00800.5920.87500.8081.438]
    G21= 0.9520.31300.3130.9520001 G21G31X= 6.081007.2340.5920.80823.0080.8751.438

    G 32 G_{32} G32中选择c=-0.6527,s=0.890,消去 G 21 G 31 X G_{21}G_{31}X G21G31X中的(3,2)元素,得QR分解
    G 32 = [ 1 0 0 0 − 0.6527 − 0.8900 0 0.8900 − 0.6527 ] → G 32 G 21 G 31 X = [ − 6.415 − 7.826 − 23.008 0 − 1.105 − 1.851 0 0 − 0.160 ] G_{32}=
    [10000.65270.890000.89000.6527]" role="presentation" style="position: relative;">[10000.65270.890000.89000.6527]
    \rightarrow G_{32}G_{21}G_{31}X=
    [6.4157.82623.00801.1051.851000.160]" role="presentation" style="position: relative;">[6.4157.82623.00801.1051.851000.160]
    G32= 10000.65270.890000.89000.6527 G32G21G31X= 6.415007.8261.105023.0081.8510.160

    由此得线性方程组
    − 6.415 x 1 − 7.826 x 2 = − 23.008 -6.415x_1-7.826x_2=-23.008 6.415x17.826x2=23.008
    − 1.105 x 2 = − 1.851 -1.105x_2=-1.851 1.105x2=1.851
    其解为 x 1 = 1.543 x_1=1.543 x1=1.543 x 2 = 1.675 x_2=1.675 x2=1.675

  • 相关阅读:
    【华为机试真题 JAVA】字符串加密-100
    fastadmin 后台添加视频
    c++初始化列表
    05-Flask-Flask查询路由方式
    基于Monkey的稳定性测试
    java之《浅入了解异常》适合预习,复习
    【漏洞通告】CVE-2022-31690 Spring Security Oauth2 Client权限提升漏洞
    LeetCode通关:连刷十四题,回溯算法完全攻略
    windows应用程序告警:帐户名与安全标识间无任何映射完成
    详解Object类和抽象类
  • 原文地址:https://blog.csdn.net/m0_45085885/article/details/126353065