试验5-特征值、特征向量和二次型.ppt

上传人:zhu****ei 文档编号:3604568 上传时间:2019-12-19 格式:PPT 页数:40 大小:223KB
返回 下载 相关 举报
试验5-特征值、特征向量和二次型.ppt_第1页
第1页 / 共40页
试验5-特征值、特征向量和二次型.ppt_第2页
第2页 / 共40页
试验5-特征值、特征向量和二次型.ppt_第3页
第3页 / 共40页
点击查看更多>>
资源描述
1,方阵的特征值、特征向量和二次型,实验目的熟悉利用MATLAB中有关方阵的迹方阵的特征值、特征向量二次型的操作方法,2,1.方阵的迹,矩阵A的迹是指矩阵的对角线上元素的和,也等于矩阵的特征值的和。命令格式为:trace(A)例1.设,计算A的迹t.程序设计A=111;210;101;t=trace(A)t=1,3,例2.设,计算A的迹t。程序设计A=8652;3221;4231;3511;t=trace(A)t=14,4,2.方阵的特征值与特征向量,手工计算方阵的特征值与特征向量并不是一件容易的事,而用MATLAB来计算方阵的特征值与特征向量只需要一个简单的命令。这里需注意两个英文单词:eigenvalues(特征值)和eigenvectors(特征向量)。理解这两个单词,对以下命令的使用是有好处的。计算方阵的特征值与特征向量的命令格式为:eig(A)给出方阵A的所有特征值,5,V,D=eig(A)给出由方阵A的所有特征值组成的对角矩阵D和特征向量矩阵V,满足A*V=V*D,或者A=V*D*V-1,第k个特征值对应的特征向量是V的第k个列向量。poly(A)当A是n阶方阵时,给出的是A的特征多项式的n+1个按降幂排列的系数。即特征多项式|E-A|=DET(lambda*EYE(SIZE(A)-A)的系数,6,例3.设,计算A的特征值和特征向量。程序设计:A=8652;3221;4231;3511A=8652322142313511,7,eig(A)%A的特征值ans=13.58910.94550.1191-0.6537,8,V,D=eig(A)%A的特征值与特征向量V=%A的特征向量,列向量-0.7985-0.0957-0.65470.1876-0.30380.12300.2322-0.3533-0.3913-0.37770.7118-0.2531-0.34200.91270.10380.8809D=%对角元素是A的特征值13.589100000.945500000.11910000-0.6537,9,V*D*inv(V)%验证A=V*D*V-1ans=8.00006.00005.00002.00003.00002.00002.00001.00004.00002.00003.00001.00003.00005.00001.00001.0000a1=V(:,1)%特征值1=13.5891对应的特征向量a1=-0.7985-0.3038-0.3913-0.3420,10,a2=V(:,2)%特征值2=0.9455对应的特征向量a2=-0.09570.1230-0.37770.9127a3=V(:,3)%特征值3=0.1191对应的特征向量a3=-0.65470.23220.71180.1038,11,a4=V(:,4)%特征值4=-0.6537对应的特征向量a4=0.1876-0.3533-0.25310.8809,12,c=poly(A)%A的特征多项式的n+1个按降幂排列的系数c=Columns1through51-1458-1f=poly2sym(c)%将多项式向量c表示为符号形式f=x4-14*x3+5*x2+8*x-9007199254740961/9007199254740992%f即为A的特征多项式|E-A|=4-143+52+8-1,13,例4.设,计算A的特征值与特征向量。程序设计A=1111;1111;1111;1111;eig(A)%A的特征值ans=-2.00002.00002.00002.0000,14,V,D=eig(A)%A的特征值与特征向量V=%A的特征向量,列向量-0.50000.21130.28870.78870.50000.7887-0.28870.21130.5000-0.5774-0.28870.57740.500000.86600D=%对角线元素是A的特征值-2.000000002.000000002.000000002.0000,15,c=poly(A)%A的特征多项式的n+1个按降幂排列的系数c=Columns1through51-4016-16f=poly2sym(c)%将多项式向量c表示为符号形式f=x4-4*x3+3/1125899906842624*x2+16*x-16%f即为A的特征多项式|E-A|=4-43+16-16,16,例5.设,计算正交矩阵,使得为对角矩阵。程序设计A=0111;1011;1101;-1110;isequal(A,A)%判断A和A是否相等,即A是否是对称矩阵ans=1%A是对称矩阵,17,Q,D=eig(A)%A的特征值与特征向量满足A*Q=Q*DQ=-0.50000.28870.78870.21130.5000-0.28870.21130.78870.5000-0.28870.5774-0.5774-0.5000-0.866000D=-3000010000100001,18,Qans=-0.50000.50000.5000-0.50000.2887-0.2887-0.2887-0.86600.78870.21130.577400.21130.7887-0.57740inv(Q)ans=-0.50000.50000.5000-0.50000.2887-0.2887-0.2887-0.86600.78870.21130.577400.21130.7887-0.57740%Q现在是正交矩阵,因为Q=inv(Q),19,Q*A*Q%得到结果Q*A*Q=D或者A=Q*D*Qans=-3000010000100001程序说明:当矩阵A为实对称矩阵时,V,D=eig(A)给出由方阵A的所有特征值组成的对角矩阵D和特征向量矩阵V,这时的V已经是一个正交矩阵。,20,3.二次型通过正交变换化为标准型,对任意的实二次型,其中是阶实对称矩阵,一定可以经过正交的变量替换变成标准形其中,系数是实对称矩阵的全部特征值。在MATLAB中,可以运用eig命令,计算系数矩阵的特征值矩阵和特征向量矩阵,即可得到正交变换以及二次型的标准型。,21,例6.计算正交的变量替换,化二次型为标准型。程序设计A=1101;1110;0111;-1011%二次型的系数矩阵AA=110-111-100-111-1011,22,symsx1x2x3x4;%变量声明X=x1x2x3x4X=conj(x1)conj(x2)conj(x3)conj(x4)f=X*A*X%二次型f=(x1+x2-x4)*conj(x1)+(x1+x2-x3)*conj(x2)+(-x2+x3+x4)*conj(x3)+(-x1+x3+x4)*conj(x4)%对于一个复数X,CONJ(X)=REAL(X)-I*IMAG(X),即X的复共轭,23,P,D=eig(A)%计算系数矩阵A的特征值矩阵D和特征向量矩阵PP=%特征向量矩阵P-0.50000.70710.00000.50000.50000.00000.70710.50000.50000.70710.0000-0.5000-0.500000.7071-0.5000D=%特征值矩阵D-1.000000001.000000001.000000003.0000,24,symsy1y2y3y4;%变量声明Y=y1;y2;y3;y4Y=y1y2y3y4,25,X=P*Y%正交变换X=PYX=-1/2*y1+1/2*2(1/2)*y2+29/144115188075855872*y3+1/2*y41/2*y1-5822673418478107/40564819207303340847894502572032*y2+1/2*2(1/2)*y3+1/2*y41/2*y1+1/2*2(1/2)*y2+3/144115188075855872*y3-1/2*y4-1/2*y1+1/2*2(1/2)*y3-1/2*y4f=Y*D*Y%二次型的标准型f=-conj(y1)*y1+conj(y2)*y2+conj(y3)*y3+3*conj(y4)*y4,26,例7.计算正交的变量替换,化二次型为标准型。程序设计A=422;242;224%二次型的系数矩阵A=422242224formatshort,27,P,D=eig(A)%计算系数矩阵A的特征值矩阵D和特征向量矩阵PP=0.40820.70710.57740.4082-0.70710.5774-0.816500.5774D=2.00000002.00000008.0000,28,symsx1x2x3y1y2y3;%变量声明X=x1;x2;x3;Y=y1;y2;y3;X=P*Y%正交变换X=PYX=1/6*6(1/2)*y1+1/2*2(1/2)*y2+1/3*3(1/2)*y31/6*6(1/2)*y1-1/2*2(1/2)*y2+1/3*3(1/2)*y3-1/3*6(1/2)*y1+1/3*3(1/2)*y3f=Y*D*Y%二次型的标准型f=2*y1*conj(y1)+2*y2*conj(y2)+8*y3*conj(y3),29,4.二次型的正定性判定,实二次型称为正定二次型,如果对任何,都有。正定二次型的矩阵称为正定矩阵。判定二次型为正定的充分必要条件是,它的系数矩阵A的特征值全部为正,或者A的各阶主子为正。在MATLAB中,可以运用eig命令计算系数矩阵A的特征值矩阵D或者计算A的各阶主子式来进行判定。,30,例8.判定二次型的正定性。程序设计:example8.mclearall%清除各种变量A=222;254;-245D=eig(A)ifall(D0)fprintf(二次型正定)elsefprintf(二次型非正定)end,31,运行结果:A=22-225-4-2-45D=1.00001.000010.0000二次型正定,32,例9.利用主子式法判定二次型的正定性。程序设计:example9.mclearallA=1121;-1303;2096;13619c=1;,33,fori=1:4fprintf(第%d阶主子式为,i)B=A(1:i,1:i)fprintf(第%d阶主子式的值为,i)det(B)if(det(B)0)c=-1;breakendendif(c=-1)fprintf(判定的结论:二次型非正定)elsefprintf(判定的结论:二次型正定)end,34,执行的结果:A=1-121-130-3209-61-3-619第1阶主子式为B=1第1阶主子式的值为ans=1,35,第2阶主子式为B=1-1-13第2阶主子式的值为ans=2第3阶主子式为B=1-12-130209,36,第3阶主子式的值为ans=6第4阶主子式为B=1-121-130-3209-61-3-619第4阶主子式的值为ans=24判定的结论:二次型正定,37,例10.判定二次型的正定性。程序设计:example10.mclearallA=10412;4214;12141c=1;fori=1:3fprintf(第%d阶主子式为,i)B=A(1:i,1:i)fprintf(第%d阶主子式的值为,i),38,det(B)if(det(B)0)c=-1;breakendendif(c=-1)fprintf(判定的结论:二次型非正定)elsefprintf(判定的结论:二次型正定)end,39,执行的结果:A=1041242-1412-141第1阶主子式为B=10第1阶主子式的值为ans=10第2阶主子式为,40,B=10442第2阶主子式的值为ans=4第3阶主子式为B=1041242-1412-141第3阶主子式的值为ans=-3588判定的结论:二次型非正定,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!