数值分析第七章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6.若k N , 置k 1 k , , 转3;否则, 输出失败信息,停机。
4.计算 u
v
v Au 置vr
2 1 0 0 2 1 的按模 例:用幂法求矩阵A 0 1 2 最大的特征值和相应的特征向量。
取v(0) (0, 0,1 T , 103. )
k 1 i
k 1 (0)
A
i 1
k 1
i 1 i
n
xi
v
( k 1)
2 k 1 [1 x1 ( ) 2 x2 1 n k 1 ( ) n xn ] 1
k 1 1
v
(k )
(1x1 k )
k 1
n k
i 其中 k i xi i 2 1
定义1 ⑴ 已知n阶矩阵A=(aij),则
a11 a12 a 21 a 22 ( ) det( I A) det a an2 n1 a1n a2n a nn
v
(k )
1 x1
k 1
主 特 征 值
1 ?(如何算)
由 v
( k 1)
x , 及 v
k 1 1 1 1
(k )
1 x1
k 1
v 1 v
vi
(k )
( k 1) i (k ) i
(k )
(i 1, 2,n)
为 v 的第i个分量。
即相邻两个迭代向量分量的比值收敛到 主特征值.
则对任意的非零初始向量v
(k )
(0)
u
(0)
按下述方法构造的向量序列{v }及{u }:
(k )
v u 0 (k ) ( k 1) Au v k max( v ( k ) ) (k ) u ( k ) v k
(0) (0)
则有 (1) lim u (2) lim
n k 1
i k 1 [1 x1 i ( ) xi ] 1 i 2 (k ) max(v ) n i k 1 max[(1 x1 i ( ) xi )] 1 i 2
n
k
1
定理13:设A R 有n个线性无关的特征向量,
nn
主特征值1满足 | 1 || 2 || n |,
设1 0,由 1 i (i 2,3,, n)
i k 1 得 k lim( ) i xi 0 k 1
i k 1 lim ( ) i xi 0 k i 2 1
n
必有
故只要k充分大,
( k 1)
v
( k 1)
k 1 1
[1 x1 k ]
k 1 1
1 x1
可把v
作为与i 相应的特征向量
的近似。
由v
(k )
(1 x1 k )
k 1
k
及 lim k 0
lim
k
v
(k ) k 1
1 x1
即表明序列
v
(k ) k 1
越来越接近A的对应于
1的特征向量,也即当k 时
v(2) Au (1)
A2v(0) max( Av(0) )
u (2)
v(2) A2v(0) (2) max(v ) max( A2v(0) )
v( k ) Au ( k 1)
Ak v(0) max( Ak 1v(0) )
u(k )
Ak v(0) max( Ak v(0) )
2.9990924
u v
(8)
(0.9219772, 0.9996973,1) Au
(8)
(9)
(2.8436517, 2.9993946, 2.9996973)
3
由 2.9996973 2.9990924 0.0006049 10
故1 2.9996973.
关于计算矩阵A的特征值问题,当n=2,3时,我
们还可按行列式展开的办法求(λ)=0的根. 但当n较
大时,如果按展开行列式的办法,首先求出(λ)的系
数,再求(λ)的根,工作量就非常大,用这种办法求 矩阵的特征值是不切实际的,由此需要研究求A的特 征值及特征向量的数值解法. 本章将介绍一些计算机上常用的两类方法,一 类是幂法及反幂法(迭代法),另一类是正交相似 变换的方法(变换法).
0 1
( ) det( I A) 1
0
3
1
2
3 72 14 8 ( 1)( 2)( 4) 0. 求得矩阵A的特征值为: 1, 2, 4. 对应于各特征值矩阵A的特征向量分别为: 1 1 1 x1 1 , x 2 0 , x 3 2 . 1 1 1
( ) 是m重根,即 m,矩阵A 1 1 1 2 仍有n个线性无关的特征向量。
此时有 (k 1) k 1[ x x v m m 1 11
n k 1 m1)k 1 ( x ( ) n xn ] m1 m1 1 1
方程,其复根是共轭成对出现. ⑵ 设λ为A的特征值,相应的齐次方程组
(I A) x 0
(1.2)
的非零解x称为矩阵A的对应于λ的特征向量. 例1 求A的特征值及特征向量,其中
2 1 0 A 1 3 1 0 1 2
解 矩阵A的特征方程为 2 1
§2. 幂法和反幂法.
一、幂法
幂法是一种计算矩阵的按模最大的特征值
与相应的特征向量的迭代方法。 适合于大型稀疏矩阵
反幂法是计算Henssenberg阵或对角阵
的对应一个给定近似特征值的特征向量 的有效方法.
设n n阶实矩阵A 的特征值
i (i 1, 2, , n)满足 1 2 n
称为迭代向量。 由此计算特征值和特征向量。
且为简便,不妨设 vi 1(i 1, 2, , n)。 因为xi 线性无关,故必存在n个不全为零的数 i (i 1, 2, , n), 使得v (0) i xi。
i 1 n
由v
( k 1)
Av
n
(k )
A v
( i xi )
显然,只要 ,, m不全为零,当k充分大时, 1 就有 v(k 1) k 1( x m xm ) 1 11
因 x m xm也是矩阵A相应于 11 的特征向量,故有 1 (k 1) v m i 1 2 (k ) v i (k 1)为相应的特征向量, v 即对这种情况幂法仍然有效。
第七章
矩阵的特征值与特征向量计算
第7章
• 7.1 引言
矩阵特征问题的计算
• 7.2 幂法及反幂法 • 7.3 豪斯霍尔德方法
• 7.4 QR方法
7.1 引
言
工程技术中有多种振动问题,如桥梁或建筑物的
振动,机械零件、飞机机翼的振动,及一些稳定性分
析和相关分析在数学上都可转化为求矩阵特征值与特
征向量的问题. 下面先复习一些矩阵的特征值和特征向量的基础 知识.
n (a11 a 22 a nn )n1 (次数 n 2的项)
称为A的特征多项式. A的特征方程 ( ) det(I A) 0
(1.1)
一般有n个根(实的或复的,复根按重数计算)称为A
的特征值. 用λ(A)表示A的所有特征值的集合.
注:当A为实矩阵时, (λ)=0为实系数n次代数
按上面式子计算矩阵A按模最大 的特征值与相应的特征向量的 方法称为幂法。
i k 1 由 k lim( ) i xi 0 k 1
2 幂法的收敛速度依赖于比值 , 1
比值越小,收敛越快。
两点说明:
1)如果v 的选取恰恰使得1 0,
(0)
幂法计算仍能进行。
因为计算过程中舍入误差的影响,迭代若 干次后,必然会产生一个向量v ,
相应特征向量为
x (2.8436517, 2.9993946, 2.9996973)。
事实上,A的特征值1 3, 2 2, 3 1 ,
与1对应的特征向量为(, ) 1 -1,1 。
T
此例中比值为
2 2 . 1 3
两种特殊情况
前面假定 .如果按模最大的特征值有 1 2 多个,即 m n 1 2 m1 幂法是否有效?
且有完全的特征向量组
即
与i (i 1, 2,, n)相应的特征向量 x1 , x2 ,, xn线性无关。
幂法的基本思想:
任意取一个非零的初始向量 v 构造一个向量序列
(0)
由矩阵A
v (1) Av ( 0 ) ( 2) (1) 2 (0) Av A v , v v ( k 1) Av ( k ) Ak 1v ( 0 )
(k ) (k )
(k ) r
v max v
(k ) r 1i n
(k ) i
(k 0,1,2,)
注意
r是满足 v
(k ) r
max v
1i n
(k ) i
的最小的下标.
v
(1)
Au
(0)
Av
(0)
v(1) Av(0) u (1) (1) (0) max(v ) max( Av )
(k )
k 1
x1 max( x1 )
算法: 最大迭代次数N。 2 .置k 1, 0 3.求整数r,使 vr max vi ,v r
1 i n
1.输入A ( aij ), 初始向量v (v1 , , vn ), 误差限,
5.若 , 输出 , v, 停机;否则,转6
n k 1
u
(k )
[1 x1 k ] max [(1 x1 k ]
x1 ( k ) max( x1 )
同上讨论有
v
(k )
i k [1 x1 i ( ) xi ] 1 i 2 n i k 1 k 1 max[1 (1 x1 i ( ) xi )] 1 i 2
解: u
(0)
v
(0)
(0, 0,1) ,
T
v
(1)
Au
(0)
(0, 1, 2) ,
T
2,
u
(1)
v
(1)
(1)
(0, 0.5,1) ,
T
v
(2)
Au
(0.5, 2, 2.5) ,
T
பைடு நூலகம் 2.5,
v(8) Au(7) (2.7650948, 2.9981848, 2.9990924)
(k )
它在x1方向上的分量不为零,于是 以后的计算就满足所设条件。
2)因v
(k )
1 x1 , 计算过程中可能会
k 1
出现溢出( 1 1)或成为0( 1 1)的情形。
解决方法:
每次迭代所求的向量都要归一化。
因此,幂法实际使用的计算公式是
u v /v ( k 1) (k ) v Au v( k 1) 1 r
(2)1 2 , 1 3 , 且矩阵A有n个线性无关的特征向量。
v
( k 1)
3 k 1 [1 x1 (1) 2 x2 ( ) 3 x3 1 n k 1 ( ) n xn ] 1
由v
(k )
Av
( k 1)
Av
i k i
k (0)
i 1
n
n
xi
v
(k )
i k [1 x1 i ( ) xi ] 1 i 2
k 1
u
(k )
A v k (0) max( A v )
k
(0)
i k [1 x1 i ( ) xi ] 1 i 2 n i k k max [1 (1 x1 i ( ) xi )] 1 i 2
4.计算 u
v
v Au 置vr
2 1 0 0 2 1 的按模 例:用幂法求矩阵A 0 1 2 最大的特征值和相应的特征向量。
取v(0) (0, 0,1 T , 103. )
k 1 i
k 1 (0)
A
i 1
k 1
i 1 i
n
xi
v
( k 1)
2 k 1 [1 x1 ( ) 2 x2 1 n k 1 ( ) n xn ] 1
k 1 1
v
(k )
(1x1 k )
k 1
n k
i 其中 k i xi i 2 1
定义1 ⑴ 已知n阶矩阵A=(aij),则
a11 a12 a 21 a 22 ( ) det( I A) det a an2 n1 a1n a2n a nn
v
(k )
1 x1
k 1
主 特 征 值
1 ?(如何算)
由 v
( k 1)
x , 及 v
k 1 1 1 1
(k )
1 x1
k 1
v 1 v
vi
(k )
( k 1) i (k ) i
(k )
(i 1, 2,n)
为 v 的第i个分量。
即相邻两个迭代向量分量的比值收敛到 主特征值.
则对任意的非零初始向量v
(k )
(0)
u
(0)
按下述方法构造的向量序列{v }及{u }:
(k )
v u 0 (k ) ( k 1) Au v k max( v ( k ) ) (k ) u ( k ) v k
(0) (0)
则有 (1) lim u (2) lim
n k 1
i k 1 [1 x1 i ( ) xi ] 1 i 2 (k ) max(v ) n i k 1 max[(1 x1 i ( ) xi )] 1 i 2
n
k
1
定理13:设A R 有n个线性无关的特征向量,
nn
主特征值1满足 | 1 || 2 || n |,
设1 0,由 1 i (i 2,3,, n)
i k 1 得 k lim( ) i xi 0 k 1
i k 1 lim ( ) i xi 0 k i 2 1
n
必有
故只要k充分大,
( k 1)
v
( k 1)
k 1 1
[1 x1 k ]
k 1 1
1 x1
可把v
作为与i 相应的特征向量
的近似。
由v
(k )
(1 x1 k )
k 1
k
及 lim k 0
lim
k
v
(k ) k 1
1 x1
即表明序列
v
(k ) k 1
越来越接近A的对应于
1的特征向量,也即当k 时
v(2) Au (1)
A2v(0) max( Av(0) )
u (2)
v(2) A2v(0) (2) max(v ) max( A2v(0) )
v( k ) Au ( k 1)
Ak v(0) max( Ak 1v(0) )
u(k )
Ak v(0) max( Ak v(0) )
2.9990924
u v
(8)
(0.9219772, 0.9996973,1) Au
(8)
(9)
(2.8436517, 2.9993946, 2.9996973)
3
由 2.9996973 2.9990924 0.0006049 10
故1 2.9996973.
关于计算矩阵A的特征值问题,当n=2,3时,我
们还可按行列式展开的办法求(λ)=0的根. 但当n较
大时,如果按展开行列式的办法,首先求出(λ)的系
数,再求(λ)的根,工作量就非常大,用这种办法求 矩阵的特征值是不切实际的,由此需要研究求A的特 征值及特征向量的数值解法. 本章将介绍一些计算机上常用的两类方法,一 类是幂法及反幂法(迭代法),另一类是正交相似 变换的方法(变换法).
0 1
( ) det( I A) 1
0
3
1
2
3 72 14 8 ( 1)( 2)( 4) 0. 求得矩阵A的特征值为: 1, 2, 4. 对应于各特征值矩阵A的特征向量分别为: 1 1 1 x1 1 , x 2 0 , x 3 2 . 1 1 1
( ) 是m重根,即 m,矩阵A 1 1 1 2 仍有n个线性无关的特征向量。
此时有 (k 1) k 1[ x x v m m 1 11
n k 1 m1)k 1 ( x ( ) n xn ] m1 m1 1 1
方程,其复根是共轭成对出现. ⑵ 设λ为A的特征值,相应的齐次方程组
(I A) x 0
(1.2)
的非零解x称为矩阵A的对应于λ的特征向量. 例1 求A的特征值及特征向量,其中
2 1 0 A 1 3 1 0 1 2
解 矩阵A的特征方程为 2 1
§2. 幂法和反幂法.
一、幂法
幂法是一种计算矩阵的按模最大的特征值
与相应的特征向量的迭代方法。 适合于大型稀疏矩阵
反幂法是计算Henssenberg阵或对角阵
的对应一个给定近似特征值的特征向量 的有效方法.
设n n阶实矩阵A 的特征值
i (i 1, 2, , n)满足 1 2 n
称为迭代向量。 由此计算特征值和特征向量。
且为简便,不妨设 vi 1(i 1, 2, , n)。 因为xi 线性无关,故必存在n个不全为零的数 i (i 1, 2, , n), 使得v (0) i xi。
i 1 n
由v
( k 1)
Av
n
(k )
A v
( i xi )
显然,只要 ,, m不全为零,当k充分大时, 1 就有 v(k 1) k 1( x m xm ) 1 11
因 x m xm也是矩阵A相应于 11 的特征向量,故有 1 (k 1) v m i 1 2 (k ) v i (k 1)为相应的特征向量, v 即对这种情况幂法仍然有效。
第七章
矩阵的特征值与特征向量计算
第7章
• 7.1 引言
矩阵特征问题的计算
• 7.2 幂法及反幂法 • 7.3 豪斯霍尔德方法
• 7.4 QR方法
7.1 引
言
工程技术中有多种振动问题,如桥梁或建筑物的
振动,机械零件、飞机机翼的振动,及一些稳定性分
析和相关分析在数学上都可转化为求矩阵特征值与特
征向量的问题. 下面先复习一些矩阵的特征值和特征向量的基础 知识.
n (a11 a 22 a nn )n1 (次数 n 2的项)
称为A的特征多项式. A的特征方程 ( ) det(I A) 0
(1.1)
一般有n个根(实的或复的,复根按重数计算)称为A
的特征值. 用λ(A)表示A的所有特征值的集合.
注:当A为实矩阵时, (λ)=0为实系数n次代数
按上面式子计算矩阵A按模最大 的特征值与相应的特征向量的 方法称为幂法。
i k 1 由 k lim( ) i xi 0 k 1
2 幂法的收敛速度依赖于比值 , 1
比值越小,收敛越快。
两点说明:
1)如果v 的选取恰恰使得1 0,
(0)
幂法计算仍能进行。
因为计算过程中舍入误差的影响,迭代若 干次后,必然会产生一个向量v ,
相应特征向量为
x (2.8436517, 2.9993946, 2.9996973)。
事实上,A的特征值1 3, 2 2, 3 1 ,
与1对应的特征向量为(, ) 1 -1,1 。
T
此例中比值为
2 2 . 1 3
两种特殊情况
前面假定 .如果按模最大的特征值有 1 2 多个,即 m n 1 2 m1 幂法是否有效?
且有完全的特征向量组
即
与i (i 1, 2,, n)相应的特征向量 x1 , x2 ,, xn线性无关。
幂法的基本思想:
任意取一个非零的初始向量 v 构造一个向量序列
(0)
由矩阵A
v (1) Av ( 0 ) ( 2) (1) 2 (0) Av A v , v v ( k 1) Av ( k ) Ak 1v ( 0 )
(k ) (k )
(k ) r
v max v
(k ) r 1i n
(k ) i
(k 0,1,2,)
注意
r是满足 v
(k ) r
max v
1i n
(k ) i
的最小的下标.
v
(1)
Au
(0)
Av
(0)
v(1) Av(0) u (1) (1) (0) max(v ) max( Av )
(k )
k 1
x1 max( x1 )
算法: 最大迭代次数N。 2 .置k 1, 0 3.求整数r,使 vr max vi ,v r
1 i n
1.输入A ( aij ), 初始向量v (v1 , , vn ), 误差限,
5.若 , 输出 , v, 停机;否则,转6
n k 1
u
(k )
[1 x1 k ] max [(1 x1 k ]
x1 ( k ) max( x1 )
同上讨论有
v
(k )
i k [1 x1 i ( ) xi ] 1 i 2 n i k 1 k 1 max[1 (1 x1 i ( ) xi )] 1 i 2
解: u
(0)
v
(0)
(0, 0,1) ,
T
v
(1)
Au
(0)
(0, 1, 2) ,
T
2,
u
(1)
v
(1)
(1)
(0, 0.5,1) ,
T
v
(2)
Au
(0.5, 2, 2.5) ,
T
பைடு நூலகம் 2.5,
v(8) Au(7) (2.7650948, 2.9981848, 2.9990924)
(k )
它在x1方向上的分量不为零,于是 以后的计算就满足所设条件。
2)因v
(k )
1 x1 , 计算过程中可能会
k 1
出现溢出( 1 1)或成为0( 1 1)的情形。
解决方法:
每次迭代所求的向量都要归一化。
因此,幂法实际使用的计算公式是
u v /v ( k 1) (k ) v Au v( k 1) 1 r
(2)1 2 , 1 3 , 且矩阵A有n个线性无关的特征向量。
v
( k 1)
3 k 1 [1 x1 (1) 2 x2 ( ) 3 x3 1 n k 1 ( ) n xn ] 1
由v
(k )
Av
( k 1)
Av
i k i
k (0)
i 1
n
n
xi
v
(k )
i k [1 x1 i ( ) xi ] 1 i 2
k 1
u
(k )
A v k (0) max( A v )
k
(0)
i k [1 x1 i ( ) xi ] 1 i 2 n i k k max [1 (1 x1 i ( ) xi )] 1 i 2