乘幂法与反幂法
定义 5.1
设 A∈Rn×n,若
Ax=λx,
则称 λ 为 A 的特征值,x 为相应的特征向量。
乘幂法
给定初始向量 x(0),作迭代
⎩⎨⎧y(k)mkx(k)=Ax(k−1),=imaxyi(k),=mky(k).
若
∣λ1∣>∣λ2∣≥∣λ3∣≥⋯≥∣λn∣,
则
limk→∞mk=λ1,limk→∞x(k)=maxi∣(x1)i∣x1.
定义 5.2(原点位移法)
设 A∈Rn×n,特征值 λj 按模降序排列。选取 ρ,使
λj=λ1maxλ1−ρλj−ρ<λj=λ1maxλ1λj,
以提高收敛速度。矩阵 A−ρI 与 A 具有相同的特征向量,其特征值为 λj−ρ。
定义 5.3(Rayleigh 商)
若 A∈Rn×n 为对称矩阵,则定义
R(x)=(x,x)(Ax,x).
降阶方法
设已知 A 的特征值 λ1 及其单位特征向量 x1,即 ∥x1∥2=1。取 Householder 矩阵 H,使 Hx1=e1,则
HAHT=(λ10bTB),B∈R(n−1)×(n−1).
其中 λ2,…,λn 为 B 的特征值。若 Bz2=λ2z2,则 A 的相应特征向量可写成
x2=HT(az2),a=λ2−λ1bTz2.
反幂法
给定初始向量 x(0),作迭代
⎩⎨⎧Ay(k)mkx(k)=x(k−1),=imaxyi(k),=mky(k).
若 ∣λn∣ 最小,则
mk⟶λn−1,x(k)⟶maxi∣(xn)i∣xn.
为了计算 A 在 ρ 附近的特征值及特征向量,可对 A−ρI 作原点位移反幂法。若 λi 是 λi 的近似值,则可作
⎩⎨⎧(A−λiI)y(k)mkx(k)=x(k−1),=jmaxyj(k),=mky(k),
此时
mk⟶λi−λi1,x(k)⟶maxj∣(xi)j∣xi.
Rayleigh 商迭代法
⎩⎨⎧mk(A−λi(k)I)x(k+1)λi(k+1)=imaxxi(k),=mkx(k),=(x(k+1),x(k+1))(x(k+1),Ax(k+1)).
对称矩阵的 Jacobi 方法
给定 ε>0,对 k=1,2,3,…,Jacobi 方法按以下步骤进行:
- 选取 apq(k),使其为 Ak 中绝对值最大的非对角元素;
- 构造旋转矩阵 Pk=Gpq(θ),使 apq(k+1)=0;
- 计算
Ak+1=PkTAkPk;
- 判断是否满足 N(Ak+1)<ε。
其中
c=cosθ,s=sinθ,tan2θ=app−aqq2apq.
定理 5.4
设 A 为实对称矩阵,则由古典 Jacobi 方法生成的 Ak 趋于对角阵。
定理 5.5
对古典 Jacobi 方法,Ak 的对角元素逐个趋于 A 的特征值。
实对称 Jacobi 方法
取一个单调下降且趋于零的实数序列 {αk}。对任意 k≥1,以 αk 为阈值,依次将绝对值不小于 αk 的非对角元素消去,直至所有非对角元素的绝对值均小于 αk。
对称矩阵的 Givens–Householder 方法
将对称矩阵 A 分块为
A=(α1b(1)(b(1))TA(1)),
其中
α1∈R,b(1)∈Rn−1,A(1)∈R(n−1)×(n−1).
存在 Householder 矩阵 H1∈R(n−1)×(n−1),使
H1b(1)=β1e1,β1=−sign(b1(1))∥b(1)∥2.
令
H1=(100TH1),
则
H1AH1T=α1β10β1α2b(2)0T(b(2))TA(2).
对右下角子块重复上述过程。设已有 A(k),则每步作:
- 取 Hk∈R(n−k)×(n−k),使
Hkb(k)=βke1,βk=−sign(b1(k))∥b(k)∥2;
- 计算
HkA(k)HkT=(αk+1b(k+1)(b(k+1))TA(k+1)).
定义
Hk=diag(Ik,Hk),P=H1H2⋯Hn−2,
并令
C=α1β1β1α2⋱β2⋱βn−2⋱αn−1βn−1βn−1αn.
则
PTAP=C.
对于对称三对角矩阵 C,令 Pk(λ) 为 C−λI 的前 k 阶主子式,则
P0(λ)Pk(λ)=1,=(αk−λ)Pk−1(λ)−βk−12Pk−2(λ).P1(λ)=α1−λ,
引理 5.1
存在 M>0,使当 λ>M 时,对 k=1,2,…,n 有
Pk(−λ)>0,signPk(λ)=(−1)k.
引理 5.2
P0(λ) 无零点,且 Pk−1(λ) 与 Pk(λ) 无公共零点。
引理 5.3
若 λ0 是 Pk(λ) 的零点,则
Pk−1(λ0)Pk+1(λ0)<0.
引理 5.4
Pk(λ) 的零点将实轴分成 k+1 个开区间,每个区间内恰有 Pk+1(λ) 的一个零点。
对任意 α,考察数列
P0(α),P1(α),…,Pk(α).
用 Sk(α) 表示相邻两数符号相同的次数,称为同号数。若 Pj(α)=0,则规定其符号与 Pj−1(α) 相同。
定理 5.6
Sk(α)=#{λ∈[α,+∞):Pk(λ)=0}.
因此 Sn(α) 等于 C 在 [α,+∞) 上的特征值个数,从而可用二分法求得 λm。