matlab数值计算第二次.ppt

上传人:wuy****n92 文档编号:70799925 上传时间:2023-01-28 格式:PPT 页数:29 大小:221.99KB
返回 下载 相关 举报
matlab数值计算第二次.ppt_第1页
第1页 / 共29页
matlab数值计算第二次.ppt_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《matlab数值计算第二次.ppt》由会员分享,可在线阅读,更多相关《matlab数值计算第二次.ppt(29页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第二章第二章 MATLAB数值计算数值计算(第二讲)第二讲)本章学习目标本章学习目标 掌握生成特殊矩阵的方法。掌握矩阵分析的方法。掌握求解线性方程组的各种方法。了解矩阵的稀疏存储方式。掌握数据统计和分析的方法。掌握多项式常用运算。2.3 2.3 线性方程组求解线性方程组求解2.3.1 2.3.1 矩阵求逆及线性代数方程组求解矩阵求逆及线性代数方程组求解1矩阵求逆 inv(A)函数用于计算方阵的逆矩阵。【例例.8.8】求方阵A的逆矩阵并赋值给B,且验证与是互逆的。A=1-1 1;5-4 3;2 1 1;B=inv(A)B=-1.4000 0.4000 0.2000 0.2000 -0.2000

2、0.4000 2.6000 -0.6000 0.20002.3 2.3 线性方程组求解线性方程组求解 A*Bans=1.0000 0.0000 0.0000 -0.0000 1.0000 0.0000 -0.0000 0.0000 1.0000 B*Aans=1.0000 0.0000 -0.0000 -0.0000 1.0000 0.0000 0.0000 -0.0000 1.00002.3 2.3 线性方程组求解线性方程组求解2利用矩阵求逆方法解线性方程组【例.】利用矩阵求逆方法解线性方程组A=1,-2,3;3,-1,5;2,1,5;b=1;2;3;x=inv(A)*bx=-0.3333

3、0.3333 0.66672.3 2.3 线性方程组求解线性方程组求解 利用左除运算符求解线性方程组利用左除运算符求解线性方程组 对于线性方程组Ax=b,可以利用左除运算符“”求解:x=Ab【例2.102.10】用左除运算符求解下列相同系数矩阵的两个线性代数方程组的解。2.3 2.3 线性方程组求解线性方程组求解解法1:分别解线性方程组。A=1,-1,1;5,-4,3;2,1,1;b1=2;-3;1;b2=3;4;-5;x=Ab1x=-3.8000 1.4000 7.2000y=Ab2y=-3.6000 -2.2000 4.4000解法2:将两个线性方程组连在一起求解。A=1,-1,1;5,4

4、,3;2,1,1;b=2,3;-3,4;1,-5;xy=Abxy=-3.8000 -3.6000 1.4000 -2.2000 7.2000 4.40002.4 2.4 矩阵分解矩阵分解 矩阵分解是指根据一定的原理用某种算法将一个矩阵分解成若干个矩阵的乘积。常见的矩阵分解有LU分解、QR分解、Cholesky分解以及Schur分解、Hessenberg分解、奇异分解等。2.4.1 2.4.1 矩阵的矩阵的LULU分解分解 矩阵的LU分解又称Gauss消去分解或三角分解,就是将一个方阵表示为一个行交换下三角矩阵和一个上三角矩阵的乘积形式。方阵A是非奇异的,LU分解总是可以进行的。LU分解主要用于

5、简化一个大矩阵的行列式值的计算过程、求反矩阵和求解联立方程组。2.4 2.4 矩阵分解矩阵分解 MATLAB提供的lu函数用于对矩阵进行LU分解,其调用格式如下。L,U=lu(X):产生一个上三角阵U U和一个变换形式的下三角阵L L(行交换),使之满足X X=LULU。注意,这里的矩阵X X必须是方阵。L,U,P=lu(X):产生一个上三角阵U U和一个下三角阵L L以及一个置换矩阵P P,使之满足PXPX=LULU。当然矩阵X X同样必须是方阵。当使用第1种格式时,矩阵L L往往不是一个下三角矩阵,但可以通过行交换成为一个下三角阵。2.4 2.4 矩阵分解矩阵分解【例2.11】设,对矩阵进

6、行分解。a=1-1 1;5-4 3;2 1 1;L,U=lu(a)L=0.2000 -0.0769 1.0000 1.0000 0 0 0.4000 1.0000 02.2.矩阵分解矩阵分解U=5.0000 -4.0000 3.0000 0 2.6000 -0.2000 0 0 0.3846 lu=L*Ulu=1 -1 1 5 -4 3 2 1 12.2.矩阵分解矩阵分解 L U P=lu(a)L=1.0000 0 0 0.4000 1.0000 0 0.2000 -0.0769 1.0000U=5.0000 -4.0000 3.0000 0 2.6000 -0.2000 0 0 0.3846

