(建筑工程设计)在自然科学和工程设计中的许多问题

上传人:管****问 文档编号:129139832 上传时间:2020-04-22 格式:DOC 页数:35 大小:939.11KB
返回 下载 相关 举报
(建筑工程设计)在自然科学和工程设计中的许多问题_第1页
第1页 / 共35页
(建筑工程设计)在自然科学和工程设计中的许多问题_第2页
第2页 / 共35页
(建筑工程设计)在自然科学和工程设计中的许多问题_第3页
第3页 / 共35页
(建筑工程设计)在自然科学和工程设计中的许多问题_第4页
第4页 / 共35页
(建筑工程设计)在自然科学和工程设计中的许多问题_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《(建筑工程设计)在自然科学和工程设计中的许多问题》由会员分享,可在线阅读,更多相关《(建筑工程设计)在自然科学和工程设计中的许多问题(35页珍藏版)》请在金锄头文库上搜索。

1、高等教育出版社 教育电子音像出版社 作者:任玉杰 第五章 矩阵的特征值与特征向量的MATLAB程序第五章 矩阵的特征值与特征向量的计算 在自然科学和工程设计中的许多问题,如电磁振荡、桥梁振动、机械振动等,常归结为求矩阵的特征值和特征向量.求矩阵的特征值和特征向量的问题是代数计算中的重要课题.本章着重介绍直接计算矩阵的特征值和特征向量的MATLAB程序、间接计算矩阵的特征值和特征向量的幂法、反幂法、雅可比方法、豪斯霍尔德方法和QR方法及其它们的MATLAB计算程序.最后我们还讨论广义特征值问题.5.1 直接计算特征值和特征向量的MATLAB程序5.1.4 计算特征值和特征向量的MATLAB程序从

2、以上的讨论可以看到,有许多问题归结为求矩阵的特征值和特征向量,而用手工计算高阶矩阵的特征值与特征向量的难度较大,但是,计算机软件MATLAB提供了直接计算特征值与特征向量的MATLAB函数 (见表51),下面介绍这些函数的使用方法. 表51命 令功 能b = eig(A)输入方阵A,运行后输出b为由方阵A的全部特征值构成的列向量V,D = eig (A)输入对称矩阵A,运行后输出D为由A的全部特征值构成的对角矩阵,V的各列为对应于特征值的特征向量构成的矩阵,使得AV = DV V,D = eig (A,nobalance)输入方阵A,运行后输出D为由A的全部特征值构成的对角矩阵,V的各列为对应

3、于特征值的特征向量构成的矩阵,使得AV = DV;如果A是对称矩阵,则输出的结果与程序 V,D = eig (A)的运行结果相同5.2 幂法及其MATLAB程序幂法是求实矩阵的主特征值(即实矩阵按模最大的特征值)及其对应的特征向量的一种迭代方法.5.2.2 幂法的MATLAB程序设阶实矩阵的个特征值为,且满足,的主特征值对应的特征向量为,则我们可以用下面的MATLAB程序计算和的近似值和近似向量. 用幂法计算矩阵的主特征值和对应的特征向量的MATLAB主程序输入的量:阶实矩阵、维初始实向量V0、计算要求的精度jd、迭代的最大次数max1;输出的量:迭代的次数k、的主特征值的近似值lambda、

