数值幂法及反幂法分析方法

合集下载

数值分析幂法和反幂法

数值分析幂法和反幂法

数值分析幂法和反幂法数值分析中的幂法和反幂法是求解矩阵最大特征值和最小特征值的常用方法。

这两种方法在许多数值计算问题中都有着广泛的应用,包括图像压缩、数据降维、谱聚类等。

幂法(Power Method)是一种迭代算法,通过不断迭代矩阵与一个向量的乘积,来逼近原矩阵的最大特征值和对应的特征向量。

其基本思想是,对于一个矩阵A和一维向量x,可以通过不断迭代计算Ax,Ax,Ax...,来使得向量x逼近最大特征值对应的特征向量。

具体的迭代过程如下:1.初始化一个向量x0(可以是单位向量或任意非零向量)2.令x1=Ax0,对向量进行归一化(即除以向量的范数)得到x13.重复步骤2,即令x2=Ax1,x3=Ax2...,直到收敛(即相邻迭代向量的差的范数小于一些阈值)为止4. 最终得到的向量xn就是A的最大特征值对应的特征向量在实际求解时,我们可以将迭代过程中的向量进行归一化,以防止数值溢出或下溢。

此外,为了提高迭代速度,我们可以选择使得xn与xn-1的内积大于0的方向作为迭代方向,这样可以使得特征值的模快速收敛到最大特征值。

幂法的收敛性是保证的,但收敛速度可能较慢,尤其是当最大特征值与其他特征值非常接近时。

此时可能需要使用一些改进的方法来加速收敛,例如Rayleigh商或位移策略。

相反,反幂法(Inverse Power Method)是求解矩阵的最小特征值和对应的特征向量的方法。

它的基本思想和幂法类似,但在每次迭代中,需要计算A和依其逆矩阵A-1的乘积。

迭代过程如下:1.初始化一个向量x0(可以是单位向量或任意非零向量)2.令x1=A-1x0,对向量进行归一化(即除以向量的范数)得到x13.重复步骤2,即令x2=A-1x1,x3=A-1x2...4. 最终得到的向量xn就是A的最小特征值对应的特征向量反幂法和幂法的区别在于迭代过程中乘以了A的逆矩阵,从而可以利用矩阵的特殊结构或性质来提高迭代速度。

同时,在实际求解时,可能需要将矩阵进行一些变换,以确保A-1存在或数值稳定性。

幂法及反幂法