7、P=0 1 0 0 0 1 1 0 02.2.矩阵分解矩阵分解 lu=L*Ulu=5 -4 3 2 1 1 1 -1 1 inv(p)*L*u?Undefined function or variable p.inv(P)*L*Uans=1 -1 1 5 -4 3 2 1 12.2.矩阵分解矩阵分解2.2.矩阵分解矩阵分解clearA=2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4;b=13,-9,6,0;ticx2=Ab;%用左除运算求解tocticx1=inv(A)*b;%用求逆运算求解tocticL,U=lu(A);%LU分解x3=U(Lb);%用LU分解求解t

8、ocx1=x1x2=x2x3=x3其中tic和toc两个函数配合使用用于计算程序的执行时间,tic记录当前时间,toc记录或显示使用tic函数以来所花费的时间。运行结果说明,x1、x2、x3的值相同,通过LU分解求值所花运行时间最少。2.2.矩阵分解矩阵分解.4.2 .4.2 矩阵的矩阵的QRQR分解分解对矩阵X X进行QR分解,就是把X X分解为一个正交矩阵Q Q和一个上三角矩阵R R的乘积形式。MATLAB的函数qr可用于对矩阵进行QR分解,其调用格式如下。Q,R=qr(X):产生一个一个正交矩阵Q Q和一个上三角矩阵R R,使之满足X X=QRQR。Q,R,E=qr(X):产生一个一个正

9、交矩阵Q Q、一个上三角矩阵R R以及一个置换矩阵E E,使之满足XEXE=QRQR。2.2.矩阵分解矩阵分解【.】设对矩阵进行分解。A=2,1,1,4;1,2,-1,2;1,-1,3,3;Q,R=qr(A)2.2.矩阵分解矩阵分解Q=-0.8165 0 -0.5774 -0.4082 -0.7071 0.5774 -0.4082 0.7071 0.5774R=-2.4495 -1.2247 -1.6330 -5.3072 0 -2.1213 2.8284 0.7071 0 0 0.5774 0.5774 QR=Q*RQR=2.0000 1.0000 1.0000 4.0000 1.0000

10、2.0000 -1.0000 2.0000 1.0000 -1.0000 3.0000 3.00002.2.矩阵分解矩阵分解Q,R,E=qr(A)Q=-0.7428 -0.1980 -0.6396 -0.3714 -0.6730 0.6396 -0.5571 0.7126 0.4264R=-5.3852 -2.0426 -0.9285 -2.4140 0 2.6130 -2.2567 -0.356 0 0 0.2132 -0.2132E=0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 02.2.矩阵分解矩阵分解Q*R/E%验证A=Q*R*inv(E)ans=2.0000 1.000

11、0 1.0000 4.0000 1.0000 2.0000 -1.0000 2.0000 1.0000 -1.0000 3.0000 3.0000实现分解后,线性方程组的解()或()。2.2.矩阵分解矩阵分解.4.3 .4.3 矩阵的矩阵的CholeskyCholesky分解分解如果矩阵X是对称正定的,则Cholesky分解将矩阵X分解成一个下三角矩阵和上三角矩阵的乘积。设上三角矩阵为R,则下三角矩阵为其转置,即X=RR。MATLAB函数chol(X)用于对矩阵X进行Cholesky分解,其调用格式如下。R=chol(X):产生一个上三角阵R,使RR=X。若X为非对称正定,则输出一个出错信息。

12、R,p=chol(X):这个命令格式将不输出出错信息。当X为对称正定的,则p=0,R与上述格式得到的结果相同;否则p为一个正整数。如果X为满秩矩阵,则R为一个阶数为q=p1的上三角阵,且满足RR=X(1:q,1:q)。2.2.矩阵分解矩阵分解【例例2.142.14】对矩阵进行分解。A=2,1,1;1,2,-1;1,-1,3;R=chol(A)R*R利用第2种格式对矩阵A进行Cholesky分解:R,p=chol(A)2.2.矩阵分解矩阵分解 A=2,1,1;1,2,-1;1,-1,3;A=2,1,1;1,2,-1;1,-1,3;R=chol(A)R=chol(A)R=R=1.4142 0.70

