Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

3.3 QR 方法

对应教材 3.3.1–3.3.3、定理 3.2、习题 9–12。老师课堂未讲,本节按教材补齐,标“教材有、课堂未讲”。 主线:Householder 正交变换 → QR 分解 → 基本 QR 迭代 → 拟上三角化 → 双步位移 QR。

3.3.1 QR 分解

定理 3.2:设 A∈Rn×nA\in\mathbb R^{n\times n} 非奇异,则存在正交矩阵 QQ 和上三角矩阵 RR(对角元为正),使 A=QR, A=QR, 且分解唯一。

构造(Householder):对 AA 的每一列,用 Householder 矩阵 Hr=I−2ururT/(urTur)H_r=I-2u_ru_r^{\mathrm T}/(u_r^{\mathrm T}u_r) 把该列对角线以下元素消为零: Hn−1⋯H2H1A=R,Q=H1H2⋯Hn−1. H_{n-1}\cdots H_2H_1A=R, \qquad Q=H_1H_2\cdots H_{n-1}. HrH_r 对称正交,Hr−1=HrT=HrH_r^{-1}=H_r^{\mathrm T}=H_r。

基本 QR 迭代: Ak=QkRk,Ak+1=RkQk=QkTAkQk. A_k=Q_kR_k,\qquad A_{k+1}=R_kQ_k=Q_k^{\mathrm T}A_kQ_k. 每个 Ak+1A_{k+1} 与 AkA_k 正交相似,特征值不变。若 AA 实对称,AkA_k 收敛到对角矩阵,对角元即特征值;若 AA 一般实矩阵,AkA_k 本质上收敛到分块上三角矩阵,一阶块给实特征值、二阶块给复共轭特征值。

3.3.2 拟上三角化

先用 Householder 相似变换把 AA 化为拟上三角矩阵(上 Hessenberg): aij=0(i>j+1). a_{ij}=0\quad(i\gt j+1). 变换为 A(r+1)=HrA(r)HrA^{(r+1)}=H_rA^{(r)}H_r,其中 HrH_r 只作用在第 r+1,…,nr+1,\dots,n 行/列,消去第 rr 列第 r+2r+2 行以下的元素。最终 A(n−1)=PTAP,P=H1H2⋯Hn−2 A^{(n-1)}=P^{\mathrm T}AP, \qquad P=H_1H_2\cdots H_{n-2} 正交,且与 AA 相似。若 AA 实对称,拟上三角化后就是三对角矩阵。这样 QR 迭代的每步计算量从 O(n3)O(n^3) 降到 O(n2)O(n^2)。

3.3.3 带双步位移的 QR 方法

为加速收敛,取两个位移 s,ts,t(通常取当前右下 2×22\times2 块的特征值),构造 M=(Ak−sI)(Ak−tI), M=(A_k-sI)(A_k-tI), 对 MM 作 QR 分解 M=QRM=QR,再令 Ak+1=QTAkQ. A_{k+1}=Q^{\mathrm T}A_kQ. 这就是双步位移 QR;它一次推进两步,且保持实运算(复共轭特征值成对处理)。实际算法还包括:

  • 先用 Householder 化拟上三角;
  • 对右下角块做“压缩”(deflation),把已收敛的特征值分离出去;
  • 用 Givens/Householder 实现 MM 的 QR 分解,避免显式形成 MM。

3.3.4 习题(教材习题 9–12)

3.9 · Householder 映射(教材习题 9)

设 s=(−2,1,2)Ts=(-2,1,2)^{\mathrm T},r=(4,3,0)Tr=(4,3,0)^{\mathrm T},求 Householder 矩阵 HH,使 HsHs 与 rr 同向、长度等于 ∥s∥2\lVert s\rVert_2。

参考答案

目标 v=∥s∥2 r/∥r∥2=(2.4,1.8,0)Tv=\lVert s\rVert_2\,r/\lVert r\rVert_2=(2.4,1.8,0)^{\mathrm T}。取 u=s−v=(−4.4,−0.8,2)Tu=s-v=(-4.4,-0.8,2)^{\mathrm T},H=I−2uuT/(uTu)H=I-2uu^{\mathrm T}/(u^{\mathrm T}u),数值为 H≈(−0.6133−0.29330.7333−0.29330.94670.13330.73330.13330.6667),Hs=(2.4,1.8,0)T. H\approx\begin{pmatrix} -0.6133&-0.2933&0.7333\\ -0.2933&0.9467&0.1333\\ 0.7333&0.1333&0.6667 \end{pmatrix}, \qquad Hs=(2.4,1.8,0)^{\mathrm T}.

3.10 · Householder 化三对角(教材习题 10)

用 Householder 相似变换把教材习题 10 的实对称矩阵化为三对角矩阵。

参考答案

按 3.3.2:第 rr 步取 sr=(0,…,0,ar+2,r,…,an,r)Ts_r=(0,\dots,0,a_{r+2,r},\dots,a_{n,r})^{\mathrm T},构造 HrH_r 消去第 rr 列第 r+2r+2 行以下元素;左右各乘 HrH_r,得到 HrA(r)HrH_rA^{(r)}H_r。对称矩阵最终化为三对角。

3.11 · Householder 化拟上三角(教材习题 11)

用 Householder 相似变换把教材习题 11 的矩阵化为拟上三角矩阵。

参考答案

同 3.3.2,但只做相似变换 HrA(r)HrH_rA^{(r)}H_r,不追求三对角;最终得到上 Hessenberg(i>j+1i\gt j+1 处为零)。数据按教材矩阵逐列消元。

3.12 · 基本 QR 方法(教材习题 12)

用基本 QR 方法计算教材习题 12 的矩阵的特征值。

参考答案

迭代 Ak=QkRkA_k=Q_kR_k、Ak+1=RkQkA_{k+1}=R_kQ_k,直到下三角元素足够小;对角元即特征值。对一般实矩阵,若出现 2×22\times2 块,用二次公式求一对复共轭特征值。具体数值按教材矩阵复算。

覆盖核对

本节覆盖教材 3.3.1–3.3.3、定理 3.2、习题 9–12;老师课堂未讲。第 3 章正文到此完整,下一节:第 3 章习题。