4、对应的特征向量的近似向量Vk、相邻两次迭代的误差Wc.如果迭代次数已经达到最大的迭代次数max1,则给出提示的相关信息.根据迭代公式(5.20),现提供用幂法计算矩阵的主特征值和对应的特征向量的MATLAB主程序如下:function k,lambda,Vk,Wc=mifa(A,V0,jd,max1)lambda=0;k=1;Wc =1; ,jd=jd*0.1;state=1; V=V0;while(kjd)state=1;endk=k+1;Wc=Wc;endif(Wc A=1 -1;2 4;V0=1,1;k,lambda,Vk,Wc=mifa(A,V0,0.00001,100), V,D =

5、 eig (A), Dzd=max(diag(D), wuD= abs(Dzd- lambda), wuV=V(:,2)./Vk, 运行后屏幕显示结果请注意:迭代次数k,主特征值的近似值lambda,主特征向量的近似向量Vk,相邻两次迭代的误差Wc如下:k = lambda = Wc = 33 3.00000173836804 8.691862856124999e-007Vk = V = wuV =-0.49999942054432 -0.70710678118655 0.44721359549996 -0.894428227562941.00000000000000 0.7071067811

6、8655 -0.89442719099992 -0.89442719099992Dzd = wuD = 3 1.738368038406435e-006 由输出结果可看出,迭代33次,相邻两次迭代的误差Wc 8.69 19e-007,矩阵的主特征值的近似值lambda3.000 00和对应的特征向量的近似向量Vk (-0.500 00,1.000 00, lambda与例5.1.1中的最大特征值近似相等,绝对误差约为1.738 37e-006,Vk与特征向量 的第1个分量的绝对误差约等于0,第2个分量的绝对值相同.由wuV可以看出,的特征向量V(:,2) 与Vk的对应分量的比值近似相等.因此,

7、用程序mifa.m计算的结果达到预先给定的精度.(2) 输入MATLAB程序 B=1 2 3;2 1 3;3 3 6; V0=1,1,1; k,lambda,Vk,Wc=mifa(B,V0,0.00001,100), V,D = eig (B), Dzd=max(diag(D), wuD= abs(Dzd- lambda), wuV=V(:,3)./Vk,运行后屏幕显示结果请注意:迭代次数k,主特征值的近似值lambda,主特征向量的近似向量Vk,相邻两次迭代的误差Wc如下:k = lambda = Wc = Dzd = wuD = 3 9 0 9 0Vk = wuV = 0.50000000

8、000000 0.81649658092773 0.50000000000000 0.81649658092773 1.00000000000000 0.81649658092773V = 0.70710678118655 0.57735026918963 0.40824829046386 -0.70710678118655 0.57735026918963 0.40824829046386 0 -0.57735026918963 0.81649658092773由输出结果可看出,迭代3次,相邻两次迭代的误差Wc=0,实对称矩阵B的主特征值的近似值lambda=9和对应的特征向量的近似向量Vk

9、 =(0.500 00,0.500 00,1.000 00,lambda与例5.1.1中的最大特征值相同,Vk与特征向量 的对应分量成比例.从wuV的每个分量的值也可以看出,的特征向量V(:,3) 与Vk的对应分量的比值相等.因此,用程序mifa.m计算的结果达到预先给定的精度.此例说明,幂法对实对称矩阵的迭代速度快且计算结果精度高, (3) 输入MATLAB程序 C=1 2 2;1 -1 1;4 -12 1;V0=1,1,1; k,lambda,Vk,Wc=mifa(C,V0,0.00001,100), V,D = eig (C), Dzd=max(diag(D), wuD= abs(Dzd

10、- lambda), Vzd=V(:,1),wuV=V(:,1)./Vk,运行后屏幕显示请注意:迭代次数k已经达到最大迭代次数max1,主特征值的迭代值lambda,主特征向量的迭代向量Vk,相邻两次迭代的误差Wc如下:k = lambda = Wc = 100 0.09090909090910 2.37758124193119 Dzd = wuD = 1.00000000000001 0.90909090909091Vk= Vzd = wuV =0.99999999999993 0.90453403373329 0.904534033733350.99999999999995 0.30151

11、134457776 0.301511344577781.00000000000000 -0.30151134457776 -0.30151134457776由输出结果可见,迭代次数k已经达到最大迭代次数max1=100,并且lambda的相邻两次迭代的误差Wc2.377 582,由wuV可以看出,lambda的特征向量Vk与真值Dzd的特征向量Vzd对应分量的比值相差较大,所以迭代序列发散.实际上,实数矩阵C的特征值的近似值为,并且对应的特征向量的近似向量分别为=(0.90453403373329,0.30151134457776,-0.30151134457776),(-0.72547625

12、011001,-0.21764287503300-0.07254762501100i, 0.58038100008801-0.29019050004400i),( -0.72547625011001, -0.21764287503300 + 0.07254762501100i, 0.58038100008801 + 0.29019050004400i) , 是常数).此例说明,当阶实矩阵有复数特征值时,不宜用幂法计算它的主特征值对应的特征向量.(4)输入MATLAB程序 D=-4 14 0;-5 13 0;-1 0 2; V0=1,1,1; k,lambda,Vk,Wc=mifa(D,V0,0.00001,100), V,Dt = eig (D), Dtzd=max(diag(Dt), wuDt= abs(Dtzd- lambda), Vzd=V(:,2),wuV=V(:,2)./Vk,运行后屏幕显示结果请注意:迭代次数k,主特征值的近似值lambda,主特征向量的近似向量Vk,相邻两次迭代的误差Wc如下:k

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 经营企划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号