数学实验“矩阵特征值及相应特征向量的Jacobi法,QR法”实验报告(内含matlab程序)

合集下载

基于QR分解迭代求解方阵特征值和特征向量

基于QR分解迭代求解方阵特征值和特征向量

基于QR分解迭代求解方阵特征值和特征向量一、特征值与特征向量求解的难点线性代数的知识告诉我们如果要求一个方阵的特征值,只需要求解如下的特征方程的根即可:但是在具体程序中,如何去求解一个高次的多项式方程的根本身就是一个难点,它的实现甚至要比求得特征值还要复杂。

因此,线性代数中这种用来手算的方法很明显不适合程序实现。

那么,我们该如何去编写程序求解特征值呢?二、QR迭代法求解特征值的原理经过搜集相关资料,已知在计算机编程领域求解特征值一般有两种比较常见的算法,一种是雅可比(Jacobi)迭代法,另一种就是我们要讲的QR迭代法,这两种算法本质上都是去不断迭代,通过逼近的方法去求得特征值。

雅可比方法有一个弊端,就是他只能求解实对称矩阵的特征值,适用面比较窄,但是QR分解迭代法可以求解任意矩阵的特征值,而且实现上更加接近我们线性代数课程的知识,因此下面介绍QR分解迭代法求解特征值的原理。

理论依据:任意一个非奇异矩阵(满秩的方阵)都可以分解为一个正交矩阵和一个上三角矩阵的乘积,且当对角元符号确定时,分解是唯一的。

QR分解是一种迭代方法,迭代格式如下:当基本上收敛到上三角矩阵的时候,迭代完成,此时主对角线元素就是特征值。

特别的:当是实对称矩阵时,是对角阵,就是其标准正交的特征向量矩阵,且有。

那么我们该如何去理解上述原理呢?下面进行简要的推导。

不妨令,对进行QR分解得到:令,很明显,对再进行QR分解:继续令,可以看到,同理,我们不断去进行QR分解,最终就会得到:因此,与拥有相同的特征值。

特别的,当时,有,将记作,那么和就分别是正交的特征向量矩阵和对角线元素为特征值的对角阵。

有了上述理论介绍,我们已经知道了如何去进行QR迭代求特征值,下面马上又有一个问题摆在了我们面前——如何用程序去做QR分解呢?三、QR分解的初等变换法QR分解有三种常用的算法:Gram-Schmidt正交化(线性代数讲授的方法)、初等变换法、Givens 变换法。

《实验8:Jacobi法求实对称矩阵的特征值及特征向量》

《实验8:Jacobi法求实对称矩阵的特征值及特征向量》

实验名称实验8实验地点6A-XXX 实验类型设计实验学时 2 实验日期20 /X/X ★撰写注意:版面格式已设置好(不得更改),填入内容即可。

一、实验目的
1.Jacobi法求实对称矩阵的特征值及特征向量
二、实验内容
1.实验任务
1.Jacobi法求实对称矩阵的特征值及特征向量
2.程序设计
1)数据输入(输入哪些数据、个数、类型、来源、输入方式)
double a[N][N], int n
2)数据存储(输入数据在内存中的存储)
函数
void Jacobi(double a[N][N], int n)
3)数据处理(说明处理步骤。

若不是非常简单,需要绘制流程图)
1.输入要处理的数据进入变量中
2.进行函数处理
3.输出函数处理结果
4)数据输出(贴图:程序运行结果截图。

图幅大小适当,不能太大)
三、实验环境
1.操作系统:WINDOWS 7及以上
2.开发工具:VS 2015
3.实验设备:PC。

矩阵特征值与特征向量的计算-Jacobi方法

矩阵特征值与特征向量的计算-Jacobi方法

所在平面旋转了一个角度 , 其它坐标保持不 变, 称Upq为平面旋转矩阵.
数值分析
基于Upq的相似变换
用Upq对A作正交相似变换得到矩阵 A(1) ,即:
U
T pq
AU
pq
=
A(1)
aaq((p11qp))
= =
a pp a pp
cos2 + aqq sin2 sin2 + aqq cos2
i , j=1
则有 lki→m k = 0成立.
i j
数值分析
UTAU=D 其中 D=diag[λ1, λ2, …, λn],即D的对角元素为 A 的 特征值,对应的U的列向量即为相应的特征向量。
Jacobi方法的思路:通过一系列的旋转变换(正交 变换)把A中非对角线上的非零元变为零 。
数值分析
定义下面的 n 阶正交矩阵:
1
cos
U ( p, q, ) =
素apq; Step 2. 根据 cot 2 = app − a qq ,求出相应的旋转矩
2a pq
阵Upq;
Step 3. 根据公式计算矩阵A(1)的元素;
Step 4. 若
,则停机;否则,令A=A(1)
并返回Step 1.
数值分析
1. 令k=1,R(1)=I,给定矩阵A(=A(1)),收敛条件ε
=
a(1) qp
=
1 2 (aqq

app )sin 2
+
a pq
cos 2
矩阵A(a1i()j1的) =第a(j1ip) 行= a,ij ,i第, j p列p, q和第q行,第q列的元素
发生了变化,其余元素不变。 且A(1)任是实对称

数学实验“矩阵特征值及相应特征向量的Jacobi法,QR法”实验报告(内含matlab程序)

数学实验“矩阵特征值及相应特征向量的Jacobi法,QR法”实验报告(内含matlab程序)

数学实验“矩阵特征值及相应特征向量的Jacobi法,QR法”实验报告(内含matlab程序)西京学院数学软件实验任务书课程名称数学软件实验班级数0901 学号0912020107 姓名李亚强实验课题矩阵特征值及相应特征向量的Jacobi法,QR法实验目的熟悉矩阵特征值及相应特征向量的Jacobi法,QR法运用Matlab/C/C++/Java/Maple/Mathematica等其中实验要求一种语言完成实验内容矩阵特征值及相应特征向量的Jacobi法,QR法成绩教师实验十三实验报告一、实验名称:矩阵特征值及相应特征向量的Jacobi法,QR法。

二、实验目的:熟悉矩阵特征值及相应特征向量的Jacobi法,QR 法。

三、实验要求:运用Matlab/C/C++/Java/Maple/Mathematica 等其中一种语言完成程序设计。