幂法及反幂法
(当 k → ∞ 时 , ε k → 0 )
) k x i → 0 (当 k → ∞ ).
(2) 对迭代向量序列 {vk } 对迭代向量序列: k Ak v0 λ1 (α 1 x1 + ε k ) α1 x1 + ε k vk = = = λ1 k max(Ak 1v0 ) max( λ1 1 (α 1 x1 + ε k 1 )) max(α1 x1 + ε k 1 ) k = max( v k ) = λ1 max(α 1 x1 + ε k ) → λ1 , (当 k → ∞ )) 于是, 于是, 1 当k → ∞ max(α 1 x1 + ε k 1 ) 即 v k绝对值最大的分量当 k → ∞ 时,趋向于特征根 λ 1 . 结论: 结论: 个线性无关的特征向量; 定理 8 (1)设 A ∈ R n× n 有n个线性无关的特征向量; 个线性无关的特征向量 (2)设A特征值满足 | λ1 |>| λ2 |≥ ≥| λn |, 且 Axi = λi xi (i = 1,, n); ) 特征值满足 {v 由改进幂法得到的规范化向量序列及 3){u (3){uk } 及 {vk }由改进幂法得到的规范化向量序列及迭代向量 序列(( ((2 ),则有 序列((2.7)式),则有 x1 lim (a ) lim uk = ; (b ) k → ∞ k = lim max( v k ) = λ1 . k →∞ k →∞ max( x1 ) λ r = | 2 | 确定. 确定. 且收敛速度由比值 λ1
则有迭代向量序列{v k }及规范化向量序列 {uk } .
u0 = v0 ≠ 0 ( 且α 1 ≠ 0) vk = Auk 1 , k = max(vk ) 迭代 : ( k = 1,2,) 规范化 : uk = vk / k 的关系. 先考虑 {uk }, {v k } 与计算 λ1 及 x 1 的关系.

幂法-反幂法求解矩阵最大最小特征值及其对应的特征向量

幂法-反幂法求解矩阵最大最小特征值及其对应的特征向量

幂法-反幂法求解矩阵最大最小特征值及其对应的特征向量数值计算解矩阵的按模最大最小特征值及对应的特征向量一.幂法1. 幂法简介:当矩阵A 满足一定条件时,在工程中可用幂法计算其主特征值(按模最大)及其特征向量。

矩阵A 需要满足的条件为: (1) 的特征值为A i n λλλλ,0||...||||21≥≥≥>(2) 存在n 个线性无关的特征向量,设为n x x x ,...,,211.1计算过程:i ni i i u xx αα,1)0()0(∑==,有对任意向量不全为0,则有1111112211211111111011)()(...u u a u a u λu λαu αA x A Ax x k n n k n k k ni ik i i ni i i k )(k (k))(k αλλλλλα++++=+=+++≈?+++======∑∑Λ 可见,当||12λλ越小时,收敛越快;且当k 充分大时,有1)1111)11111λαλαλ===+++(k )(k k(k k )(k x x u x u x ,对应的特征向量即是)(k x 1+。

2 算法实现.,, 3,,1 , ).5()5(,,,,||).4();max(,).3()(max(;0,1).2(,).1()()()(停机否则输出失败信息转置若转否则输出若计算最大迭代次数,误差限,初始向量输入矩阵βλβεβλβλε←+←<<-←←=←←k k N k y x Ay x x abs x y k N x A k k k3 matlab 程序代码function [t,y]=lpowerA,x0,eps,N) % t 为所求特征值,y是对应特征向量k=1;z=0; % z 相当于λy=x0./max(abs(x0)); % 规范化初始向量x=A*y; % 迭代格式b=max(x); % b 相当于βif abs(z-b)<="">t=max(x);return;endwhile abs(z-b)>eps && k<n< p="">k=k+1;z=b;y=x./max(abs(x));x=A*y;b=max(x);end[m,index]=max(abs(x)); % 这两步保证取出来的按模最大特征值t=x(index); % 是原值,而非其绝对值。

数值分析 -第7讲_幂法和反幂法

数值分析 -第7讲_幂法和反幂法
数值分析
则存在酉矩阵U使 定理9( Schur定理) 设A ∈ R n×n, r11 r12 L r1n r22 L r2n ∆ = R, U T AU = O rnn 其中rii (i = 1,2,L, n)为A的特征值.
定理10(实Schur分解) 设A ∈ R n×n, 则存在正交矩阵Q使 R11 R12 L R1m R22 L R2m , QT AQ = O Rmm 其中当Rii (i = 1,2,L, m)为一阶时Rii是A的实特征值,当Rii为 二阶时Rii的两个特征值是A的两个共轭复特征值.
xn xn
α1 x1 α1 x1
数值分析
不同范数选取下的特征值的计算
1. 取范数为2-范数时 取范数为2
T T yk −1uk = yk −1 Ayk −1 ⇒
α1 x1T α1 x1 A = λ1 α1 x1 2 α1 x1 2
对应的迭代公式
∀ u0 ∈ R n T η k −1 = uk −1uk −1 yk −1 = uk −1 η k −1 uk = Ayk −1 T β k = yk −1uk ( k = 1, 2,...)
数值分析
实际使用的迭代公式为: 实际使用的迭代公式为:
uk −1 yk −1 = u k −1 u = Ay k −1 k
于是可得
Auk −1 A2uk −2 A k u0 uk = = = L = k −1 uk −1 Auk −2 A u0
uk Ak u0 yk = = k uk A u0
数值分析
定义3 定义3 设A = (aij ) n×n , 令 n ( )i = ∑ | aij | (2) Di = {z | | z − aii |≤ ri , z ∈ C }, (i = 1,L, n) 1 r , j≠i 称Di为复平面上以aii为圆心以ri为半径的Gerschgorin圆盘.

41第一节-幂法和反幂法

41第一节-幂法和反幂法

=a11v1 a22v2 annvn x2 Ax1 a11 Av1 a22 Av2 ann Avn
=a112v1 a222v2 ann2vn
即对 x0 a1v1 a2v2 anvn 用公式 xk Axk1, k 1, 2,
幂法的迭代公式为
xk Axk1 k 1, 2,
当k充分大时,有

xk
1ka1v1


1


xk1 i xk i
收敛速度取决于比值 2 ,比值越小,收敛越快. 1
3. 误差分析
幂法的迭代公式为 xk Axk1 k 1, 2,
当k充分大时, 有
xk 1ka1v1
称1为A的按摸最大特征值(也称主特征值).
任取非零向量
x0

( x1(0) ,
x(0) 2
,
,
x(0) n
)T,

x0 a1v1 a2v2 anvn
设 a10, 由A构造向量序列{xk}
xk Axk1, k 1, 2,
其中 x1 Ax0 a1 Av1 a2 Av2 an Avn
a1n a2n 0
an1
an2
ann
的根;求A的属于特征值的特征向量等价于求
非零解.
( E A)x 0
设为A∈Rn×n的特征值, x 称为A的与特 征值 相对应的一个特征向量,即Ax= x, (x≠0)
则有
(1) cx (c≠0为常数)也是 A的与特征值 相对 应的一个特征向量,即A(cx)=(cx);
4. 实用计算公式
yk Axk1
mk max yk

北航数值分析-lec7-幂法和反幂法

北航数值分析-lec7-幂法和反幂法
线性方程组求解
迭代收敛性
反幂法在求解特征值问题中的应用
特征值问题
反幂法主要用于求解矩阵的特征值和特征向量问题。通过迭代过程,反幂法能够找到矩阵的所有特征 值和对应的特征向量。
数值稳定性
反幂法在求解特征值问题时,需要关注数值稳定性问题。由于计算机浮点运算的误差累积,反幂法可 能会产生数值不稳定的解。因此,需要采取适当的策略来提高数值稳定性。
误差分析比较
幂法
由于幂法是通过连续的矩阵乘法来计算矩阵的幂,因此误差会随着计算的次数逐渐 累积。为了减小误差,需要选择合适的计算精度和减少计算次数。
反幂法
反幂法是通过求解线性方程组来计算矩阵的逆和行列式,因此误差主要来自于线性 方程组的求解精度。为了减小误差,需要选择合适的求解方法和提高求解精度。
202X
北航数值分析-lec7-幂法 和反幂法
单击此处添加副标题内容
汇报人姓名 汇报日期
目 录幂法介绍Fra bibliotek反幂法介绍
幂法和反幂法的比较
幂法和反幂法的实现细节
幂法和反幂法的实际应用案例
单击此处输入你的正文,文字是
您思想的提炼,请尽量言简意赅
的阐述观点
contents
单击此处输入你的正文,文字是 您思想的提炼,请尽量言简意赅 的阐述观点
反幂法的实现细节
反幂法是一种迭代算法,用 于求解线性方程组的近似逆。
反幂法的收敛速度取决于矩阵的谱 半径,如果矩阵的谱半径较小,则 反幂法收敛速度较快。
ABCD
反幂法的实现步骤包括:选择初始 矩阵、计算迭代矩阵、更新解矩阵 和判断收敛性。
在实际应用中,反幂法通常用于 求解大规模稀疏线性系统的预处 理和后处理问题。
01

数值分析幂法和反幂法

数值分析幂法和反幂法

数值分析幂法和反幂法数值分析中,幂法(Power method)和反幂法(Inverse Power method)是求解矩阵的特征值和特征向量的两种常用方法。

它们都是通过迭代过程逼近特征值和特征向量。

1.幂法:幂法是求解矩阵的最大特征值和对应的特征向量的一种迭代方法。

幂法的原理是通过迭代过程,将一个任意选择的初始向量不断与矩阵相乘,使其逼近对应最大特征值的特征向量。

幂法的迭代公式为:$x^{(k+1)} = \frac{Ax^{(k)}}{\,Ax^{(k)}\,}$幂法的迭代过程是不断对向量进行归一化,使其逐渐逼近最大特征值对应的特征向量。

当迭代次数足够多时,可以得到非常接近最大特征值的估计。

2.反幂法:反幂法是幂法的一种变形,用于求解矩阵的最小特征值和对应的特征向量。

反幂法的原理是通过迭代过程,将一个任意选择的初始向量不断与矩阵的逆相乘,使其逼近对应最小特征值的特征向量。

反幂法的迭代公式为:$x^{(k+1)} = \frac{A^{-1}x^{(k)}}{\,A^{-1}x^{(k)}\,}$反幂法的迭代过程同样是不断对向量进行归一化,使其逐渐逼近最小特征值对应的特征向量。

当迭代次数足够多时,可以得到非常接近最小特征值的估计。

3.收敛性分析:幂法和反幂法的收敛性分析与矩阵的特征值分布有关。

对于幂法而言,如果矩阵$A$的最大特征值是唯一的,并且其他特征值的绝对值小于最大特征值的绝对值,那么幂法是收敛的,而且收敛速度是指数级的。

对于反幂法而言,如果矩阵$A$的最小特征值是唯一的,并且其他特征值的绝对值大于最小特征值的绝对值,那么反幂法是收敛的,而且同样是指数级的收敛速度。

4.实际应用:幂法和反幂法在实际中广泛应用于各个领域,例如物理、工程、计算机科学等。

比如在结构力学中,幂法可以用来求解结构的自振频率和相应的振型;在电力系统中,反幂法可以用来求解电力系统决定性特征值,例如功率稳定性的最小特征值。

数值分析幂法和反幂法

数值分析幂法和反幂法
>> [m,u,index,k]=pow(A,u)
m =
2.6813
u =
0.8576
0.6934
0.5623
1.0000
index =
1
k =
49
修改M0=1e-3
m =
2.6814
u =
0.8576
0.6934
0.5623
1.0000
index =
0
k =
1001
修改M0=0 %此时为幂法
m =
4.对结果进行解释说明;
采用方法
及结果
说明
对于幂法和反幂法求解矩阵特征值和特征向量的问题将从问题分析,算法设计和流程图,理论依据,程序及结果进行阐述该问题。
一.问题的分析:
求n阶方阵A的特征值和特征向量,是实际计算中常常碰到的问题,如:机械、结构或电磁振动中的固有值问题等。对于n阶矩阵A,若存在数 和n维向量x满足
end
n=length(A);
index=0;
k=0;
m1=0;
m0=0;
I=eye(n);
T=A-m0*I;
while k<=it_max
v=T*u;
[vmax,i]=max(abs(v));
m=v(i);
u=v/m;
if abs(m-m1)<ep;
index=1;
break;
end
m=m+m0;
1
16
0
0.3847
[-0.8996 1.0000 0.2726 -0.2364]
1
16
[1 3 5 7]
0.5
0.3847
[-0.8995 1.0000 0.2726 -0.2364]

北航数值分析报告第一次大作业(幂法反幂法)

北航数值分析报告第一次大作业(幂法反幂法)

一、问题分析与算法描述1. 问题的提出:〔1〕用幂法、反幂法求矩阵的按摸最大和最小特征值,并求出相应的特征向量。

其中要求:迭代精度达到。

〔2〕用带双步位移的QR法求上述的全部特征值,并求出每一个实特征值相应的特征向量。

2. 算法的描述:(1) 幂法幂法主要用于计算矩阵的按摸为最大的特征值和相应的特征向量。

其迭代格式为:终止迭代的控制选用。

幂法的使用条件为实矩阵A具有n个线性无关的特征向量,其相应的特征值满足不等式或幂法收敛速度与比值或有关,比值越小,收敛速度越快。

(2) 反幂法反幂法用于计算实矩阵A按摸最小的特征值,其迭代格式为:每迭代一次都要求解一次线性方程组。

当k足够大时,,可近似的作为矩阵A的属于的特征向量。

比值越小,收敛的越快。

反幂法要求矩阵A非奇异。

(3) 带双步位移的QR分解法QR方法适用于计算一般实矩阵的全部特征值,尤其适用于计算中小型实矩阵的全部特征值。

本算例中采用带双步位移的QR方法,可加速收敛,其迭代格式为:二、计算结果与分析1. 计算结果:(1) 幂法:初始条件:最大迭代次数L=1000;向量计算结果:第1次迭代结果:最大特征值:0.00000e+000第2次迭代结果:最大特征值:2.48910e+000 相对误差:1.00000e+000 第3次迭代结果:最大特征值:1.67719e+000 相对误差:第4次迭代结果:最大特征值:-2.10960e+000 相对误差:1.79503e+000 第5次迭代结果:最大特征值:-6.13203e-001 相对误差:2.44030e+000 ……第794次迭代结果:最大特征值:-1.97638e+000 相对误差:最大特征值:-1.97638e+000 相对误差:********************最终迭代结果***************特征值:-1.97638e+000 相对误差:迭代次数:795(2) 反幂法:初始条件:最大迭代次数L=1000;向量运行结果:第1次迭代结果:最大特征值:1.07542e+000第2次迭代结果:最大特征值:-3.66550e+000 相对误差:1.29339e+000 第3次迭代结果:最大特征值:1.22709e+001 相对误差:1.29871e+000 第4次迭代结果:最大特征值:-1.03421e+000 相对误差:1.28650e+001 第5次迭代结果:最大特征值:相对误差:……第995次迭代结果:最大特征值:相对误差:第996次迭代结果:最大特征值:相对误差:最大特征值:相对误差:第998次迭代结果:最大特征值:相对误差:第999次迭代结果:最大特征值:相对误差:第1000次迭代结果:最大特征值:相对误差:******************************超过最大设定迭代次数,迭代失败!(3) 带双步位移的QR法:初始条件:最大迭代次数L=1000;向量运行结果:全部特征值:特征向量〔经谱X数归一化〕:实特征值对应特征向量:-0.062705 -0.022368 0.304372 0.064466 0.521833 -0.157024 0.136942 -0.218108 0.250264 -0.043064 -0.228688 -0.184632 -0.072871 0.124721 0.029070 0.102566 -0.136358 0.167727 0.085747 0.546165 实特征值对应特征向量:-0.018001 0.019652 0.273447 0.070528 0.274896 -0.144015 0.048385 0.376439 -0.583051 -0.054008 -0.168682 -0.113430 -0.034709 0.009204 0.472291 0.125664 -0.190617 0.113145 0.046278 0.059871 实特征值对应特征向量:0.106861 0.087709 -0.024967 -0.020897 0.064302 0.034047 0.535143 0.046383 0.028832 0.003479-0.097276 -0.383801 0.089445 -0.039560 -0.036928 -0.021330 0.014811 0.705836 -0.108904 0.082022 实特征值对应特征向量:-0.055201 0.003399 0.242191 0.102847 0.372470 -0.372826 0.113953 0.240659 -0.310401 -0.076590 -0.244632 -0.192549 -0.077259 0.263328 0.201662 0.154166 -0.407814 0.186782 0.094649 0.173302 实特征值对应特征向量:0.427828 -0.546801 0.007822 -0.382580 0.025199 0.012788 0.033241 0.005389 -0.004065 0.043524 -0.032112 -0.044233 0.135395 -0.006564 0.001214 0.020165 0.011678 0.050001 -0.585765 0.013115 实特征值对应特征向量:0.236032 -0.139250 -0.008143 0.638527 -0.009049 -0.002911 -0.001307 0.003054 0.006515 -0.030134 0.012712 0.011368 -0.018792 -0.001753 -0.005749 -0.014290 -0.005292 -0.014591 0.717590 0.001369 实特征值对应特征向量:-0.227404 -0.048154 0.022615 0.297305 0.070372 0.039927 0.078503 0.015822 -0.012182 0.605334 -0.083616 -0.106270 -0.573963 -0.019907 0.003839 0.051362 0.036567 0.115613 0.332707 0.036954 实特征值对应特征向量:-0.027768 -0.051081 -0.159642 -0.054573 -0.084441 0.118378 0.029553 0.211088 0.203867 0.0486272. 结果分析以上三种方法中,幂法计算共进展了795次迭代才达到收敛,计算量较大,收敛性不好;反幂法计算结果未能收敛,通过进一步分析发现,这是因为反幂法迭代程序未考虑按模最小特征值为复数的情况,造成迭代失败。

幂法,反幂法求解矩阵最大最小特征值及其对应的特征向量

幂法,反幂法求解矩阵最大最小特征值及其对应的特征向量

数值计算解矩阵的按模最大最小特征值及对应的特征向量一.幂法1. 幂法简介:当矩阵A 满足一定条件时,在工程中可用幂法计算其主特征值(按模最大)及其特征向量。

矩阵A 需要满足的条件为:(1) 存在n 个线性无关的特征向量,设为n x x x ,...,,211.1计算过程:i n i i i u xx αα,1)0()0(∑==,有对任意向量不全为0,则有 可见,当||12λλ越小时,收敛越快;且当k 充分大时,有1)1111)11111λαλαλ=⇒⎪⎩⎪⎨⎧==+++(k )(k k (k k )(k x x u x u x ,对应的特征向量即是)(k x 1+。

2 算法实现3 matlab 程序代码function [t,y]=lpowerA,*0,eps,N) % t 为所求特征值,y 是对应特征向量k=1;z=0; % z 相当于λy=*0./ma*(abs(*0)); % 规化初始向量*=A*y; % 迭代格式b=ma*(*); % b 相当于 βif abs(z-b)<eps % 判断第一次迭代后是否满足要求t=ma*(*);return ;endwhile abs(z-b)>eps && k<Nk=k+1;z=b;y=*./ma*(abs(*));*=A*y;b=ma*(*);end[m,inde*]=ma*(abs(*)); % 这两步保证取出来的按模最大特征值t=*(inde*); % 是原值,而非其绝对值。

end4 举例验证选取一个矩阵A ,代入程序,得到结果,并与eig(A)的得到结果比拟,再计算A*y-t*y ,验证y 是否是对应的特征向量。

结果如下:结果正确,说明算法和代码正确,然后利用此程序计算15阶Hilb 矩阵,与eig(A)的得到结果比拟,再计算 A*y-t*y ,验证y 是否是对应的特征向量。

设置初始向量为*0=ones(15,1),结果显示如下可见,结果正确。

幂法和反幂法

幂法和反幂法
及迭代向量 序列((3.7)式),则有
(a)
kl im uk
x1 ; maxx1)(
(b ) k l i m kk l i m mvk a ) x1.(
且收敛速度由比值 r | 2 | 确定。 1
下面我们把改进的幂法简称为幂法。
用(改进的)幂法求矩阵A的主特征第值九和章 主特特征值征与向特量征向的量步的数骤值:求法
m
(vk1 )i (vk )i
v

k





















( 2 ) 1 2 , 1 3 , 且 矩 阵 A 有 n 个第九线章性特无征关值与的特特征征向量向的量数值。求法
vk
k 1
[
1
x
1
(1)k 2 x2
(
3 1
)
k
3
x
3
(
n 1
)k
n
xn
]
由 上 式 可 知 , v k 是 个 摆 动 序 列 , 当 k 充 分 大 时 , 有
v1Au0(0,1,2)T,
1m a x (v1)2 , u 1v1(0 , 0 .5 ,1 )T , 1
v2A u 1(0 .5 , 2 ,2 .5 )T, 2 2.5,
u2
v2
2
(0.2,0.8,1)T,......
第九章 特征值与特征向量的数值求法
v 8 A u 7 ( 2 .7 6 5 0 9 4 8 , 2 .9 9 8 1 8 4 8 ,2 .9 9 9 0 9 2 4 ) T, 8 2 .9 9 9 0 9 2 4

北航数值分析第一次大作业(幂法反幂法)

北航数值分析第一次大作业(幂法反幂法)

一、问题分析及算法描述1. 问题的提出:(1)用幂法、反幂法求矩阵A =[a ij ]20×20的按摸最大和最小特征值,并求出相应的特征向量。

其中 a ij ={sin (0.5i +0.2j ) i ≠j 1.5cos (i +1.2j ) i =j要求:迭代精度达到10−12。

(2)用带双步位移的QR 法求上述的全部特征值,并求出每一个实特征值相应的特征向量。

2. 算法的描述:(1) 幂法幂法主要用于计算矩阵的按摸为最大的特征值和相应的特征向量。

其迭代格式为:{ 任取非零向量u 0=(h 1(0),⋯,h n (0))T|h r (k−1)|=max 1≤j≤n |h r (k−1)| y ⃑ k−1=u ⃑ k−1|h r (k−1)| u ⃑ k =Ay ⃑ k−1=(h 1(k ),⋯,h n (k ))T βk =sgn (h r (k−1))h r (k ) (k =1,2,⋯) 终止迭代的控制选用≤ε。

幂法的使用条件为n ×n 实矩阵A 具有n 个线性无关的特征向量x 1,x 2,⋯,x n ,其相应的特征值λ1,λ2,⋯,λn 满足不等式|λ1|>|λ2|≥|λ3|≥⋯≥|λn |或λ1=λ2=⋯=λm|λ1|>|λm+1|≥|λm+2|≥⋯≥|λn |幂法收敛速度与比值|λ2λ1|或|λm+1λ1|有关,比值越小,收敛速度越快。

(2) 反幂法反幂法用于计算n ×n 实矩阵A 按摸最小的特征值,其迭代格式为:{任取非零向量u 0∈R nηk−1=√u ⃑ k−1T u ⃑ k−1 y ⃑ k−1=u ⃑ k−1ηk−1⁄ Au ⃑ k =y ⃑ k−1 βk =y ⃑ k−1u ⃑ k (k =1,2,⋯) 每迭代一次都要求解一次线性方程组Au ⃑ k =y ⃑ k−1。

当k 足够大时,λn ≈1βk ,y ⃑ k−1可近似的作为矩阵A 的属于λn 的特征向量。

数值分析课程设计+幂法与反幂法MATLAB

数值分析课程设计+幂法与反幂法MATLAB

一、问题的描述及算法设计(一)问题的描述本次课程设计我所要做的课题是:对称矩阵的条件数的求解设计 1、求矩阵A 的二条件数问题 A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡----210121012 2、设计内容: 1)采用幂法求出A 的. 2)采用反幂法求出A 的.3)计算A 的条件数 ⅡA Ⅱ2* ⅡA -1Ⅱ2=cond2(A )=/.(精度要求为10-6)3、设计要求 1)求出ⅡA Ⅱ2。

2)并进行一定的理论分析。

(二)算法设计1、幂法算法(1)取初始向量u )0((例如取u )0(=(1,1,…1)T ),置精度要求ε,置k=1. (2)计算v )(k =Au )1(-k ,m k =max(v )(k ), u )(k = v )(k / m k(3)若| m k = m 1-k |<ε,则停止计算(m k 作为绝对值最大特征值1λ,u )(k 作为相应的特征向量)否则置k=k+1,转(2) 2、反幂法算法(1)取初始向量u )0((例如取u )0(=(1,1,…1)T ),置精度要求ε,置k=1. (2)对A 作LU 分解,即A=LU(3)解线性方程组 Ly )(k =u )1(-k ,Uv )(k =y )(k (4)计算m k =max(v )(k ), u )(k = v )(k / m k(5)若|m k =m 1-k |<ε,则停止计算(1/m k 作为绝对值最小特征值n λ,u )(k 作为相应的特征向量);否则置k=k+1,转(3).二、算法的流程图(一)幂法算法的流程图(二)反幂法算法的流程图三、算法的理论依据及其推导(一)幂法算法的理论依据及推导幂法是用来确定矩阵的主特征值的一种迭代方法,也即,绝对值最大的特征值。

稍微修改该方法,也可以用来确定其他特征值。

幂法的一个很有用的特性是它不仅可以生成特征值,而且可以生成相应的特征向量。

实际上,幂法经常用来求通过其他方法确定的特征值的特征向量。

数值分析3.1幂法和反幂法

数值分析3.1幂法和反幂法

第三章 矩阵的特征值与特征向量
3.1 幂法与反幂法 3.2 Jacobi方法
3.3 QR方法
第三章 矩阵的特征值与特征向量
3.1幂法与反幂法
一、乘幂法 二、反幂法
三、带原点位移的反幂法
四、反幂法的特点
第三章 矩阵的特征值与特征向量
3.1幂法与反幂法
一、乘幂法
1、基本思想
2、算法(迭代公式) ◆一般算法
具体算法: (1)使用范数 2
1 X 1 yk , k 1 1 X 1
(2)使用范数
uk A yk 1

k
er u k er y k 1
T
T
k
lim k 1
留为作业自学
具体算法: (1)使用范数 2 1 X 1 yk , k 1 1 X 1
1 2 n
第三章 矩阵的特征值与特征向量
一、乘幂法 1、基本思想 设A有n个线性无关的特征向量 X 1 , X 2 ,, X n ,
AX j j X j , j 1,2,, n
3.1幂法与反幂法
★ 设 1为实数而且是单根: 1 2 n
u0 1 X 1 2 X 2 n X n
具体算法: 按取范数的不同, 迭代公式也不同。 (1)使用范数 2
任取初始向量u0 R n T k 1 u k 1 u k 1 u k 1 yk 1 k 1 (3.4) u k A yk 1 k yk 1T uk k 1,2,
T
精确结果:
X 1 (0,0.5,1) , 1 45
T
max( uk ) 表示 u k 的绝对值最大的分量。 (3)

数值分析之幂法及反幂法C语言程序实例

数值分析之幂法及反幂法C语言程序实例

数值分析之幂法及反幂法C 语言程序实例1、算法设计方案:①求1λ、501λ和s λ的值:s λ:s λ表示矩阵的按模最小特征值,为求得s λ直接对待求矩阵A 应用反幂法即可。

1λ、501λ:已知矩阵A 的特征值满足关系 1n λλ<<L ,要求1λ、及501λ时,可按如下方法求解:a . 对矩阵A 用幂法,求得按模最大的特征值1m λ。

b . 按平移量1m λ对矩阵A 进行原点平移得矩阵1m BA I λ=+,对矩阵B 用反幂法求得B 的按模最小特征值2m λ。

c . 321m m m λλλ=-则:113min(,)m m λλλ=,13max(,)n m m λλλ=即为所求。

②求和A 的与数5011140k k λλμλ-=+最接近的特征值ik λ(k=0,1,…39):求矩阵A 的特征值中与k μ最接近的特征值的大小,采用原点平移的方法: 先求矩阵 B=A-k μI 对应的按模最小特征值k β,则k β+k μ即为矩阵A 与k μ最接近的特征值。

重复以上过程39次即可求得ik λ(k=0,1,…39)的值。

③求A 的(谱范数)条件数2cond()A 和行列式det A :在(1)中用反幂法求矩阵A 的按模最小特征值时,要用到Doolittle 分解方法,在Doolittle 分解完成后得到的两个矩阵分别为L 和U ,则A 的行列式可由U 阵求出,即:det(A)=det(U)。

求得det(A)不为0,因此A 为非奇异的实对称矩阵,则: max 2()scond A λλ=,max λ和s λ分别为模最大特征值与模最小特征值。

2、程序源代码:#include<>#include<>#include<>#define N 501 3e\n",k,k,value_s);}}void main(){float cond;double value_det;printf("Contact me\n");Init_matrix_A(); 3e\n",value_1);printf("λ501=%.13e\n",value_N);value_det=Det_matrix(); 3e\n",value_s);cond=Get_cond_A(); 3e\n",cond);printf("value_det=%.13e\n",value_det); }3、程序运行结果:4、迭代初始向量的选取对计算结果的影响:本次计算实习求矩阵A的具有某些特征的特征值,主要用到的方法是幂法和反幂法,这两种方法从原理上看都是迭代法,因此迭代初始向量的选择对计算结果会产生一定影响,主要表现在收敛速度上。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

xn组成规范化正交组,即(x, x j) ij ),则
1。n
Ax, x x, x
1
对于任意非零向量x Rn
2。1
max
xRn ,x0
Ax, x x, x
.
3。n
min
xRn ,x0
Ax, x x, x
证明:1。设x Rn
由于x1, x2 ,, xn为Rn的一组正交向量,有
X a1x1 a2 x2 an xn
X
2
X
,
X
1 2
a1x1 an xn , a1x1 an xn
a12 a22 ,an2 0.
n
于是
Ax, x x, x
ai 2i
i 1 n
ai 2
i 1
n
n
n ai2
n
i 1 n
ai 2
Ax, x x, xBiblioteka 1 ai 2i1 n
1
ai 2
i 1
i 1
本章主要介绍三种方法:幂法、反幂法、 正交相似变换的方法,来求A的特征值及相应 的特征向量.
w
max
2 1
p p
,
n 1
p p
min,
取2
p n
p,
p
2
p
2
p*时w最小.
这时,2 p* n p* 2 n . 1 p* 1 p* 21 2 n
2.Rayleigh商加速法
计算实对称阵A的主特征值1..
定理2 设A Rnn为实对称阵,1 2 3 n
对应的特征向量满足 xi , x j ij ,应用幂法计算1,
定理3(Gerschgorin’s圆盘定理)
设A
aij
, 则A的每一个特征值必属于下属某个
nn
n
圆盘之中: aii aij i 1,2,, n. j1, ji
证明:设Ax x,I AX 0
记X
x1, x2 ,, xn T
0,
xi
max
1k n
xk
, xi
0
n
由第i个方程 aii xi aij x j及 x j xi 1 j i j1, ji
Av0
n i 1
aiik xi
ik a1x1
n i2
i 1
k
xi
uk
Ak v0 Ak v0
ik a1x1
n i2
i 1
k
xi
ik
a1 x1
n i2
i 1
k
xi
x1 . x1
同理:vk
1k
a1x1
n i2
ai
i 1
k
xi
1k 1a1x1
vk1 Avk Ak1v0
由设xk 组成Rn中一组基,则有 v0 a1x1 a2 x2 an xn a1 0
vk Avk1 Ak v0 a11k x1 a2k2 x2 ankn xn
1k a1x1
n i2
a1
i
1
k
xi
i 1i 1,2,, n
1
当k 时,有
则k的Rayleigh商给出1的较好近似:
n i2
ai
i 1
k 1
xi
k充分大时,vk
1
a1x1
.
a1x1
二、加速方法
1.原点平移法
引进矩阵B A pI ,其中p为参数.
选择合适的p使B的特征值 2 2 ,这里A与B的特 1 1
征值与特征向量关系如下:
A pI vi ivi , Avi i pvi i 1,2,, n. i i pi 1,2,, n.
vk a11k x1, vk1 a11k1x1 a1vk , vk1 Avk 1vk .
即为A的特征值(近似),vk为相应的特征向量.
考虑主特征值1,由于1
vk1 i
vk
i
其中vk i为vk的
第i个分量.
又由 vk1 i
vk
i
1k
的收敛速度,
比值r 2 确定.r越小,收敛速度越快. 1
A与B有相同的特征向量.
对B用幂法得到1,则1 1 p.
关于p的选取,一般应对A的特征有个大致的了解,然
后试选p.
当A的特征值是实数时,怎样选择p使1的计算得以加
速?
设1 2 n1 n ,则不管p如何,A pI的主特 征值为1 p或n p,如计算1及x1,应选择p使 1 p n p ,且使收敛速度的比值:
n
uk
vk vk
则规范化的uk
x1 x1
, 1
vk
.
下面我们说明这种事实:
v1 Au0 Av0 ,
v2 Au1
A2v0 , Av0
vk
Ak v0 , Ak 1v0
u1
v1 v1
Av0 Av0
u2
v2 v2
A2v0
A2v0
.
uk
Ak v0 Ak v0
这种由非零向量v0及矩阵A的乘幂Ak构造向量
序列vk 以计算A的主特征值i及相应特征向量
的方法叫幂法.
定理1 设A Rnn有n个线性无关的向量,若
1 2 r且 1 r1 n
即A为r重实根,且有n个现行无关的特征向量,则
vk
Ak v0
a11k x1
a1kr xr
a x k r 1 r 1 r
aii aij , x j xi aij .
ji
ji
这说明 属于复平面上以 aii 为圆心 aij j 1
为半径的一个圆盘中.
定义1 设A为n阶实对称矩阵,对任意非
零向量x,称Rx Axx,,xx为对应于向量x
的Rayleigh商.
定理4 设A Rnn为对称矩阵(其特征值次
记作1 2 n , 对应得特征向量x1, x2,
数值幂法及反幂法 分析方法
§1 引 言
预备知识:
定理1 定理2
如果i i 1,2,, n是矩阵A的特征值,则有
n
n
1。 i aii trA;
i 1
i 1
2。det A 1 2n ;
设A与B为相似矩阵(即存在非奇异矩阵
使B T 1AT ),则 1。A与B有相同的特征值. 2。若x是B的一个特征向量,则Tx是A的特征向量.
1
ankn xi
1k
r i 1
ai xi
n ai
i r 1
2 1
k
xi
r
vk1 1k ai xi k
i 1
vk1 1vk ,
vk 1 i vk i
1.
注意:应用幂法进行上机计算时,一般将迭代
向量 规范化:
v0 vk
u0 0
Auk1 k
1,2,,
§2幂法与反幂法









一、幂法
设实矩阵A
aij
有一个完全的特征向量组,其特征值
n
为1,2,,n,相应的特征向量为x1, x2 ,, xn.已知A的
主特征值是实根,且满足条件
1 2 3 n .
基本思想:任取初始向量v0 ,由矩阵A构造一向量序列
v1 Av0
v2 Av1 A2v0
相关文档
最新文档