- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 MATLAB解方程与
函数极值; 线性方程组求解
非线性方程数值求解
常微分方程初值问题数值解法
函数极值
;7.1 线性方程组求解
7.1.1 直接解法
1. 利用左除运算符直接解法
对于线性方程组Ax=b,能够利用左除运算符“\”求解:
x=A\b;2. 利用矩阵分解求解线性方程组
矩阵分解是指依据一定原理用某种算法将一个矩阵分解成若干个矩阵乘积。常见矩阵分解有LU分解、QR分解、Cholesky分解,以及Schur分解、Hessenberg分解、奇异分解等。;(1) LU分解
矩阵LU分解就是将一个矩阵表示为一个交换下三角矩阵和一个上三角矩阵乘积形式。线性代数中已经证实,只要方阵A是非奇异,LU分解总是能够进行。
MATLAB提供lu函数用于对矩阵进行LU分解,其调用格式为:
[L,U]=lu(X):产生一个上三角阵U和一个变换形式下三角阵L(行交换),使之满足X=LU。注意,这里矩阵X必须是方阵。
[L,U,P]=lu(X):产生一个上三角阵U和一个下三角阵L以及一个置换矩阵P,使之满足PX=LU。当然矩阵X一样必须是方阵。
实现LU分解后,线性方程组Ax=b解x=U\(L\b)或x=U\(L\Pb),这么能够大大提升运算速度。;(2) QR分解
对矩阵X进行QR分解,就是把X分解为一个正交矩阵Q和一个上三角矩阵R乘积形式。QR分解只能对方阵进行。MATLAB函数qr可用于对矩阵进行QR分解,其调用格式为:
[Q,R]=qr(X):产生一个一个正交矩阵Q和一个上三角矩阵R,使之满足X=QR。
[Q,R,E]=qr(X):产生一个一个正交矩阵Q、一个上三角矩阵R以及一个置换矩阵E,使之满足XE=QR。
实现QR分解后,线性方程组Ax=b解x=R\(Q\b)或x=E(R\(Q\b))。; (3) Cholesky分解
假如矩阵X是对称正定,则Cholesky分解将矩阵X分解成一个下三角矩阵和上三角矩阵乘积。设上三角矩阵为R,则下三角矩阵为其转置,即X=RR。MATLAB函数chol(X)用于对矩阵X进行Cholesky分解,其调用格式为:
R=chol(X):产生一个上三角阵R,使RR=X。若X为非对称正定,则输出一个犯错信息。
[R,p]=chol(X):这个命令格式将不输出犯错信息。当X为对称正定,则p=0,R与上述格式得到结果相同;不然p为一个正整数。假如X为满秩矩阵,则R为一个阶数为q=p-1上三角阵,且满足RR=X(1:q,1:q)。
实现Cholesky分解后,线性方程组Ax=b变成R‘Rx=b,所以x=R\(R’\b)。;例7-4 用Cholesky分解求解例7-1中线性方程组。
命令以下:
A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4];
b=[13,-9,6,0];
R=chol(A)
??? Error using == chol
Matrix must be positive definite
命令执行时,出现错误信息,说明A为非正定矩阵。;7.1.2 迭代解法
迭代解法非常适合求解大型系数矩阵方程组。在数值分析中,迭代解法主要包含 Jacobi迭代法、Gauss-Serdel迭代法、超松弛迭代法和两步迭代法。
1. Jacobi迭代法
对于线性方程组Ax=b,假如A为非奇异方阵,即aii≠0(i=1,2,…,n),则可将A分解为A=D-L-U,其中D为对角阵,其元素为A对角元素,L与U为A下三角阵和上三角阵,于是Ax=b化为:
x=D-1(L+U)x+D-1b
与之对应迭代公式为:
x(k+1)=D-1(L+U)x(k)+D-1b
这就是Jacobi迭代公式。假如序列{x(k+1)}收敛于x,则x必是方程Ax=b解。;例7-5 用Jacobi迭代法求解以下线性方程组。
设迭代初值为0,迭代精度为10-6。;2. Gauss-Serdel迭代法
; Gauss-Serdel迭代法MATLAB函数文件gauseidel.m;7.2 非线性方程数值求解
7.2.1 单变量非线性方程求解
在MATLAB中提供了一个fzero函数,可 以用来求单变量非线性方程根。该函数调用格式为:
z=fzero(fname,x0,tol,trace)
其中fname是待求根函数文件名,x0为搜索起点。一个函数可能有多个根,但fzero函数只给出离x0最近那个根。tol控制结果相
您可能关注的文档
- helloteddy1unit4myhead市公开课金奖市赛课一等奖课件.pptx
- iei的发音拼读市公开课金奖市赛课一等奖课件.pptx
- hx化学动力学主题知识讲座市公开课金奖市赛课一等奖课件.pptx
- i u v 拼音市公开课金奖市赛课一等奖课件.pptx
- if条件状语从句-市公开课金奖市赛课一等奖课件.pptx
- if条件状语从句好用市公开课金奖市赛课一等奖课件.pptx
- geopen地球物理勘探仪器最新进展市公开课金奖市赛课一等奖课件.pptx
- if条件状语从句语法好用市公开课金奖市赛课一等奖课件.pptx
- if条件状语市公开课金奖市赛课一等奖课件.pptx
- intouch07实时趋势和历史趋势市公开课金奖市赛课一等奖课件.pptx
- matlab曲线拟合工具箱讲义市公开课金奖市赛课一等奖课件.pptx
- mbr膜生物反应器工艺全面介绍原理流程应用等市公开课金奖市赛课一等奖课件.pptx
- model3unit4astronomy市公开课金奖市赛课一等奖课件.pptx
- mimoofdm系统中基于效用函数的跨层资源分配算法市公开课金奖市赛课一等奖课件.pptx
- module1unit2it27sinthewest市公开课金奖市赛课一等奖课件.pptx
- module3unit2wehavenotfoundlifeonanyotherplanetsyet.教案市公开课金奖市赛课一等奖课件.pptx
- module1unit3hownoisy(5)市公开课金奖市赛课一等奖课件.pptx
- module7unit2whendoyouuseacomprter市公开课金奖市赛课一等奖课件.pptx
- mti学位论文写作要求市公开课金奖市赛课一等奖课件.pptx
- m函数市公开课金奖市赛课一等奖课件.pptx
文档评论(0)