四、实验内容:%矩阵特征值及相应特征向量的Jacobi法function [D,R]=Jacobi(A,eps)if nargin==2eps=1.0e-5;endn=length(A);R=eye(n);while 1Amax=0;for l=1:n-1for k=l+1:nif abs(A(l,k))>AmaxAmax=abs(A(l,k));i=l;j=k;endendendif Amax<eps< p="">break;endd=(A(i,i)-A(j,j))/(2*A(i,j));if abs(d)<1e-10t=1;elset=sign(d)/(abs(d)+sqrt(d^2+1));endc=1/sqrt(t^2+1);s=c*t;for l=1:nif l==iAii=A(i,i)*c^2+A(j,j)*s^2+2*A(i,j)*s*c; Ajj=A(i,i)*s^2+A(j,j)*c^2-2*A(i,j)*s*c;A(i,j)=(A(j,j)-A(i,i))*s*c+A(i,j)*(c^2-s^2);A(j,i)=A(i,j);A(i,i)=Aii;A(j,j)=Ajj;elseif l~=jAil=A(i,l)*c+A(j,l)*s;Ajl=-A(i,l)*s+A(j,l)*c;A(i,l)=Ail;A(l,i)=Ail;A(j,l)=Ajl;A(l,j)=Ajl;Rli=R(l,i)*c+R(l,j)*s;Rlj=-R(l,i)*s+R(l,j)*c;R(l,i)=Rli;R(l,j)=Rlj;endendD=diag(diag(A));%矩阵特征值及相应特征向量的QR法function l=qrtz(A,M)for(i=1:M)[q,r]=qr(A);A=r*q;l=diag(A);end五、实验结果:>> A=[3 4 3;1 2 4;7 6 2];>> esp=10^(-6);>> [D,R]=Jacobi(A,eps)D =9.6873 0 00 -2.2229 00 0 -0.4644R =0.5970 -0.2958 -0.74570.5922 0.7895 0.16090.5411 -0.5377 0.6465>> A=[3 4 3;1 2 4;7 6 2];>> M=10^2;>> l=qrtz(A,M)10.3687 -2.6373 -0.7314 </eps<>。

矩阵特征值与特征向量的求法

矩阵特征值与特征向量的求法

矩阵特征值与特征向量的求法一、矩阵特征值与特征向量的定义矩阵特征值(eigenvalue)是指一个矩阵在某个非零向量上的线性变换结果等于该向量的常数倍,这个常数就是该矩阵的特征值。

而对应于每个特征值,都有一个非零向量与之对应,这个向量就是该矩阵的特征向量(eigenvector)。

二、求解矩阵特征值与特征向量的方法1. 特征多项式法通过求解矩阵A减去λI(其中λ为待求解的特征值,I为单位矩阵)的行列式det(A-λI)=0来求解其特征值。

然后将每个特征值代入到(A-λI)x=0中,即可求得对应的特征向量x。

2. 幂法幂法是一种迭代方法,通过不断地将A作用于一个初始向量x上,并将结果归一化,最终得到收敛到最大(或最小)特征值所对应的特征向量。

具体步骤如下:(1) 选取任意一个非零初始向量x;(2) 将Ax除以x中最大元素得到新的向量y=A*x/max(x);(3) 将y归一化得到新的向量x=y/||y||;(4) 重复步骤2-3,直到收敛。

3. QR分解法QR分解是将矩阵A分解为Q和R两个矩阵的乘积,其中Q是正交矩阵(即Q^T*Q=I),R是上三角矩阵。

通过不断地对A进行QR分解,并将得到的Q和R相乘,最终得到一个上三角矩阵T。

T的对角线元素就是A的特征值,而对应于每个特征值,都可以通过反推出来QR分解中的Q所对应的特征向量。

4. Jacobi方法Jacobi方法也是一种迭代方法,通过不断地施加相似变换将A转化为对角矩阵D。

具体步骤如下:(1) 选取任意一个非零初始矩阵B=A;(2) 找到B中绝对值最大的非对角元素b(i,j),记其位置为(i,j);(3) 构造Givens旋转矩阵G(i,j,k),使其作用于B上可以消去b(i,j),即B=G^T*B*G;(4) 重复步骤2-3,直到所有非对角元素均趋近于0。

三、总结以上介绍了求解矩阵特征值与特征向量的四种方法:特征多项式法、幂法、QR分解法和Jacobi方法。

实验七矩阵特征值计算实验

实验七矩阵特征值计算实验

矩阵特征值计算实验专业:数学与应用数学 年级:09级 班级:AS09101 学号:AS0910136 姓名:张书敏一、 实验目的1.通过这个实验,学会使用幂法,反幂法,jacobi 方法,QR 方法求解矩阵的特征值和特征向量;2.理解求矩阵特征值和特征向量的幂法、反幂法、Jacobi 方法、QR 方法的构造和求解过程,学习计算机编程技术。

