数值分析复习--- 第六章 解线性方程组的迭代法
- 格式:pdf
- 大小:524.13 KB
- 文档页数:50
课后习题解答第一章绪论习题一1.设x>0,x*的相对误差为δ,求f(x)=ln x的误差限。
解:求lnx的误差极限就是求f(x)=lnx的误差限,由公式()有已知x*的相对误差满足,而,故即2.下列各数都是经过四舍五入得到的近似值,试指出它们有几位有效数字,并给出其误差限与相对误差限。
解:直接根据定义和式()(1.2.3)则得有5位有效数字,其误差限,相对误差限有2位有效数字,有5位有效数字,3.下列公式如何才比较准确?〔1〕〔2〕解:要使计算较准确,主要是避免两相近数相减,故应变换所给公式。
〔1〕〔2〕4.近似数x*=0.0310,是 3 位有数数字。
5.计算取,利用:式计算误差最小。
四个选项:第二、三章插值与函数逼近习题二、三1. 给定的数值表用线性插值与二次插值计算ln0.54的近似值并估计误差限. 解:仍可使用n=1与n=2的Lagrange插值或Newton插值,并应用误差估计〔5.8〕。
线性插值时,用0.5与0.6两点,用Newton插值误差限,因,故二次插值时,用0.5,0.6,0.7三点,作二次Newton插值误差限,故2. 在-4≤x≤4上给出的等距节点函数表,若用二次插值法求的近似值,要使误差不超过,函数表的步长h 应取多少?解:用误差估计式〔5.8〕,令因得3. 若,求和.解:由均差与导数关系于是4. 若互异,求的值,这里p≤n+1.解:,由均差对称性可知当有而当P=n+1时于是得5. 求证.解:解:只要按差分定义直接展开得6. 已知的函数表求出三次Newton均差插值多项式,计算f(0.23)的近似值并用均差的余项表达式估计误差.解:根据给定函数表构造均差表由式(5.14)当n=3时得Newton均差插值多项式N3(x)=1.0067x+0.08367x(x-0.2)+0.17400x(x-0.2)(x-0.3) 由此可得f(0.23) N3(0.23)=0.23203由余项表达式(5.15)可得由于7. 给定f(x)=cosx的函数表用Newton等距插值公式计算cos 0.048与cos 0.566的近似值并估计误差解:先构造差分表计算,用n=4得Newton前插公式误差估计由公式〔5.17〕得其中计算时用Newton后插公式〔 5.18)误差估计由公式〔5.19〕得这里仍为0.5658.求一个次数不高于四次的多项式p(x),使它满足解:这种题目可以有很多方法去做,但应以简单为宜。
数值分析--第6章解线性方程组的迭代法第6章 解线性方程组的迭代法直接方法比较适用于中小型方程组。
对高阶方程组,即使系数矩阵是稀疏的,但在运算中很难保持稀疏性,因而有存储量大,程序复杂等不足。
迭代法则能保持矩阵的稀疏性,具有计算简单,编制程序容易的优点,并在许多情况下收敛较快。
故能有效地解一些高阶方程组。
1 迭代法概述迭代法的基本思想是构造一串收敛到解的序列,即建立一种从已有近似解计算新的近似解的规则。
由不同的计算规则得到不同的迭代法。
迭代法的一般格式(1)()(1)()(,,,),0,1,k k k k m kF k +--==x x x x式中(1)k +x 与()(1)(),,,k k k m --x x x 有关,称为多步迭代法。
若(1)k +x 只与()k x 有关,即(1)()(),0,1,k k kF k +==x x称为单步迭代法。
再设kF 是线性的,即(1)(),0,1,k kk kk +=+=x B x f式中n nk ⨯∈B R ,称为单步线性迭代法。
kB 称为迭代矩阵。
若k B 和kf 与k 无关,即(1)(),0,1,k k k +=+=x Bx f称为单步定常线性迭代法。
本章主要讨论具有这种形式的各种迭代方法。
1.1 向量序列和矩阵序列的极限由于nR 中的向量可与nR 的点建立——对应关系,由点列的收敛概念及向量范数的等价性,可得到向量序列的收敛概念。
定义6.1 设(){}k x 为n R 中的向量序列,nx R ∈,如果()lim 0k k x x →∞-=其中为向量范数,则称序列(){}k x 收敛于x ,记为()lim k k x x →∞=。
定理6.1 nR 中的向量序列(){}k x 收敛于nR 中的向量x 当且仅当()lim (1,2,,)k i i k x x i n →∞==其中()()()()1212(,,,),(,,,)k k k k T Tnnx x x x x x x x ==。
1 / 8数值分析实验六:解线性方程组的迭代法2016113 张威震1 病态线性方程组的求解1.1 问题描述理论的分析表明,求解病态的线性方程组是困难的。
实际情况是否如此,会出现怎样的现象呢?实验内容:考虑方程组Hx=b 的求解,其中系数矩阵H 为Hilbert 矩阵,,,1(),,,1,2,,1i j n n i j H h h i j n i j ⨯===+-这是一个著名的病态问题。
通过首先给定解(例如取为各个分量均为1)再计算出右端b 的办法给出确定的问题。
实验要求:(1)选择问题的维数为6,分别用Gauss 消去法、列主元Gauss 消去法、J 迭代法、GS 迭代法和SOR 迭代法求解方程组,其各自的结果如何?将计算结果与问题的解比较,结论如何?(2)逐步增大问题的维数(至少到100),仍然用上述的方法来解它们,计算的结果如何?计算的结果说明了什么?(3)讨论病态问题求解的算法1.2 算法设计首先编写各种求解方法的函数,Gauss 消去法和列主元高斯消去法使用实验5中编写的函数myGauss.m 即可,Jacobi 迭代法函数文件为myJacobi.m ,GS 迭代法函数文件为myGS.m ,SOR 方法的函数文件为mySOR.m 。
1.3 实验结果1.3.1 不同迭代法球求解方程组的结果比较选择H 为6*6方阵,方程组的精确解为x* = (1, 1, 1, 1, 1, 1)T ,然后用矩阵乘法计算得到b ,再使用Gauss 顺序消去法、Gauss 列主元消去法、Jacobi 迭代法、G-S 迭代法和SOR 方法分别计算得到数值解x1、x2、x3、x4,并计算出各数值解与精确解之间的无穷范数。
Matlab 脚本文件为Experiment6_1.m 。
迭代法的初始解x 0 = (0, 0, 0, 0, 0, 0)T ,收敛准则为||x(k+1)-x(k)||∞<eps=1e-6,SOR方法的松弛因子选择为w=1.3,计算结果如表1。