13、71 0.7071 1.4142 0.7071 0.7071 0 1.2247 -1.2247 0 1.2247 -1.2247 0 0 1.0000 0 0 1.0000 R*R R*Rans=ans=2.0000 1.0000 1.0000 2.0000 1.0000 1.0000 1.0000 2.0000 -1.0000 1.0000 2.0000 -1.0000 1.0000 -1.0000 3.0000 1.0000 -1.0000 3.0000 R,p=chol(A)R,p=chol(A)R=R=1.4142 0.7071 0.7071 1.4142 0.7071 0.7071

14、0 1.2247 -1.2247 0 1.2247 -1.2247 0 0 1.0000 0 0 1.0000p=p=0 0 2.4 矩阵的分解矩阵的分解【例2.15】b=3-2-0.9 2*eps;-2 4-1-eps;-eps/4 eps/2-1 0;-0.5-.5.1 1;b,p=chol(b)b=1.7321 -1.1547 0 1.6330p=32.4 矩阵的分解矩阵的分解b=3-2-0.9 2*eps;-2 4-1-eps;-eps/4 eps/2-1 0;-0.5-.5.1 1;x=chol(b)?Error using=cholMatrix must be positive d

15、efinite.2.2.矩阵分解矩阵分解2.4.4 2.4.4 矩阵的矩阵的QZQZ分解分解 在MATLAB中,QZ分解可由函数qz来实现。qz函数常用的调用格式:pAA,BB,Q,Z,V=qz(A,B):要求矩阵A,B是方阵。产生的矩阵AA,BB是上三角矩阵,Q,Z是正交矩阵,矩阵V是特征矢量矩阵。其中,满足Q*A*Z=与Q*B*ZBBpAA,BB,Q,Z,V=qz(A,B,flag):对于方阵A,B的QZ分解取决于参数flag。参数flag可以取complex与real其中,complex表示复分解产生三角矩阵AA,real 表示实分解产生三角矩阵AA。2.4 2.4 矩阵分解矩阵分解【例

16、2.15】a=1 2 0;2 5-1;4 10-1;x=1 3 4;2 6 5;3 2 4;b,c,e,z,v=qz(a,x)b=-0.1783-0.0000i -1.4551+0.4813i -3.0105+0.2715i 0 5.6957-1.6531i 10.1589-1.1010i 0 0 0.9081+0.2636ic=2.7199 -7.4009+0.2393i -2.2295+1.2686i 0 6.9587 0.4560-1.1530i 0 0 1.1095 e=-0.5730-0.0018i -0.7935-0.0026i 0.2051+0.0007i 0.0758-0.02

17、17i 0.1978+0.0143i 0.9769-0.0053i -0.8158+0.0013i 0.5753+0.0057i -0.0531+0.0255iz=0.8670-0.0028i 0.4652-0.0196i 0.1583-0.0804i -0.3824+0.0012i 0.4177-0.1304i 0.8099-0.0801i -0.3196+0.0010i 0.7624+0.1027i -0.5396-0.1223iv=0.9968-0.0032i 0.9510-0.0490i 0.0519-0.9481i -0.4397+0.0014i -0.1409-0.0406i 0.

18、0400+0.1407i -0.3674+0.0012i 0.0671+0.0607i -0.0603-0.0671i2.4 2.4 矩阵分解矩阵分解2.4.5 2.4.5 矩阵的奇异值分解矩阵的奇异值分解 在matlab中矩阵的奇异值分解由函数svd来实现,其调用格式为:b,c,d=svd(A)。例如:a=1 2 0;2 5-1;4 10-1;b c d=svd(a)b=-0.1799 0.5217 -0.8340 -0.4434 -0.7998 -0.4047 -0.8781 0.2970 0.3752c=12.3171 0 0 0 0.5149 0 0 0 0.1577d=-0.3718

19、 0.2136 -0.9034 -0.9221 0.0275 0.3860 0.1073 0.9765 0.18682.4 2.4 矩阵分解矩阵分解2.4.6 矩阵的Schur分解 在matlab中,矩阵的Schur分解由函数schur函数来实现,其调用格式:b,c=schur(A),其中c为Schur矩阵。例如:a=1 2 0;2 5-1;4 10-1;b,c=schur(a)b=-0.2440 -0.8797 -0.4082 -0.3333 0.4714 -0.8165 -0.9107 0.0632 0.4082c=3.7321 -1.2247 11.5618 0 0.2679 -1.3509 0 0 1.0000本本 堂堂 小小 结结p线性方程组求解 (1)矩阵求逆(inv)及利用矩阵求逆方法解线性方程组;(2)利用左除运算符求解线性方程组p矩阵分解 (1)LU分解;(2)QR分解;(3)Cholesky分解;(4)Schur分解 (5)矩阵的奇异值分解;(6)矩阵的QZ分解等

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com