二、 实验题目8.1 编制幂法的MA TLAB 程序,计算下列矩阵按模最大特征值和相应的特征向量,(2)31013-3034A -⎛⎫ ⎪=- ⎪ ⎪-⎝⎭8.2已知矩阵⎪⎪⎪⎭⎫ ⎝⎛=111132126A有一个近似的特征值-6.42λ≈,用反幂法编制MA TLAB 程序计算相应的特征向量,并改进特征值的精度.8.3 用Jacobi 方法编制MA TLAB 程序,计算下列矩阵的全部特征值:(2)B= 4-1-14-1-14-1-14⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦8.4 用基本QR 方法编制MATLAB 程序,计算下列矩阵的全部特征值:(2) 0122230130121230B ⎛⎫ ⎪ ⎪= ⎪ ⎪⎝⎭三、 实验原理1.幂法:步1 输入矩阵A,初始向量y0,误差项ε,最大迭代次数N.步2 置k:=1,u:=0,x0=y0/∞||0||y ;步3 计算;1-=k k Ax y步4 计算|][|max |][|1i k ni r k y y ≤≤= 其中i k y ][表示向量k y 的第i 个分量,并置k k k r k k m y x y m /:,][:==步5 若|k m -u|<ε, 停算,输出k m ,k x ;否则,转步6;步6 若k<N,置k:=k+1,u:=k m ,转步3;否则,输出计算失败;2.反幂法:步1 输入矩阵A,初始向量x0,近似值a,误差项ε,最大迭代次数N.步2 置k:=1,u:=1;步3 作列主元LU 分解P(A-aI)=LU;步4 计算;][:|,][|max |][|1r k i k ni r k x m x x ==≤≤ 步5 计算x 的新值:y=x/m,Lz=Py,Ux=z;步6 若|11|u m -<ε, 则置x ,1:,输出λλma +=,停算,否则,转步7; 步7 若k<N,置k:=k+1,u:=m ,转步3;否则,输出计算失败;3.QR 方法步骤:(1) 输入矩阵A;(2) 初始化:A1为A 的拟上三角形矩阵;(3) 迭代过程:对于k=1,2,….Ak=QkRk(QR 分解); Ak+1=Qk^TAkQk=RkQk(正交相似变换)四、 实验内容8.1 幂法1.1实验步骤:打开matlab软件,新建一个名为mapower.m的M文件,编写程序(见1.2实验程序如下),运行程序,记录结果。

数值分析QR方法求矩阵特征值和特征向量

数值分析QR方法求矩阵特征值和特征向量

四.实验代码:function [H,B]=Hessenberg(A) n=length(A);B=eye(n);for k=1:n-2X=zeros(n-k,1);H=eye(n);for i=1:n-kX(i)=A(i+k,k);enda=max(abs(X));if a==0.0breakendX=X/a;c=X(1);b1=sqrt(sum(X.^2));if X(1)>=0b1=-b1;endX(1)=X(1)-b1;b=b1^2-b1*c;H0=eye(n-k)-X*X'/b;for i=1:n-kfor j=1:n-kH(i+k,j+k)=H0(i,j);end endA=H*A*H;B=B*H;endH=A;一.实验题目:QR方法求矩阵的特征和特征向量二.设计目的:学会利用镜面变换进行矩阵的QR分解及利用将幂法求特征值和特征向量,熟悉Matlab编程环境。

三.设计原理:利用镜像变换将A相似变换为Hessenberg B矩阵。

记录变换矩阵。

运用Householder矩阵进行QR分解,QR方法为:B1=BB1=Q1R1B2=R1Q1....Bm=QmRmBm+1=RmQmBm+1与Bm相似,从而特征值相等。

再利用原点位移的反幂法求B(或A)的特征向量。

反幂法用来计算矩阵按模最小的特征值及其特征向量,也可用来计算对应与一个给定近似特征值的特征向量。

设A∈R n×n为非奇异矩阵,A的特征值依次记为|λ1|≥|λ2|≥|λ3|≥…≥|λn|,相应的特征向量为x1 ,x2,…,x n,则A-1的特征值为|1/λn|≥|1/λn-1|≥…≥|1/λ1 | ,相应的特征向量为x n ,x.所以计算A的按模最小的特征值λn的问题就是计算n-1,…,x1A-1的按模最大的特征值问题。

对于A-1应用幂法迭代(称为反幂法),可求得矩阵A-1的主特征值1/λn,从而求得A的按模最小的特征值λn。

数学实验“矩阵主特征值及相应特征向量的乘幂法,原点平移法,Rayleigh商加速法”实验报告(内含matlab程序)

数学实验“矩阵主特征值及相应特征向量的乘幂法,原点平移法,Rayleigh商加速法”实验报告(内含matlab程序)
eps = 1.0e-6; end v = x0; M = 5000; m = 0; l = 0;பைடு நூலகம்for(k=1:M)
y = A*v; m = max(y); v = y/m; if(abs(m - l)<eps)
l = m;
-1-
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,通力根1保过据护管生高线产中敷工资设艺料技高试术中卷0资不配料仅置试可技卷以术要解是求决指,吊机对顶组电层在气配进设置行备不继进规电行范保空高护载中高与资中带料资负试料荷卷试下问卷高题总中2体2资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况1卷中下安,与全要过,加度并强工且看作尽护下可1都关能可于地以管缩正路小常高故工中障作资高;料中对试资于卷料继连试电接卷保管破护口坏进处范行理围整高,核中或对资者定料对值试某,卷些审弯异核扁常与度高校固中对定资图盒料纸位试,置卷编.工保写况护复进层杂行防设自腐备动跨与处接装理地置,线高尤弯中其曲资要半料避径试免标卷错高调误等试高,方中要案资求,料技编试术写5、卷交重电保底要气护。设设装管备备置线4高、调动敷中电试作设资气高,技料课中并3术试、件资且中卷管中料拒包试路调试绝含验敷试卷动线方设技作槽案技术,、以术来管及避架系免等统不多启必项动要方高式案中,;资为对料解整试决套卷高启突中动然语过停文程机电中。气高因课中此件资,中料电管试力壁卷高薄电中、气资接设料口备试不进卷严行保等调护问试装题工置,作调合并试理且技利进术用行,管过要线关求敷运电设行力技高保术中护。资装线料置缆试做敷卷到设技准原术确则指灵:导活在。。分对对线于于盒调差处试动,过保当程护不中装同高置电中高压资中回料资路试料交卷试叉技卷时术调,问试应题技采,术用作是金为指属调发隔试电板人机进员一行,变隔需压开要器处在组理事在;前发同掌生一握内线图部槽纸故内资障,料时强、,电设需回备要路制进须造行同厂外时家部切出电断具源习高高题中中电资资源料料,试试线卷卷缆试切敷验除设报从完告而毕与采,相用要关高进技中行术资检资料查料试和,卷检并主测且要处了保理解护。现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

数学实验—特征值与特征向量的MATLAB实验

数学实验—特征值与特征向量的MATLAB实验

[1/3 -2 1]
[-2/3 1 0]
[1
0 1]
数学实验——特征值与特征向量的MATLAB实验
3 2 1
例1
求矩阵
A
2
2
2
的特征值与特征向量.
3 6 1
D= [-4 [0 [0
0 0] 2 0] 0 2]
数学实验——特征值与特征向量的MATLAB实验
例 2 判断下列矩阵是否可对角化.若可对角化,求出可逆矩阵 P,使 P1AP 或 P1BP 为对角矩阵.
D= [1 0 0] [0 1 0] [0 0 1]
数学实验——特征值与特征向量的MATLAB实验
在 MATLAB 命令窗口输入:>>rank(P) 运行程序后输出: ans= 1 这说明矩阵 A 有 1 个线性无关的特征向量,即特征向量的个数小于特征值的重数,所以矩阵 A 不能对角化.
数学实验——特征值与特征向量的MATLAB实验
命令 d=eig(A) [P,D]=eig(A) format rat
功能 输入 n 阶矩阵 A,运行后以向量的形式输出矩阵 A 的特征值赋给 d 输入 n 阶矩阵 A,运行后输出 A 的特征向量矩阵 P 和由特征值组成的 对角矩阵 D 数据有理化,一般放在最前面
inv(A)
输入矩阵 A,运行后输出 A 的逆矩阵 A1
(2)在 MATLAB 命令窗口输入:>>format rat
>>B=sym([2,-2,0;-2,1,-2;0,-2,0]);
>>[P,D]=eig(B)
运行程序后输出:P= [-1 1/2 2]
[-1/2 1 -2]
[1 1
1]
D= [1 0 0]

jacobi方法求特征值和特征向量 例题

jacobi方法求特征值和特征向量 例题

一、引言Jacobi方法是一种用于计算矩阵特征值和特征向量的迭代数值方法。

它是数值线性代数中的重要算法之一,广泛应用于科学计算、工程技术和金融领域。

本文将通过一个例题来介绍Jacobi方法的原理和求解过程,并分析其在实际问题中的应用。

二、Jacobi方法的原理Jacobi方法是一种通过迭代对矩阵进行相似变换,使得原矩阵逐步转化为对角矩阵的方法。

通过数值迭代,可以逐步逼近矩阵的特征值和对应的特征向量。

其基本原理如下:1. 对称矩阵特征值问题:对于对称矩阵A,存在一个正交矩阵P,使得P^T * A * P = D,其中D为对角矩阵,其对角线上的元素为A的特征值。

所以我们可以通过迭代找到P,使得P逼近正交矩阵,从而逼近A的特征值和特征向量。

2. Jacobi迭代:Jacobi方法的基本思想是通过正交相似变换,逐步将矩阵对角化。

具体来说,对于矩阵A,找到一个旋转矩阵G,使得A' = G^T * A * G为对角矩阵,然后递归地对A'进行相似变换,直到达到精度要求。

三、Jacobi方法求解特征值和特征向量的例题考虑以下矩阵A:A = [[4, -2, 2],[-2, 5, -1],[2, -1, 3]]我们将通过Jacobi方法来计算矩阵A的特征值和特征向量。

1. 对称化矩阵我们需要对矩阵A进行对称化处理。

对称化的思路是找到正交矩阵P,使得P^T * A * P = D,其中D为对角矩阵。

我们可以通过迭代找到逼近P的矩阵序列,直到达到一定的精度。

2. Jacobi迭代在Jacobi迭代的过程中,我们需要找到一个旋转矩阵G,使得A' =G^T * A * G为对角矩阵。

具体的迭代过程是:找到矩阵A中绝对值最大的非对角元素a[i][j],然后构造一个旋转矩阵G,将a[i][j]置零。

通过迭代地对A'进行相似变换,最终使得A'的非对角元素逼近零,即达到对角化的目的。

3. 计算特征值和特征向量经过一定次数的Jacobi迭代后,得到了对称矩阵A的对角化矩阵D和正交矩阵P。

线性代数实验报告

线性代数实验报告

线性代数实验报告一、实验目的线性代数是一门重要的数学基础课程,它在工程、科学、计算机等领域都有着广泛的应用。

本次实验的目的是通过实际操作和计算,加深对线性代数基本概念和方法的理解,提高运用线性代数知识解决实际问题的能力。

二、实验环境本次实验使用了软件名称软件进行计算和绘图。

三、实验内容(一)矩阵的运算1、矩阵的加法和减法给定两个矩阵 A 和 B,计算它们的和 A + B 以及差 A B。

观察运算结果,验证矩阵加法和减法的规则。

2、矩阵的乘法给定两个矩阵 C 和 D,其中 C 的列数等于 D 的行数,计算它们的乘积 CD。

分析乘法运算的结果,理解矩阵乘法的意义和性质。

(二)行列式的计算1、二阶和三阶行列式的计算手动计算二阶和三阶行列式的值,熟悉行列式的展开法则。

使用软件验证计算结果的正确性。

2、高阶行列式的计算选取一个四阶或更高阶的行列式,利用软件计算其值。

观察行列式的值与矩阵元素之间的关系。

(三)线性方程组的求解1、用高斯消元法求解线性方程组给定一个线性方程组,将其增广矩阵通过初等行变换化为行阶梯形矩阵。

求解方程组的解,并验证解的正确性。

2、用矩阵的逆求解线性方程组对于系数矩阵可逆的线性方程组,计算系数矩阵的逆矩阵。

通过逆矩阵求解方程组,并与高斯消元法的结果进行比较。

(四)向量组的线性相关性1、判断向量组的线性相关性给定一组向量,计算它们的线性组合是否为零向量。

根据计算结果判断向量组的线性相关性。

2、求向量组的极大线性无关组对于给定的向量组,通过初等行变换找出极大线性无关组。

(五)特征值和特征向量的计算1、计算矩阵的特征值和特征向量给定一个矩阵,计算其特征值和对应的特征向量。

验证特征值和特征向量的定义和性质。

2、利用特征值和特征向量进行矩阵对角化对于可对角化的矩阵,将其化为对角矩阵。

四、实验步骤(一)矩阵的运算1、首先在软件中输入矩阵 A 和 B 的元素值。

2、然后使用软件提供的矩阵加法和减法功能,计算 A + B 和 A B 的结果。

用QR算法求矩阵的特征值

用QR算法求矩阵的特征值

一、实验名称:用QR 算法求矩阵的特征值二、实验目的:1、通过实验进一步熟悉掌握求矩阵特征值的QR 方法及原理。

2、理解QR 方法的计算流程。

3、能够编程实现QR 方法。

三、实验内容:给定矩阵 ⎪⎪⎪⎭⎫ ⎝⎛=111132126A , ⎪⎪⎪⎪⎪⎪⎭⎫⎝⎛=0100098200876307654465432H ,采用QR 方法计算A 和H 矩阵的全部特征值。

四、实验要求:(1) 根据QR 算法原理编写程序求矩阵A 及矩阵H 的全部特征值(要求误差<105-)。

(2) 直接用MATLAB 的内部函数eig 求矩阵A 及矩阵H 的全部特征值,并与(1)的结果比较。

五、QR 方法计算矩阵特征值的程序: function[namda,time,data_na]=qr_tz(A,tol) if nargin==1; tol=1e-5; end wucha=1; time=0;while (wucha>tol)&(time<500) [q,r]=qr(A); A1=r*q; tz0=diag(A1); tz1=diag(A); wucha=norm(tz0-tz1);A=A1; time=time+1; data_na(time,:)=tz1; end namda=tz1; disp(‘特征值为’) namdadisp(‘第一个特征在值’) timen1=length(data_na); n2=(1:n1)’; temp1=[n2,data_na]; subplot(2,2,1:2)plot(date_na(:,1))title(‘迭代次数为’) gridsubplot(2,2,3)plot(data-na(:,2))title(‘第二个特征值’)gridsubplot(2,2,4)plot(data-na(:,3))title(‘第三个特征值’) grid六、实验结果:>> A=[6,2,1;2,3,1;1,1,1];[namda,time,data_na]=qr_tz(A,1e-5);特征值为namda =迭代次数为time =6图 1>> A=[6,2,1;2,3,1;1,1,1];[V,D]=eig(A,'nobalance'), V =D =0 00 00 0>>A=[2,3,4,5,6;4,4,5,6,7;0,3,6,7,8;0,0,2,8,9;0,0,0,1,0];[namda,time,data_na]=qr_t z(A,1e-5);特征值为namda =迭代次数为time =22图 2>>A=[2,3,4,5,6;4,4,5,6,7;0,3,6,7,8;0,0,2,8,9;0,0,0,1,0];[V,D]=eig(A,'nobalance'), V =D =0 0 0 00 00 0 00 0 00 00 0表1 用两种方法求得矩阵A的全部特征值表2 用两种方法求得矩阵H的全部特征值七、实验结果分析:从图1和图2中可以看出在迭代前几次可能会有一些波动,但逐渐趋于平稳,并且收敛速度快,算法稳定。

qr迭代法求特征值特征向量

qr迭代法求特征值特征向量

qr迭代法求特征值特征向量1. 介绍qr迭代法是一种数值计算方法,用于求解矩阵的特征值和特征向量。

特征值和特征向量是矩阵在线性代数中的重要概念,它们可以帮助我们理解矩阵的性质和行为。

qr迭代法是一种迭代算法,通过不断迭代矩阵的qr分解来逼近矩阵的特征值和特征向量。

2. qr分解qr分解是将一个矩阵分解为一个正交矩阵和一个上三角矩阵的乘积。

qr分解可以用于求解线性方程组、最小二乘问题等。

对于一个n阶矩阵A,它的qr分解可以表示为A=QR,其中Q是一个n阶正交矩阵,R是一个上三角矩阵。

3. qr迭代法的基本思想qr迭代法的基本思想是通过不断迭代矩阵的qr分解,使得矩阵收敛到一个上三角矩阵。

具体步骤如下:1.初始化一个n阶矩阵A和一个单位矩阵Q。

2.对矩阵A进行qr分解,得到A=QR。

3.计算新的矩阵A’ = RQ。

4.重复步骤2和步骤3,直到矩阵A’收敛到一个上三角矩阵。

5.上三角矩阵的对角线元素就是矩阵A的特征值的近似值。

4. qr迭代法的收敛性qr迭代法的收敛性是保证qr迭代法能够得到矩阵的特征值的一个重要性质。

qr迭代法的收敛性可以通过矩阵的谱半径来判断。

谱半径是矩阵所有特征值的绝对值的最大值。

如果矩阵的谱半径小于1,那么qr迭代法是收敛的。

5. qr迭代法的算法实现qr迭代法的算法可以通过以下步骤实现:1.初始化一个n阶矩阵A和一个单位矩阵Q。

2.设置一个收敛条件,比如矩阵的谱半径小于某个阈值。

3.while 矩阵的谱半径大于阈值:–对矩阵A进行qr分解,得到A=QR。

–计算新的矩阵A’ = RQ。

–更新矩阵A为A’。

4.上三角矩阵的对角线元素就是矩阵A的特征值的近似值。

6. qr迭代法的应用qr迭代法在科学计算和工程应用中有广泛的应用。

它可以用于求解大型稀疏矩阵的特征值和特征向量,求解线性方程组,计算矩阵的条件数等。

qr迭代法的收敛速度较快,精度较高,因此在实际应用中得到了广泛的应用。

7. 总结qr迭代法是一种求解矩阵特征值和特征向量的有效方法。

数学实验报告线性代数

数学实验报告线性代数

数学实验报告(线性代数) 数学实验报告(线性代数)一、实验目的本次实验旨在通过对线性代数基本概念的探究,熟悉并掌握矩阵运算、向量空间、特征值与特征向量等核心概念,培养我们的数学思维与解决实际问题的能力。

二、实验内容1.矩阵运算我们首先通过Excel或其他数学软件,进行矩阵的加减法、乘法、转置等基本运算,并计算矩阵的行列式、逆矩阵等。

通过这些运算,我们深入理解矩阵这一基本概念以及其在线性代数中的重要性。

2.向量空间我们对向量空间进行深入的研究,包括向量的加减法、数乘等基本运算,以及向量空间的各种性质,如封闭性、结合律、分配律等。

通过具体的计算和证明,我们对向量空间有了更深入的理解。

3.特征值与特征向量在本次实验中,我们通过计算矩阵的特征多项式,找到矩阵的特征值,并求出相应的特征向量。

我们通过这种方法,理解了特征值和特征向量的物理意义,也掌握了求解特征值和特征向量的基本方法。

三、实验过程记录实验开始时间:XXXX年XX月XX日实验地点:数学实验室参与人员:小组成员1、小组成员2、小组成员3实验具体过程:1.矩阵运算:我们利用Excel软件进行矩阵的加减法、乘法等基本运算,通过具体的计算,我们发现矩阵的乘法并不满足交换律,而且矩阵的乘积的行列式并不等于原来两个矩阵行列式的乘积。

这让我们更深入的理解了矩阵乘法的规则和其意义。

2.向量空间:我们首先对向量的加减法、数乘等基本运算进行计算,以深入理解向量空间的基本性质。

接着我们对向量空间的封闭性、结合律、分配律等进行了证明。

通过这一系列的操作,我们明白了向量空间是一个具有丰富性质的数学结构。

3.特征值与特征向量:首先我们计算了矩阵的特征多项式,然后用求根公式求出了特征值。

接着我们根据定义求出了相应的特征向量。

在这个过程中,我们明白了特征值和特征向量的物理意义,也掌握了求解特征值和特征向量的基本方法。

实验结束时间:XXXX年XX月XX日四、实验总结及感想通过这次实验,我们更深入地理解了线性代数的基本概念和性质。

用Jacobi方法求正交矩阵的特征值与特征向量

用Jacobi方法求正交矩阵的特征值与特征向量

用Jacobi方法求正交矩阵的特征值与特征向量PROGRAM TEZHENG_Jacobi* 用Jacobi方法求正交矩阵的特征值与特征向量* 就是用平面旋转矩阵U不断对矩阵A作正交相似变换把A化为对角矩阵, * 从而求出A的特征值与特征向量** Made by ZhaoZunsheng,2005.12.20*IMPLICIT NONEINTEGER NMAX,N,I,J,P,QPARAMETER(NMAX=50)REAL A(NMAX,NMAX),AMAX,TEMP,ZEMP,COO,SII,CO,SI,APP,AQQ,APQ,API,AQI REAL R(NMAX,NMAX),RIP,RIQCHARACTER NAME*12,NAMEO*12,CHR*1* 从文件中读入实对称矩阵AWRITE(*,*)'输入实对称矩阵维数n(n<51):'READ(*,*) NWRITE(*,*)'输入矩阵文件:'READ(*,*) NAMEOPEN(6,FILE=NAME)DO I=1,NREAD(6,*) (A(I,J),J=1,I)DO J=1,IA(J,I)=A(I,J)ENDDOENDDOCLOSE(6)* R矩阵存放正交变换矩阵U,在这先初始化,即单位矩阵DO I=1,NDO J=1,NR(I,J)=0ENDDOR(I,I)=1ENDDO* 在矩阵A的非主对角线元素中,找出按模最大的元素Apq 100 AMAX=ABS(A(2,1))P=2Q=1DO I=2,NDO J=1,I-1IF(ABS(A(I,J)).GT.AMAX) THENAMAX=ABS(A(I,J))P=IQ=JENDIFENDDOENDDO* do i=1,n* WRITE(*,*)(A(I,J),J=1,N)* enddo* 当非主对角线元素化为0,即小于给定精度时,输出特征值与特征向量IF(AMAX.LE.1.0E-7) THENWRITE(*,*) 'A的特征值为:'WRITE(*,*) (A(I,I),I=1,N)WRITE(*,*) 'A的特征向量为:'WRITE(*,*) ' X1 X2 X3 ...:'DO I=1,NWRITE(*,*)(R(I,J),J=1,N)ENDDOWRITE(*,*) '是否将结果存入文件(Y/N)?'READ(*,*) CHRIF(CHR.EQ.'Y'.OR.CHR.EQ.'y') THENWRITE(*,*) '输入文件名(小于12字符):'READ(*,*) NAMEOOPEN(8,FILE=NAMEO)WRITE(8,*) 'A的特征值为:'WRITE(8,*) (A(I,I),I=1,N)WRITE(8,*) 'A的特征向量为:'WRITE(8,*) ' X1 X2 X3 ...:'DO I=1,NWRITE(8,*)(R(I,J),J=1,N)ENDDOCLOSE(8)ENDIFSTOPENDIF* 开始准备计算平面旋转矩阵UTEMP=2*A(P,Q)/(A(P,P)-A(Q,Q)+1.0e-30) ZEMP=(A(P,P)-A(Q,Q))/(2*A(P,Q))IF(ABS(TEMP).LT.1.0) THENCOO=(1+TEMP**2)**(-0.5)SII=TEMP*(1+TEMP**2)**(-0.5)ELSECOO=ABS(ZEMP)*(1+ZEMP**2)**(-0.5)SII=SIGN(1.0,ZEMP)*(1+ZEMP**2)**(-0.5) ENDIFCO=SQRT(0.5*(1+COO))SI=SII/(2*CO)* 计算平面旋转矩阵UDO I=1,NRIP=R(I,P)*CO+R(I,Q)*SIRIQ=-R(I,P)*SI+R(I,Q)*COR(I,P)=RIPR(I,Q)=RIQENDDO* 对A进行变换APP=A(P,P)*CO**2+A(Q,Q)*SI**2+2*A(P,Q)*CO*SI AQQ=A(P,P)*SI**2+A(Q,Q)*CO**2-2*A(P,Q)*CO*SI APQ=0.5*(A(Q,Q)-A(P,P))*SII+A(P,Q)*COOA(P,P)=APPA(Q,Q)=AQQA(P,Q)=APQA(Q,P)=A(P,Q)DO I=1,NIF(I.EQ.P.OR.I.EQ.Q) THENELSEAPI=A(P,I)*CO+A(Q,I)*SIAQI=-A(P,I)*SI+A(Q,I)*COA(P,I)=APIA(Q,I)=AQIA(I,P)=A(P,I)A(I,Q)=A(Q,I)ENDIFENDDOGOTO 100END。

数学实验 Mathematic实验十四 矩阵的特征值与特征向量

数学实验  Mathematic实验十四 矩阵的特征值与特征向量

天水师范学院数学与统计学院实验报告实验项目名称 所属课程名称 实验类型 实验日期矩阵的特征值与特征向量 数学实验 线性代数 2011.12.14班级 学号 姓名 成绩一、实验概述: 【实验目的】学习掌握利用 Mathematica(4.0 以上版本)命令求方阵的特征值 和特征向量;利用特征值求二次型的标准形.【实验原理】(1)命令 Eigenvalues[M]给出方阵 M 的特征值. (2)命令 Eigenvectors[M]给出方阵 M 的特征向量.但有时输出中 含有零向量其中的非零向量才是真正的特征向量. (3)命令 Eigensystem[M]给出方阵 M 的特征值和特征向量.同样有 时输出的向量中含有零向量. (4)调用“线性代数.向量组正交化”软件包命令是<<LinearAlgebra\Orthogonalization.m 现在对向量组施行正交单位化的命令 GramSchmidt 就可以使用 了.命令 GramSchmidt[A]给出与矩阵 A 的行向量组等价的且已正交化 的单位向量组.【实验环境】Mathematic 4二、实验内容: 【实验方案】1.求方阵的特征值与特征向量; 2.矩阵的相似变换;【实验过程】(实验步骤、记录、数据、分析)1.求方阵的特征值与特征向量1用 命 令 Eigenvalues[M] 立 即 求 得 方 阵 M 的 特 征 值 命 令Eigenvectors[M]立即求得方阵 M 的特征向量命令 Eigensystem[M]立即求得方阵的特征值和特征向量.例 14.11 2求方阵M 2 31 333 6 的特征值和特征向量.Clear[M];M={{1,2,3},{2,1,3},{3,3,6}};Eigenvalues[M]Eigenvectors[M]Eigensystem[M]例 14.21 31 31 2 M1 511 3 求方阵 612 的特征值和特征向量.(*Example14.2*)G={{1/3,1/3,-1/2}{1/5,1,-1/3}{6,1,-2}};Eigensystem[G]例 14.33 0 0A 1t3 已 知 2 是 方 阵 1 2 3 的 特 征 值 , 求t.(*Example14.3*)Clear[Aq];A={{2-3,0,0}{-1,2-t,-3}{-1,-2,2-3}};2q=Det[A];,t] 2 1 2 例 14.4已知x(1,1,1)是方阵A= 5 1a b32 的一个特征向量,求参数 a,b 及特征向量x所属的特征值.(*Example14.4*)设特征值为t,输入Clear[A,B,v,a,b,t];A={{t-2,1,-2},{-5,t-a,-3},{1,-b,t+2}};v={1,1,-1};B=A.v;,,,{a,b,t}]2.矩阵的相似变换若 n 阶方阵 A 有 n 个线性无关的特征向量,则 A 与对角阵相似.实对称阵总与对角阵相似,且存在正交阵 P,使 P1AP 为对角阵.命令EigenVectors[A]与 Eigensystem[A]给出还未经过正交化和单位化的特征向量.因此要对特征向量进行正交化和单位化,所用的命令是GramSchmidt[ ].不过首先要输入调用软件包<<LinearAlgebra\Orthogonalization.m 的命令.例 14.54 1 22设方阵 A=  2 212 2 ,求一可逆阵 P,使 P-1AP 为对角阵.Clear[A,p];A={{4,1,1},{2,2,2},{2,2,2}};3Eigenvalues[A];p=Eigenvectors[A]//Transpose为了验证 P-1AP 为对角阵,输入Inverse[p].A.p解法二 直接用 JardanDecomposition[A]jor=JordanDecomposition[A]jor[[1]]jor[[2]]例 14.6方阵A  1 201 是否与对角阵相似?Clear[A];A={{1,0},{2,1}};Eigensystem[A] 2 0 0  1 0 0 例 14.7A 2已知方阵  3x 12 1 与B 0 02 00 y  相似,求x,y.Clear[x,v];v={{4,0,0},{-2,2-x,-2},{-3,-1,1}};,x]40 1 1 0A 1010 1 1 0 0例 14.8 对实对称矩阵 0002 ,求一个正交阵P,使P-1AP 为对角阵.<<LinearAlgebra\Orthogonalization.mClear[a,p];A={{0,1,1,0},{1,0,1,0},{1,1,0,0},{0,0,0,2}};Eigenvalues[A]Eigenvectors[A]p=GramSchmidt[Eigenvectors[A]]//Transpose例 14.9 求一个正交变换,化二次型 f  2x1x2  2x1x3  2x2 x3  2x42 为标准型 二次型的矩阵为0 1 1 0A 1010 1 1 0 0 0002 f=Table[x[j],{j,4}].A.Table[x[j],{j,4}]//Simplify【实验结论】(结果)根据程序的编辑,实验很成功。

