第7章 MATLAB解方程与函数极值
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
第7章
MATLAB解方程与函数极值
7.1 线性方程组求解7.2 非线性方程数值求解 7.3 常微分方程初值问题的数值解法 7.4 函数极值
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
7.1 线性方程组求解 7.1.1 直接解法1.利用左除运算符的直接解法
对于线性方程组Ax=b,可以利用左除运算符“\” 求解: x=A\b
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
例7-1 用直接解法求解下列线性方程组。命令如下:
A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4]; b=[13,-9,6,0]'; x=A\b
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
2.利用矩阵的分解求解线性方程组
矩阵分解是指根据一定的原理用某种算法将一个 矩阵分解成若干个矩阵的乘积。常见的矩阵分解 有LU分解、QR分解、Cholesky分解,以及Schur分 解、Hessenberg分解、奇异分解等。
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
(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),这样可以大大提高运算速度。中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
例7-2 用LU分解求解例7-1中的线性方程组。命令如下:
A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4]; b=[13,-9,6,0]'; [L,U]=lu(A); x=U\(L\b)或采用LU分解的第2种格式,命令如下:
[L,U ,P]=lu(A); x=U\(L\P*b)
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
(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))。中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
例7-3 用QR分解求解例7-1中的线性方程组。命令如下:
A=[2,1,-5,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4]; b=[13,-9,6,0]'; [Q,R]=qr(A); x=R\(Q\b)或采用QR分解的第2种格式,命令如下:
[Q,R,E]=qr(A); x=E*(R\(Q\b))
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
(3) Cholesky分解 如果矩阵X是对称正定的,则Cholesky分解将矩阵 X分解成一个下三角矩阵和上三角矩阵的乘积。设 上三角矩阵为R,则下三角矩阵为其转置,即 X=R'R。MATLAB函数chol(X)用于对矩阵X进行 Cholesky分解,其调用格式为: R=chol(X):产生一个上三角阵R,使R'R=X。若X 为非对称正定,则输出一个出错信息。 [R,p]=chol(X):这个命令格式将不输出出错信息 。当X为对称正定的,则p=0,R与上述格式得到的 结果相同;否则p为一个正整数。如果X为满秩矩 阵,则R为一个阶数为q=p-1的上三角阵,且满足 R'R=X(1:q,1:q)。 实现Cholesky分解后,线性方程组Ax=b变成 R‘Rx=b,所以x=R\(R’\b)。中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
例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为非正定矩阵 。中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
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的解。中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值 Jacobi迭代法的MATLAB函数文件Jacobi.m如下:function [y,n]=jacobi(A,b,x0,eps) if nargin==3 eps=1.0e-6; elseif nargin<3 error return end D=diag(diag(A)); %求A的对角矩阵 L=-tril(A,-1); %求A的下三角阵 U=-triu(A,1); %求A的上三角阵 B=D\(L+U); f=D\b; y=B*x0+f; n=1; %迭代次数 while norm(y-x0)>=eps x0=y; y=B*x0+f; n=n+1; end中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
例7-5
用Jacobi迭代法求解下列线性方程组。设迭代初值为0,迭代精度为10-6。在命令中调用函数文件Jacobi.m,命令如下:
A=[10,-1,0;-1,10,-2;0,-2,10]; b=[9,7,6]'; [x,n]=jacobi(A,b,[0,0,0]',1.0e-6)
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
2.Gauss-Serdel迭代法 在Jacobi迭代过程中,计算时,已经得到,不必再用,即 原来的迭代公式Dx(k+1)=(L+U)x(k)+b可以改进为 Dx(k+1)=Lx(k+1)+Ux(k)+b,于是得到: x(k+1)=(D-L)-1Ux(k)+(D-L)-1b 该式即为Gauss-Serdel迭代公式。和Jacobi迭代相比, Gauss-Serdel迭代用新分量代替旧分量,精度会高些。
中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值 Gauss-Serdel迭代法的MATLAB函数文件gauseidel.m如下:function [y,n]=gauseidel(A,b,x0,eps) if nargin==3 eps=1.0e-6; elseif nargin<3 error return end D=diag(diag(A)); %求A的对角矩阵 L=-tril(A,-1); %求A的下三角阵 U=-triu(A,1); %求A的上三角阵 G=(D-L)\U; f=(D-L)\b; y=G*x0+f; n=1; %迭代次数 while norm(y-x0)>=eps x0=y; y=G*x0+f; n=n+1; end中国石油大学(北京)电子信息工程系
MATLAB R2006a 基础教程
第7章 MATLAB解方程与函数极值
例7-6 用Gauss-Serdel迭代法求解下列线性方程组。设迭代初值为0,迭代精度为10-6。在命令中调用函数文件gauseide …… 此处隐藏:3228字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)




