matlab在解线性方程组的应用,MATLAB在求解线性方程组中的多种应用

第 28卷第 12期 通 化 师 范 学 院 学 报 Vol. 28 №12 2007年 12月 JOURNAL OF TONGHUA TEACHERS COLLEGE Dec. 2007 MATLAB在求解线性方程组中的多种应用 赵秉新1 ,郑来运2 (1. 宁夏大学 数学计算机学院 ,宁夏 银川 750021; 2. 宁夏大学 机械工程学院 ) 摘  要:MATLAB已经成为国际上最流行的科学与工程计算的软件工具 ,是当今最优秀的科学计算软件之一 ,它集数值计算、图形处理、符号推演、文字处理、动态仿真等功能于一身. 文中根据线性方程组的不同特点 ,分类讨论了 Matlab在求解线性方程组中的应用 ,并给出了相应的求解方法. 关键词:线性方程组;直接法;迭代法 中图分类号: O245 文献标识码: A 文章编号: 1008 - 7974 (2007) 12 - 0013 - 04 收稿日期 : 2007 - 04 - 07 作者简介 :赵秉新 (1980 - ) ,男 ,宁夏银川人 ,宁夏大学数学计算机学院教师 ,硕士 ,主要研究方向:计算数学.   在自然科学和工程技术中很多问题的解决常常归结为解线性方程组 ,而这些方程组的系数矩阵大致可分为两种 :低阶稠密矩阵和大型稀疏矩阵. 而求解线性方程组一般可分为两类 :直接法和迭代法. 1 直接法 直接法就是经过有限步算术运算 ,无需迭代可直接求得方程组精确解的方法. 但实际计算中由于舍入误差的存在和影响 ,这种方法也只能得到线性方程组的近似解 ,该方法是求解低阶稠密矩阵方程组的有效方法. 如 Cramer法则 , Gauss消元法及其变形等. 定义 1 对于方程组 Ax = b,其中 A是 ( n ×m ) 阶矩阵 ,则 (1) m = n且 A为非奇异矩阵时此方程称为 “恰定方程 ” ; (2) m > n时 ,此方程称为“超定方程 ” ; (3) n < m 时 ,此方程称为“欠定方程 ” . 1. 1 Cramer法求解恰定方程组 定理 1 如果 Ax = b中 , D =| A | ≠0,则 Ax = b有解 ,且解是唯一的 ,解为 x1 = D1 D , x2 = D2 D ⋯, xn = Dn D , D1 是 D中第 i列换成向量 b所得的行列式. 由 MATLAB提供的求行列式值的函数 det(A) 实现 ,分别求得 n + 1个行列式的值 ,用 Cramer法则求得 Ax = b的解. 可编写下列函数文件 cramer. m: function x = cramer(A, b)   for k =1: length (b) D =A; D (: , k) = b; x(k) = det(D) /det(A) ;   end   x 注 :用 Gramer求解时 ,要计算 n +1个 n阶行列式 ,共 做 N = n!3(n2 - 1) + n次乘除法. 1. 2 直接矩阵除法 Matlab中 ,用矩阵除法“/”或“\”直接求解线性方程组 ,它是一个内部包含着许许多多的自适应算法 ,对超定方程用最小二乘法求解 ;对欠定方程因为它的解不唯一 ,Matlab给出所有解中范数最小的一个特解 ;对于三对角阵方程组 ,采用追赶法求解. 1. 3 LU分解法 定理 2 设 A为 n ×n阶矩阵 ,若 A的顺序主子式 D I ≠ 0,则 A可分解为一个单位下三角阵 L和一 个上三角阵 U的乘积 ,且分解是唯一的. 即有 A = L3U,于是求解 Ax = b转化为求解两个三角形方程组 Ly =

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值