jacobi迭代法求复矩阵特征值和特征向量

jacobi迭代法求复矩阵特征值和特征向量

jacobi迭代法求复矩阵特征值和特征向量Jacobi迭代法是一种经典的求解复矩阵特征值和特征向量的方法。

在数值分析领域,特征值和特征向量的求解是一个十分重要且常见的问题。

它不仅在理论上有重要意义,还在实际应用中有着广泛的应用,比如在物理、工程、金融等领域。

Jacobi迭代法的提出,极大地简化了这个复杂问题的求解过程,为研究人员和工程师提供了一个高效、可靠的数值计算工具。

我们需要了解什么是特征值和特征向量。

对于一个n阶方阵A,如果存在数λ和一个非零向量x,使得Ax=λx成立,则称λ是A的特征值,x是对应于特征值λ的特征向量。

特征值和特征向量的求解十分重要,因为它们包含了矩阵A的重要特性和信息,对于矩阵的对角化、矩阵的稳定性、矩阵的特征分解等问题有着重要的作用。

接下来,让我们来介绍Jacobi迭代法的基本思想和步骤。

Jacobi迭代法的核心思想是通过一系列相似变换,将原始矩阵对角化,从而得到其特征值和特征向量。

具体步骤如下:1. 我们选择一个n阶方阵A,将其初始化为对角矩阵D,将初始的特征向量矩阵初始化为单位矩阵I。

