1.5k likes | 1.64k Views
计算方法. 第七章 线行方程组的解法. 7.1 高斯消去法. 7.2 三角分解法. 7.3 向量及矩阵范数. 7.4 迭代法. 7.5 迭代法的加速. 第七章 线性方程组的解法. 本章要点. 本章主要介绍线性方程组的数值方法 : 高斯消去法、 三角分解法、三对角方程组的追赶法迭代法、向量及矩阵范数 . 涉及到一些三角分解:主要有 Doolittle 分解、 Crout 分解等. 主要方法. 高斯消去法、三角分解法、 G-J 迭代法、 G-S 迭代法和 SOR 方法. 表 1. 国民经济个部门之间的关系.
E N D
计算方法 第七章 线行方程组的解法
7.1 高斯消去法 7.2 三角分解法 7.3 向量及矩阵范数 7.4 迭代法 7.5 迭代法的加速 第七章 线性方程组的解法
本章要点 本章主要介绍线性方程组的数值方法:高斯消去法、 三角分解法、三对角方程组的追赶法迭代法、向量及矩阵范数.涉及到一些三角分解:主要有Doolittle 分解、Crout分解等 主要方法 高斯消去法、三角分解法、\G-J迭代法、G-S迭代法和 SOR方法
表1. 国民经济个部门之间的关系 引题:投入产出平衡分析 设国民经济仅由农业、制造业和服务业三个部门组成, 已知某年它们之间的投入产出关系、外部需求、初始 投入等如下表所示:
表2. 投入产出表 假定每个部门的产出与投入成正比,则由表1可确定 三个部门的投入产出表,如表2. 投入系数 或消耗系数 1) 设有 n 个部门,已知投入系数,给定外部需求,建立 求解个部门总产出的模型 2) 设投入系数如表2所给,如果今年对农业、制造业 和服务业的外部需求分别为50,150,100亿元,问这 三个部门的总产出分别为多少?
3) 如果三个部门的外部需求分别增加1个单位,他们 的总产出分别增加多少? 4) 如果对于任意给定的、非负的外部需求,都能得到 非负的总产出,模型就称为可行的,问为使模型可行, 投入系数应满足什么条件?
7.1 Gauss消去法 7.1.1 直接法与三角形方程组求解 实际问题中的线性方程组分类: 按系数矩阵中 零元素的个数: 稠密线性 方程组 稀疏线性 方程组 (80%) 按未知量 的个数: 高阶线性 方程组 低阶线性 方程组 (如1000) 对称正定 方程组 三角形 方程组 三对角占 优方程组 按系数矩 阵的形状
一、直接法概述 直接法是将原方程组化为一个或若干个三角形 方程组的方法,共有若干种. ------------(1) 对于线性方程组 其中 系数矩阵 未知量向量 常数项
determinantal 行列式的记号 经过n-1次 根据Cramer(克莱姆)法则,若 若用初等变换法求解,则对其增广矩阵作行初等变换:
即 ------------(2) 同解 以上求解线性方程组的方法称为Gauss消去法 都是三角 形方程组 则 上述方法称为直接三角形分解法
不论是Gauss消去法还是直接三角形分解法, 最都归结为解三角形方程组 二、三角形线性方程组的解法 若记 下三角形线性方程组 上三角形线性方程组
回代方向 即
回 代 方 向 其解为:
7.1.2 Gauss消去法 一、消元与回代计算 对线性方程组 对其增广矩阵施行行初等变换:
二、Gauss消去法的运算量 计算机作乘除运算所耗时间要远远多于加减运算 且在一个算法中,加减运算和乘除运算次数大体相当 故在衡量一个算法的运算量时只需统计乘除的运算次数 乘法次数: 除法次数:
全部回代过程需作乘除法的总次数为 于是Gauss消去法的乘除法运算总的次数为 数级
Gauss消去法乘除法约为2700次 而如果用Cramer法则的乘除法运算次数约为 用行列式定义 或 用行列式性质
7.1.3 Gauss列主元消去法 一、Gauss列主元消去法的引入 用Gauss消去法解线性方程组(用3位十进制浮 点数计算) 例1. 解: 本方程组的精度较高的解为 用Gauss消去法求解(用3位十进制浮点数计算)
主元 9999 回代后得到 与精确解相比,该结果相当糟糕 究其原因,在求行乘数时用了很小的数0.0001作除数
如果在求解时将1,2行交换,即 0.9999 回代后得到 这是一个相当不错的结果
例2. 解线性方程组(用8位十进制尾数的浮点数计算) 这个方程组和例1一样,若用Gauss消去法计算会有 小数作除数的现象,若采用换行的技巧,则可避免 解:
绝对值最大 不需换行
经过回代后可得 事实上,方程组的准确解为
例2所用的方法是在Gauss消去法的基础上,利用换行例2所用的方法是在Gauss消去法的基础上,利用换行 避免小主元作除数,该方法称为Gauss列主元消去法 二、Gauss消元过程与系数矩阵的分解 1.Gauss消去法消元过程的矩阵描述 行变换相 当于左乘 初等矩阵 由于
令 则 显然若令
则有 因此 从而 故
即 顺序主元 且
定义1.不带行交换的Gauss 消去法的消元过程,产生 一个单位下三角矩阵L和一个上三角矩阵U,即 该过程称之为 由上述分析不难得到
Gauss消去法 可以执行 定理1. 在定理中,可能注意到 可能存在
2.Gauss列主元消去法消元过程的矩阵描述 由于Gauss列主元消去法每一步都要选取列主元,因 此不可避免要进行行交换 即 表示不换行 初等矩阵
因此,Gauss列主元消去法的消元过程为 : 显然 上三 角阵 仍然为单位 下三角矩阵
初等矩阵的乘积,称为排列阵 则 推广到一般情形 仍然为单位 下三角矩阵 令 则 单位下三角阵与上三角阵的乘积
综合以上讨论,有 定理2. 请作出Gauss列主元消去法的程序(用Matlab语言) 已编程序gaussliezhuyuan.m
三、Gauss列主元消去法的算法设计 开始 (一) 流程图 换行 消元 输出无解信息 停机 回代求解
(二) 自然语言 选主元
换行 消元
注意: 上述过程中的储存空间需要: 储存空间需要较大
(三) 自然语言的改进 选主元
换行 消元
7.2 三角分解法 一、基本的三角分解法(Doolittle法)