解线性方程组的直接法的Matlab实现.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
解线性方程组的直接法的 解线性方程组的直接法的 Matlab 实现 姓名 ********** 摘要:给出用 MATLAB 解线性方程组的各种方法,用 MATLAB 直接操作,不用编程,便可立即求出线性方程组的解.方法直观、简便、速度快,具有较强的实用性,另外提供了 Jacobi 迭代 法程序. 法程序. 关键字:线性方程组 数值解 程序设计 MATLAB Jacobi 迭代法 数据结构 引言 线性方程组 Ax=b 是我们在科学和工程计算中经常出现的数学模型,大量的科技与工程实际问题,常常归结为解线性代数方程组,有关线性方程组解的存在性和唯一性在“线性代数”理论中已经作过详细介绍,本章的主要任务是讨论系数行列式不为零的n 阶非齐次线性方程组Ax=b 的两类主要求方法:直接法(精确法)和迭代法。对它的解法我们最熟悉的就是主元消去法,但它只是适用于 A 是低价稠密的矩阵,对于由工程技术中产生的大型稀疏矩阵方程组(即 A 的阶数 n 很大,但零元素较多,例如求某些偏微分方程数值解所产生的线性方程组,n≥104),还需利用迭代法求解。如在计算机内存和运算两方面,都可以根据 A 中有大量零元素的特点采用迭代法。本文将介绍两种常见的迭代:Jacobi 迭代法和Gauss-Seidel 迭代,并用迭代法在数学软件Matlab 上实现线性方程组的解。1 迭代法的基本思想迭代法是按照某种规则构造一个向量序列{x(k)},使其极限向量 x*是 Ax=b 的精确解。因此, 对迭代法来说一般有下面几个问题:(1)如何构造迭代序列?(2)构造的迭代法序列是否收敛?在什么 情况下收敛?(3)如果收敛,收敛的速度如何?我们应该给予量的刻划,用以比较各种迭代法收敛的快 慢。 相关知识 线性方程组的概念及分类线性方程组的一般形式为 a11x1+a12x2+?+a1nxn=b1a21x1+a22x2+? +a2nxn=b2am1x1+am2x2+?+amnxn=b{n(1)若记X=x1x2(?x n)T,b=b1 b2(?bn)TA=a11 a12?a1na21 a22?a2n am1 am2?a mn 则线性方程组(1)记为 AX=b.(2)若 b 的元素不全为零,则称方程组(1)为非齐次线性方程组;若b 的元素全为零,即b1=b2=?=bn=0,则AX=0.(3)并称方程组(3)为齐次线性方程组,也称作方程组(2)的导出方程组,称(A b)=a11 a12?a1n?b1a21 a22?a2n?b2 am1 am2?amn?b n 为线性方程组(1)的增广矩阵,记作 A.若在方程组(1)中,当 mn,即方程的个数 - 1- 多于未知数的个数时,方程组称为超定方程组. 3、算法 用高斯消元法解线性方程组bAX 的 MATLAB 程序输入的量:系数矩阵A 和常系数向量b; 输出的量:系数矩阵 A 和增广矩阵 B 的秩 RA,RB, 方程组中未知量的个数 n 和有关方程组解 X 及其解 的 信 息 .function [RA,RB,n,X]=gaus(A,b) B=[A b]; n=length(b); RA=rank(A); RB=rank(B);zhica=RB-RA; if zhica0, disp( 请注意:因为 RA~=RB,所以此方程组无解 .) returnend if RA==RB if RA==n disp( 请注意: 因为 RA=RB=n, 所以此方程组有唯一解.) X=zeros(n,1); C=zeros(1,n+1); for p= 1:n-1 (1)LU 分解法 lu 分解法解线性方程组function x=luxiaoyuan(A,b) [m,n]=size(A); [l u]=lu(A); s=inv(l)*[A,b]; x=ones(m,1); for i=m:-1:1 h=s(i,m+1); for j=m:-1:1; if j~=i h=h-x(j)*s(i,j); end end x(i)=h/s(i,i) end (2)高斯消元法 高斯消元法的基本思想: Ax=b - 2- 其对应的增广矩阵为为 (A,b) 对线性方程组的增广矩阵进行以下一系列初等变换 (1)对换(A,b)某两行的顺序 (2)(A,b)中的某行乘以一个不为零的数。 (3)把(A,b)某一行乘以一个常数后加到另一行其增广矩阵变为(A‘,b’) 变换后的方程组为 A‘x=b’ 与原方程组等价(同解) 因此,高斯消去法实际上就是通过上述三种变换,把(A,b)化为等价的上三角形式。例: 用高斯消去法找出下列方程組的解原方程组增广矩阵 跟著以上的方法來運算,這個矩陣可以轉變為以下的樣子: 如果增广矩阵第一行第一列不为零,将第二,三行第一列化为零。然后第三行

文档评论(0)

tianya189 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档