2. 我们选择两个不同的下标i和j(1≤i,j≤n,i≠j),使得矩阵A的元素aij为非零元素,即aij≠0。

这两个下标表示我们要进行的相似变换的维度。

3. 我们构造一个旋转矩阵P,使得通过P的相似变换,可以将aij对应的元素变为0。

这一步是Jacobi迭代法的核心步骤,旋转矩阵P的构造涉及到对称双射矩阵的变换和特征值的迭代计算。

4. 我们通过P的相似变换,更新矩阵A和特征向量矩阵I,得到新的对角矩阵D和新的特征向量矩阵。

5. 我们检查新得到的对角矩阵D的非对角线元素是否足够小,如果满足要求,则停止迭代,否则继续进行第2步的操作。

通过这样一系列的迭代操作,我们可以逐步地将矩阵A对角化,并得到其特征值和特征向量。

Jacobi迭代法以其简洁、直观的特点,在复矩阵特征值和特征向量的求解中得到了广泛的应用。

jacobi迭代法求复矩阵特征值和特征向量

jacobi迭代法求复矩阵特征值和特征向量

题目:深入探究jacobi迭代法求复矩阵特征值和特征向量上线性代数的学习过程中,我们经常会遇到求解复矩阵的特征值和特征向量的问题。

而jacobi迭代法则是一种被广泛应用的方法之一。

本文将深入探讨jacobi迭代法的原理、应用以及个人观点和理解。

### 1. jacobi迭代法的原理和概念jacobi迭代法是一种通过不断相似变换将矩阵对角化的方法,它可以被用于求解实对称矩阵的特征值和特征向量,而在这篇文章中,我们将着重讨论其在求解复矩阵时的应用。

### 2. jacobi迭代法的算法步骤在使用jacobi迭代法求解复矩阵特征值和特征向量时,我们需要经历一系列的算法步骤。

我们可以通过对角线元素的绝对值大小来判断矩阵是否已经对角化,然后进行迭代,直到满足精度要求为止。

### 3. jacobi迭代法的实际应用在实际应用中,jacobi迭代法除了可以求解复矩阵的特征值和特征向量外,还可以在解决其他涉及特征值和特征向量的问题时发挥重要作用。

通过简单的算法步骤和迭代过程,我们可以有效地得到复矩阵的特征值和特征向量,为进一步的分析和计算提供便利。

### 4. 个人观点和理解从个人的角度来看,jacobi迭代法在求解复矩阵特征值和特征向量时具有一定的优势,尤其在算法实现的过程中,我们可以通过简单的迭代步骤快速得到结果。

然而,对于大规模复矩阵的计算,可能还需要考虑其他更高效的方法或并行计算的应用。

### 结论通过本文的深入探讨,我们对jacobi迭代法求解复矩阵特征值和特征向量有了更深入的了解。

在实际应用中,我们需要灵活运用不同的方法和算法,以便更好地解决实际问题。

总结来说,jacobi迭代法是一种常用的求解复矩阵特征值和特征向量的方法,它通过简单的算法步骤和迭代过程,能够快速有效地得到结果。

然而,在实际应用中,我们还需要综合考虑不同的因素,以便获得更好的计算效果。

通过本文的阐述,希望读者能够更加深入地理解jacobi迭代法以及其在求解复矩阵特征值和特征向量中的应用,为进一步的学习和研究打下良好的基础。

矩阵特征值求法

矩阵特征值求法

矩阵特征值求法在数学中,矩阵特征值是矩阵的一个非常重要的性质。

它可以用来描述矩阵的很多性质,比如矩阵的对角化、矩阵的相似变换等。

矩阵特征值的求法有很多种,其中比较常见的有幂法、Jacobi方法、QR方法等。

本文将介绍这些方法的基本原理和具体实现过程。

一、幂法幂法是一种求解矩阵特征值和特征向量的迭代方法。

其基本思想是:从一个随机的初始向量开始,不断地将矩阵乘上这个向量,并将结果归一化,得到一个新的向量。

这个过程会不断重复,直到向量收敛到某个特征向量为止。

此时,对应的特征值就是矩阵的最大特征值。

具体实现过程如下:1. 初始化一个随机向量 $x_0$,并进行归一化,得到$x_1=frac{x_0}{left|x_0right|}$。

2. 对于 $k=1,2,3,cdots$,重复以下步骤:(1)计算 $y_k=Ax_{k}$。

(2)计算$lambda_k=frac{left|y_kright|}{left|x_kright|}$。

(3)归一化向量 $x_{k+1}=frac{y_k}{left|y_kright|}$。

3. 当 $left|lambda_{k+1}-lambda_kright|<epsilon$,其中$epsilon$ 是一个足够小的数,表示收敛精度时,停止迭代。

此时,向量 $x_{k+1}$ 就是对应的特征向量,特征值为 $lambda_{k+1}$。

幂法的优点是简单易懂,容易实现。

但是,由于它只能得到矩阵的最大特征值和对应的特征向量,因此需要对矩阵进行对角化或者其他方法来得到所有的特征值和特征向量。

二、Jacobi方法Jacobi方法是一种求解实对称矩阵特征值和特征向量的方法。

其基本思想是:通过一系列旋转变换,将实对称矩阵变换为对角矩阵,从而得到特征值和特征向量。

具体实现过程如下:1. 初始化一个实对称矩阵 $A$。

2. 选择一个非对角线元素 $a_{i,j}$,并计算旋转角度$theta$,使得 $a_{i,j}$ 变为 $0$。

数值分析实验报告——基本QR算法求全部特征值

数值分析实验报告——基本QR算法求全部特征值

数值分析实验报告专业信息与计算科学班级信计101 姓名学号协作队员实验日期2013 年 1 月5 日星期六成绩评定教师签名批改日期题目一、问题提出给定矩阵2345644567036780028900010A⎛⎫⎪⎪⎪=⎪⎪⎪⎝⎭,(1)用Matlab函数“eig”求矩阵全部特征值.(2)用幂法求A的主特征值及对应的特征向量.(3)用基本QR算法求全部特征值(可用Matlab函数“qr"实现矩阵的QR分解)。

二、模型建立用幂法求A的主特征值及对应的特征向量的模型:选取,按照下列公式构造向量序列{}{}则有循环足够多次后,可以近似得出,三、求解方法(1)A=[2 3 4 5 6;4 4 5 6 7;0 3 6 7 8;0 0 2 8 9;0 0 0 1 0];a=eig(A)(2)pmethod。

mfunction [l,v,s]=pmethod(A,x0,eps)if nargin==2eps = 1.0e-6;endv = x0;%v为主特征向量M = 5000; %迭代步数限制m = 0;l = 0;for(k=1:M)y = A*v;m = max(y);%m为按模最大的分量v = y/m;if(abs(m — l)<eps)l = m; %到所需精度,退出,l为主特征值 s = k;%s为迭代步数return;elseif(k==M)disp('迭代步数太多,收敛速度太慢!’); l = m;s = M;elsel = m;endendend(3)function l = rqrtz(A,M)%QR算法求矩阵全部特征值%已知矩阵:A%迭代步数:M%求得的矩阵特征值:lA = hess(A);for i=1:MN = size(A);n = N(1,1);u = A(n,n);[q,r]=qr(A—u*eye(n,n));A = r*q+u*eye(n,n);l = diag(A);end四、输出结果(1)a = 13。

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

西京学院数学软件实验任务书
实验十三实验报告
一、实验名称:矩阵特征值及相应特征向量的Jacobi法,QR法。

二、实验目的:熟悉矩阵特征值及相应特征向量的Jacobi法,QR 法。

三、实验要求:运用Matlab/C/C++/Java/Maple/Mathematica等其中一种语言完成程序设计。

四、实验内容:
%矩阵特征值及相应特征向量的Jacobi法
function [D,R]=Jacobi(A,eps)
if nargin==2
eps=1.0e-5;
end
n=length(A);
R=eye(n);
while 1
Amax=0;
for l=1:n-1
for k=l+1:n
if abs(A(l,k))>Amax
Amax=abs(A(l,k));
i=l;j=k;
end
end
end
if Amax<eps
break;
end
d=(A(i,i)-A(j,j))/(2*A(i,j));
if abs(d)<1e-10
t=1;
else
t=sign(d)/(abs(d)+sqrt(d^2+1));
end
c=1/sqrt(t^2+1);
s=c*t;
for l=1:n
if l==i
Aii=A(i,i)*c^2+A(j,j)*s^2+2*A(i,j)*s*c; Ajj=A(i,i)*s^2+A(j,j)*c^2-2*A(i,j)*s*c;
A(i,j)=(A(j,j)-A(i,i))*s*c+A(i,j)*(c^2-s^2);
A(j,i)=A(i,j);
A(i,i)=Aii;
A(j,j)=Ajj;
elseif l~=j
Ail=A(i,l)*c+A(j,l)*s;
Ajl=-A(i,l)*s+A(j,l)*c;
A(i,l)=Ail;A(l,i)=Ail;
A(j,l)=Ajl;A(l,j)=Ajl;
end
Rli=R(l,i)*c+R(l,j)*s;
Rlj=-R(l,i)*s+R(l,j)*c;
R(l,i)=Rli;
R(l,j)=Rlj;
end
end
D=diag(diag(A));
%矩阵特征值及相应特征向量的QR法
function l=qrtz(A,M)
for(i=1:M)
[q,r]=qr(A);
A=r*q;
l=diag(A);
end
五、实验结果:
>> A=[3 4 3;1 2 4;7 6 2];
>> esp=10^(-6);
>> [D,R]=Jacobi(A,eps)
D =
9.6873 0 0
0 -2.2229 0
0 0 -0.4644
R =
0.5970 -0.2958 -0.7457
0.5922 0.7895 0.1609
0.5411 -0.5377 0.6465
>> A=[3 4 3;1 2 4;7 6 2];
>> M=10^2;
>> l=qrtz(A,M)
l =
10.3687
-2.6373
-0.7314。

相关文档
最新文档