文档库 最新最全的文档下载
当前位置:文档库 › 数值计算方法思考题

数值计算方法思考题

数值计算方法思考题
数值计算方法思考题

数值计算方法思考题

第一章 预篇

1.什么是数值分析?它与数学科学和计算机的关系如何?

2.何谓算法?如何判断数值算法的优劣?

3.列出科学计算中误差的三个来源,并说出截断误差与舍入误差的区别。

4.什么是绝对误差与相对误差?什么是近似数的有效数字?它与绝对误差和相对误差有何关系?

5.什么是算法的稳定性?如何判断算法稳定?为什么不稳定算法不能使用?

6.判断如下命题是否正确:

(1)一个问题的病态性如何,与求解它的算法有关系。

(2)无论问题是否病态,好的算法都会得到好的近似解。

(3)解对数据的微小变化高度敏感是病态的。

(4)高精度运算可以改善问题的病态性。

(5)用一个稳定的算法计算良态问题一定会得到好的近似值。

(6)用一个收敛的迭代法计算良态问题一定会得到好的近似值。 (7)两个相近数相减必然会使有效数字损失。

(8)计算机上将1000个数量级不同的数相加,不管次序如何结果都是一样的。

7.考虑二次代数方程的求解问题

ax 2 + bx + c = 0.

下面的公式是熟知的

a

ac b b x 242-±-=. 与之等价地有

ac b b c x 422--=

.

对于 a = 1, b = -100 000 000 , c = 1

应当如何选择算法?

8.指数函数有著名的级数展开

++++=!3!213

2x x x e x

如果对x < 0用上述的级数近似计算指数函数的值,这样的算法结果是否会好?为什么?

9.考虑数列x i , i = 1,…, n , 它的统计平均值定义为

∑==n i i x x x 1

1 它的标准差

1

12)(11??????--=∑-n i i x x n σ 数学上它等价于

1

12211???????????? ??--=∑=n i i x n x n σ 作为标准差的两种算法,你如何评价它们的得与失?

第二章 非线性方程求根

1.判断如下命题是否正确:

(a) 非线性方程的解通常不是唯一的;

(b) Newton 法的收敛阶高于割线法;

(c) 任何方法的收敛阶都不可能高于Newton 法;

(d) Newton 法总是比割线法更节省计算时间;

(e) 如果函数的导数难于计算,则应当考虑选择割线法;

(f) Newton 法是有可能不收敛;

(g) 考虑简单迭代法x k +1 = g (x k ),其中x * = g (x *)。如果| g '(x *) | <1,则对任意的初

始值,上述迭代都收敛。

2.什么叫做一个迭代法是二阶收敛的?Newton 法收敛时,它的收敛阶是否总是二阶

的?

3.求解单变量非线性方程的单根,下面的3种方法,它们的收敛阶由高到低次序如何? (a) 二分法

(b) Newton 方法

(c) 割线方法

4.求解单变量非线性方程的解,Newton 法和割线方法,它们每步迭代分别需要计算几

次函数值和导数值?

5.求解某个单变量非线性方程,如果计算函数值和计算导数值的代价相当,Newton

法和割线方法它的优劣应如何评价?

第三章 解线性方程组的直接法

1.用高斯消去法为什么要选主元?哪些方程组可以不选主元?

2.高斯消去法与LU 分解有什么关系?用它们解线性方程组Ax = b 有何不同?A 要满足什么条件?

3.乔列斯基分解与LU 分解相比,有什么优点?

4.哪种线性方程组可用平方根法求解?为什么说平方根法计算稳定?

5.什么样的线性方程组可用追赶法求解并能保证计算稳定?

6.何谓向量范数?给出三种常用的向量范数。

7.何谓矩阵范数?何谓矩阵的算子范数?给出矩阵A = (a i j )的三种范数|| A ||1,|| A ||2,|| A ||∞,|| A ||1与|| A ||2哪个更容易计算?为什么?

8.什么是矩阵的条件数?如何判断线性方程组是病态的?

9.满足下面哪个条件可判定矩阵接近奇异?

(1)矩阵行列式的值很小。

(2)矩阵的范数小。

(3)矩阵的范数大。

(4)矩阵的条件数小。

(5)矩阵的元素绝对值小。

10.判断下列命题是否正确:

(1)只要矩阵A 非奇异,则用顺序消去法或直接LU 分解可求得线性方程组Ax = b 的解。

(2)对称正定的线性方程组总是良态的。

(3)一个单位下三角矩阵的逆仍为单位下三角矩阵。

(4)如果A 非奇异,则Ax = b 的解的个数是由右端向量b 的决定的。

(5)如果三对角矩阵的主对角元素上有零元素,则矩阵必奇异。

(6)范数为零的矩阵一定是零矩阵。

(7)奇异矩阵的范数一定是零。

(8)如果矩阵对称,则|| A ||1 = || A ||∞ 。

(9)如果线性方程组是良态的,则高斯消去法可以不选主元。

(10)在求解非奇异性线性方程组时,即使系数矩阵病态,用列主元消去法产生的误差也很小。

(11)|| A ||1 = || A T ||∞ 。

(12)若A 是n ? n 的非奇异矩阵,则

)(cond )(cond 1-=A A 。

(13)一个奇异的矩阵不可能有LU 分解;

(14)一个非奇异的对称矩阵,如果不是正定的则不能有Cholesky 分解。

11.假设矩阵A 有cond(A) = 1,从而A 是好条件的。问下面的哪些矩阵条件数也一定是1?

(a )cA ,其中c 是任意的非零常数; (d )QA ,其中Q 是任意的正交矩阵;

(b )DA ,其中D 是非奇异的对角矩阵; (e )A 的逆矩阵;

(c )BA ,其中B 是任意的非奇异矩阵; (f )A 的转置矩阵。

第四章 解线性方程组的迭代法

1.写出求解线性方程组Ax = b 的迭代法的一般形式。并给出它收敛的充分必要条件。

2.给出迭代法f Bx x k k +=+)()1(收敛的充分条件、误差估计及其收敛速度。

3.写出解线性方程组Ax = b 的雅可比迭代法与高斯-塞德尔迭代法的计算公式,它们的基本区别是什么?

4.何谓矩阵A 严格对角占优?何谓A 不可约?

5.将雅可比迭代、高斯-塞德尔迭代和具有最优松弛参数的SOR 迭代,按收敛快慢排列。

6.判断下列命题是否正确。

(1)雅可比迭代与高斯-塞德尔迭代同时收敛且后者比前者收敛快。

(2)高斯-塞德尔迭代是SOR 迭代的特殊情形。

(3)A 对称正定则SOR 迭代一定收敛。

(4)A 为严格对角占优或不可约对角占优,则解线性方程组Ax = b 的雅可比迭代与高斯-塞德尔迭代均收敛。

(5)A 对称正定则雅可比迭代与高斯-塞德尔迭代都收敛。

(6)SOR 迭代法收敛,则松弛参数0< ω < 2。

点。

第五章 矩阵特征值和特正向量的求解

1.判断如下命题是否正确:

(a) 对应于给定特征值的特征向量是唯一的;

(b) 每个n 阶的方阵一定有n 个线性无关的特征向量;

(c) 实矩阵的特征值一定是实的;

(d) 一个n 阶方阵奇异的充分必要条件是:0是该矩阵的特征值;

(e) 任意的n 阶的方阵,一定与某个对角矩阵相似;

(f) 如果两个n 阶方阵的特征值相同,这两个矩阵一定相似;

(g) 一个n 阶方阵的所有特征值都为0,这个矩阵一定是零矩阵;

2.下面各类的任意n 阶矩阵,哪些矩阵的特征值一定可以用有限的代数运算精确求解? (a)实对称矩阵; (d)上三角矩阵;

(b)对角矩阵; (e)上Hessenberg 矩阵;

(c)三对角矩阵; (f)没有重特征值的实矩阵。

3.对非奇异的矩阵,将下面各算法的复杂度由低到高排列出来:

(a)计算矩阵的所有特征值和特征向量;

(b)用列主元Gauss 消去法计算矩阵的LU 分解;

(c)计算矩阵的逆;

(d)回带求解系数矩阵为上三角的线性方程组。

4.求解特征值问题的条件数与求解线性方程组问题的条件数是否相同,两者分别是什么?实对称矩阵的特征值问题总是良态的吗?

第六章 函数插值

1.什么是拉格朗日插值基函数?它们是如何构造的?有何重要性质?

2.什么是牛顿基函数?它与单项式基{1, x , …, x n }有何不同?

3.什么是函数的n 价均差?它有何重要性质?

4.写出n + 1个点的拉格朗日插值多项式与牛顿均差插值多项式。它们有何异同?

5.用上题给出的三种不同基底构造插值多项式的方法确定基函数系数,试按工作量由低到高给出排序。

6.给出插值多项式的余项表达式。如何用它估计截断误差?

7.埃尔米特插值与一般函数插值区别是什么?什么是泰勒多项式?它是什么条件下的插值多项式?

8.为什么高次多项式插值不能令人满意?分段低次插值与单个高次多项式插值相比有何优点?

9.三次样条插值三次分段埃尔米特插值有何区别?哪一个更优越?请说明理由。

10.确定n + 1个节点的三次样条插值函数要多少个参数?为确定这些参数,需加上什么条件?

11.判断下列命题是否正确?

(1)对给定的数据作插值,插值函数个数可以任意多。

(2)如果给定点集的多项式插值是唯一的,则其多项式表达式也是唯一的。

(3)l i (x ) (i = 0, 1,…, n )是关于节点x i ( i =0, 1, …, n )的拉格朗日插值基函数,则对任何次数不大于n 的多项式P (x )都有)()()(0x P x P x l i n

i i =∑=。 (4)当f (x )为连续函数,节点x i (i = 0, 1,…, n )为等距节点,构造拉格朗日插值多项式L n

(x ),则n 越大L n (x )越接近f (x ).

(5)同上题,若构造三次样条插值函数S n (x ),则n 越大得到的三次样条函数S n (x )越接近f (x ).

(6)高次拉格朗日插值是很常用的。

(7)函数f (x )的牛顿插值多项式P n (x ),如果f (x )的各阶导数均存在,则当x i →x 0 (i = 1, 2,…, n ) 时,P n (x )就是f (x )在x 0点的泰勒多项式。

12.为更好地保持被逼近函数的凸性,你选择下述哪种方法:

(a )Lagrange 插值多项式;

(b )3次样条插值函数;

(c )3次Hermite 插值函数。

13.数据量特别大时,你选择下述哪种方法:

(a )Lagrange 插值多项式;

(b )3次Hermite 插值函数;

(c )3次样条插值函数;

(d )最小二乘拟合。

第七章 函数逼近

1.f , g ∈C [a , b ],它们的内积是什么?如何判断函数族{? 0, ? 1, …, ? n }∈C [a , b ]在[a ,b ]上线性无关?

2.什么是函数f ∈C [a , b ]在区[a , b ]上的n 次最佳一致逼近多项式?

3.什么是f 在[a , b ] 上的n 次最佳平方逼近多项式?什么是数据{}m

i f 0的最小二乘曲线拟合?

4.什么是[ a , b ]上带权ρ (x )的正交多项式?什么是[ -1, 1 ]上的勒让德多项式?它有什么重要性质?

5.什么是切比雪夫多项式?它有什么重要性质?

6.用切比雪夫多项式零点做插值得到的插值多项式与拉格朗日插值有何不同?

7.什么是最小二乘拟合的法方程?用多项式做拟合曲线时,当次数n 较大时为什么不直接求解法方程?

8.计算有理分式R mn (x )为什么要化为连分式?

9.哪种类型函数用三角插值比用多项式插值或分段多项式插值更合适?

12.判断下列命题是否正确?

(1)任何f (x ) ∈C [a , b ]都能找到n 次多项式P n (x ) ∈ H n ,使| f (x ) - P n (x ) | ≤ ε ( ε 为任给的误差限)。

(2)n n H x P ∈)(*是f (x )在[ a , b ]上的最佳一致逼近多项式,则)()(lim *

x f x P n n =∞

→对],[b a x ∈?成立。

(3)f (x ) ∈C [a , b ]在[a , b ]上的最佳平方逼近多项式P n (x ) ∈ H n 则)()(lim x f x P n n =∞

→。 (4))(P ~

x n 是首项系数为1的勒让德多项式,Q n (x ) ∈ H n 是任一首项系数为1的多项式,

则??--1

121

12d )(d )](P ~[x x Q x x n n 。

(5))(T ~x n 是[-1 , 1]上首项系数为1的切比雪夫多项式。Q n (x ) ∈ H n 是任一首项系数为1的多项式,则

.)(max )(~max 1

111x Q x T n x n x ≤≤-≤≤-≤ (7)当数据量很大时用最小二乘拟合比用插值好。

第八章 数值积分

1.给出计算积分的梯形公式及中矩形公式,说明它们的几何意义。

2.什么是求积公式的代数精确度?梯形公式及中矩形公式的代数精确度是多少?

3.对给定求积公式的节点,给出两种计算求积系数的方法。

4.什么是牛顿-柯特斯求积?它的求积节点如何分布?它的代数精确度是多少?

5.什么是辛普森求积公式?它的余项是什么?它的代数精确度是多少?

6.什么是复合求积法?给出复合梯形公式及其余项表达式。

7.给出复合辛普森公式及其余项表达式。如何估计它的截断误差?

8.什么是龙贝格求积?它有什么优点?

9.什么是高斯型求积公式?它的求积节点是如何确定的?它的代数精确度是多少?为何称它是具有最高代数精确度的求积公式?

10.牛顿-柯特斯求积和高斯求积的节点分布有什么不同?对同样数目的节点,两种求积方法哪个更精确?为什么?

11.描述自动求积的一般步骤。怎样得到所需的误差估计?

12.判断如下命题是否正确:

(1)如果被积函数在区间[a , b ]上连续,则它的黎曼(Riemann )积分一定存在。

(2)数值求积公式计算总是稳定的。

(3)代数精确度是衡量算法稳定性的一个重要指标。

(4)n + 1个点的插值型求积公式的代数精确度至少是n 次,最多可达到2n + 1次。

(5)高斯求积公式只能计算区间[-1, 1]上的积分。

(6)求积公式的阶数与所依据的插值多项式的次数一样。

(7)梯形公式与两点高斯公式精度一样。

(8)高斯求积公式系数都是正数,故计算总是稳定的。

(9)由于龙贝格求积节点与牛顿-柯特斯求积节点相同,因此它们的精度相同。

(10)阶数不同的高斯求积公式没有公共节点。

13.用n 个点的Newton-Cotes 方法计算函数

2

2511)(x x f += 区间[-1, 1]上的积分,点数n 增加时,计算的精度是否会提高?

第九章 常微分方程数值解

1.判断如下命题是否正确:

(a )常微分方程初值问题的解,当右端函数可导时一定存在唯一解;

(b )一个算法局部截断误差的阶就等于它全局误差的阶;

(c )算法的阶越高,由它得到的数值计算结果就越精确;

(d)显式方法的突出优点是收敛速度快,收敛阶高;

(e)一个好的算法,或者稳定性好,或者收敛阶高;

(f)隐式方法的优点是计算稳定性好,缺点是每步计算的代价高;2.多步法的算法为什么还要使用单步方法?

3.多步法与经典的Runge-Kutta方法相比,在下面的性质上谁更有优势:(a)局部截断误差容易分析;

(b)易于改变步长;

(c)计算容易启动;

(d)易于程序实现;

数值计算实验课题目

数值实验课试题 本次数值实验课结课作业,请按题目要求内容写一篇文章。按题目要求 人数自由组合,每组所选题目不得相同(有特别注明的题目除外)。试题如下: 1)解线性方程组的Gauss 消去法和列主元Gauss 消去法(2人)/*张思珍,巩艳华*/ 用C 语言将不选主元和列主元Gauss 消去法编写成通用的子程序,然后用你编写的程序求解下列84阶的方程组 ???? ?????? ? ??=??????????? ????????????? ? ?1415151515768 168 168 168 1681684 8382321 x x x x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编 3.《数值分析简明教程》,王能超编 2)解线性方程组的平方根法(4人)/*朱春成、黄锐奇、张重威、章杰*/ 用C 语言将平方根法和改进的平方根法编写成通用的子程序,然后用你编写的程序求解对称正定方程组b Ax =,其中 (1)b 随机的选取,系数矩阵为100阶矩阵 ?????? ???? ? ? ?101 1101 1101 1101 1101110 ; (2)系数矩阵为40阶的Hilbert 矩阵,即系数矩阵A 的第i 行第j 列元素为 1 1-+= j i a ij ,向量b 的第i 个分量为∑=-+ = n j i j i b 1 1 1. 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编

3.《数值分析简明教程》,王能超编 3)三对角线方程组的追赶法(3人)/*黄佳礼、唐伟、韦锡倍*/ 用C 语言将三对角线方程组的追赶法法编写成通用的子程序,然后用你编写的程序求解如下84阶三对角线方程组 ???? ?????? ? ??=??????????? ????????????? ? ?1415151515768 168 168 168 16816 84 8382321 x x x x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值分析简明教程》,王能超编 4)线性方程组的Jacobi 迭代法(3人)/*周桂宇、杨飞、李文军*/ 用C 语言将Jacobi 迭代法编写成独立的子程序,并用此求解下列方程组, 精确到小数点后5位 ???? ? ??=????? ??????? ? ?-149012 2111221 3 2 1 x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编 3.《数值分析简明教程》,王能超编 5)线性方程组的Gauss-Seidel 迭代法(3人)/*张玉超、范守平、周红春*/ 用C 语言将Gauss-Seidel 迭代法编写成独立的子程序,并用此求解下列方程组,精确到小数点后5位 ???? ? ??=????? ??????? ? ?--39721 1111112 3 2 1 x x x 参考书目: 1.《计算机数值方法》,施吉林、刘淑珍、陈桂芝编 2.《数值线性代数》,徐树方、高立、张平文编 3.《数值分析简明教程》,王能超编 6)解线性方程组的最速下降法法(2人)/*赵育辉、阿热孜古丽*/ 用C 语言将最速下降法编写成通用的子程序,然后用你编写的程序求解对称

数值分析大作业-三、四、五、六、七

大作业 三 1. 给定初值 0x 及容许误差 ,编制牛顿法解方程f (x )=0的通用 程序. 解:Matlab 程序如下: 函数m 文件:fu.m function Fu=fu(x) Fu=x^3/3-x; end 函数m 文件:dfu.m function Fu=dfu(x) Fu=x^2-1; end 用Newton 法求根的通用程序Newton.m clear; x0=input('请输入初值x0:'); ep=input('请输入容许误差:'); flag=1; while flag==1 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)

while flag1==1 && m<=10^3 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)=ep flag=0; end end fprintf('最大的sigma 值为:%f\n',sigma); 2.求下列方程的非零根 5130.6651()ln 05130.665114000.0918 x x f x x +??=-= ?-???解:Matlab 程序为: (1)主程序 clear clc format long x0=765; N=100; errorlim=10^(-5); x=x0-f(x0)/subs(df(),x0); n=1; while nerrorlim n=n+1; else break ; end x0=x; end disp(['迭代次数: n=',num2str(n)]) disp(['所求非零根: 正根x1=',num2str(x),' 负根x2=',num2str(-x)]) (2)子函数 非线性函数f function y=f(x) y=log((513+0.6651*x)/(513-0.6651*x))-x/(1400*0.0918); end

数值分析实验报告1

实验一误差分析 实验1.1(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 其中ε(1.1)和(1.221,,,a a 的输出b ”和“poly ε。 (1(2 (3)写成展 关于α solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。 实验过程: 程序: a=poly(1:20); rr=roots(a); forn=2:21 n form=1:9 ess=10^(-6-m);

ve=zeros(1,21); ve(n)=ess; r=roots(a+ve); -6-m s=max(abs(r-rr)) end end 利用符号函数:(思考题一)a=poly(1:20); y=poly2sym(a); rr=solve(y) n

很容易的得出对一个多次的代数多项式的其中某一项进行很小的扰动,对其多项式的根会有一定的扰动的,所以对于这类病态问题可以借助于MATLAB来进行问题的分析。 学号:06450210 姓名:万轩 实验二插值法

曲线拟合的数值计算方法实验

曲线拟合的数值计算方法实验 【摘要】实际工作中,变量间未必都有线性关系,如服药后血药浓度与时间的关系;疾病疗效与疗程长短的关系;毒物剂量与致死率的关系等常呈曲线关系。曲线拟合(curve fitting)是指选择适当的曲线类型来拟合观测数据,并用拟合的曲线方程分析两变量间的关系。曲线直线化是曲线拟合的重要手段之一。对于某些非线性的资料可以通过简单的变量变换使之直线化,这样就可以按最小二乘法原理求出变换后变量的直线方程,在实际工作中常利用此直线方程绘制资料的标准工作曲线,同时根据需要可将此直线方程还原为曲线方程,实现对资料的曲线拟合。常用的曲线拟合有最小二乘法拟合、幂函数拟合、对数函数拟合、线性插值、三次样条插值、端点约束。 关键词曲线拟合、最小二乘法拟合、幂函数拟合、对数函数拟合、线性插值、三次样条插值、端点约束 一、实验目的 1.掌握曲线拟合方式及其常用函数指数函数、幂函数、对数函数的拟合。 2.掌握最小二乘法、线性插值、三次样条插值、端点约束等。 3.掌握实现曲线拟合的编程技巧。 二、实验原理 1.曲线拟合 曲线拟合是平面上离散点组所表示的坐标之间的函数关系的一种数据处理方法。用解析表达式逼近离散数据的一种方法。在科学实验或社会活动中,通过 实验或观测得到量x与y的一组数据对(X i ,Y i )(i=1,2,...m),其中各X i 是彼此不同的。人们希望用一类与数据的背景材料规律相适应的解析表达式,y=f(x,c)来反映量x与y之间的依赖关系,即在一定意义下“最佳”地逼近或 拟合已知数据。f(x,c)常称作拟合模型,式中c=(c 1,c 2 ,…c n )是一些待定参 数。当c在f中线性出现时,称为线性模型,否则称为非线性模型。有许多衡量拟合优度的标准,最常用的一种做法是选择参数c使得拟合模型与实际观测值在

数值分析大作业三 四 五 六 七

大作业 三 1. 给定初值 0x 及容许误差 ,编制牛顿法解方程f (x )=0的通用程序. 解:Matlab 程序如下: 函数m 文件:fu.m function Fu=fu(x) Fu=x^3/3-x; end 函数m 文件:dfu.m function Fu=dfu(x) Fu=x^2-1; end 用Newton 法求根的通用程序Newton.m clear; x0=input('请输入初值x0:'); ep=input('请输入容许误差:');

flag=1; while flag==1 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)

while flag==1 sigma=k*eps; x0=sigma; k=k+1; m=0; flag1=1; while flag1==1 && m<=10^3 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)=ep flag=0;

end end fprintf('最大的sigma 值为:%f\n',sigma); 2.求下列方程的非零根 5130.6651()ln 05130.665114000.0918 x x f x x +?? =-= ?-???解: Matlab 程序为: (1)主程序 clear clc format long x0=765; N=100; errorlim=10^(-5); x=x0-f(x0)/subs(df(),x0); n=1;

数值分析总复习提纲教材

数值分析总复习提纲 数值分析课程学习的内容看上去比较庞杂,不同的教程也给出了不同的概括,但总的来说无非是误差分析与算法分析、基本计算与基本算法、数值计算与数值分析三个基本内容。在实际的分析计算中,所采用的方法也无非是递推与迭代、泰勒展开、待定系数法、基函数法等几个基本方法。 一、误差分析与算法分析 误差分析与算法设计包括这样几个方面: (一)误差计算 1、截断误差的计算 截断误差根据泰勒余项进行计算。 基本的问题是 (1)1 ()(01)(1)! n n f x x n θεθ++<<<+,已知ε求n 。 例1.1:计算e 的近似值,使其误差不超过10-6。 解:令f(x)=e x ,而f (k)(x)=e x ,f (k)(0)=e 0=1。由麦克劳林公式,可知 211(01)2!!(1)! n x x n x x e e x x n n θθ+=+++++<<+ 当x=1时,1 111(01)2! !(1)! e e n n θθ=+++ ++ <<+ 故3 (1)(1)!(1)! n e R n n θ=<++。 当n =9时,R n (1)<10-6,符合要求。此时, e≈2.718 285。 2、绝对误差、相对误差及误差限计算 绝对误差、相对误差和误差限的计算直接利用公式即可。 基本的计算公式是: ①e(x)=x *-x =△x =dx ② *()()()ln r e x e x dx e x d x x x x ==== ③(())()()()e f x f x dx f x e x ''== ④(())(ln ())r e f x d f x = ⑤121212121122121122((,))(,)(,)(,)()(,)()x x x x e f x x f x x dx f x x dx f x x e x f x x e x ''''=+=+ ⑥121212((,)) ((,))(,) f x x f x x f x x εδ=

数值分析第一章绪论习题答案

第一章绪论 1.设0x >,x 的相对误差为δ,求ln x 的误差。 解:近似值* x 的相对误差为* **** r e x x e x x δ-= == 而ln x 的误差为()1ln *ln *ln ** e x x x e x =-≈ 进而有(ln *)x εδ≈ 2.设x 的相对误差为2%,求n x 的相对误差。 解:设()n f x x =,则函数的条件数为'() | |() p xf x C f x = 又1 '()n f x nx -= , 1 ||n p x nx C n n -?∴== 又((*))(*)r p r x n C x εε≈? 且(*)r e x 为2 ((*))0.02n r x n ε∴≈ 3.下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指 出它们是几位有效数字:*1 1.1021x =,*20.031x =, *3385.6x =, * 456.430x =,*57 1.0.x =? 解:*1 1.1021x =是五位有效数字; *20.031x =是二位有效数字; *3385.6x =是四位有效数字; *456.430x =是五位有效数字; *57 1.0.x =?是二位有效数字。 4.利用公式(2.3)求下列各近似值的误差限:(1) * * * 124x x x ++,(2) ***123x x x ,(3) **24/x x . 其中****1234 ,,,x x x x 均为第3题所给的数。 解:

*4 1* 3 2* 13* 3 4* 1 51()1021()1021()1021()1021()102 x x x x x εεεεε-----=?=?=?=?=? *** 124***1244333 (1)()()()() 1111010102221.0510x x x x x x εεεε----++=++=?+?+?=? *** 123*********123231132143 (2)() ()()() 111 1.10210.031100.031385.610 1.1021385.610222 0.215 x x x x x x x x x x x x εεεε---=++=???+???+???≈ ** 24**** 24422 *4 33 5 (3)(/) ()() 11 0.0311056.430102256.43056.430 10x x x x x x x εεε---+≈ ??+??= ?= 5计算球体积要使相对误差限为1,问度量半径R 时允许的相对误差限是多少? 解:球体体积为34 3 V R π= 则何种函数的条件数为 2 3'4343 p R V R R C V R ππ=== (*)(*)3(*)r p r r V C R R εεε∴≈= 又(*)1r V ε=

数值计算方法大作业

目录 第一章非线性方程求根 (3) 1.1迭代法 (3) 1.2牛顿法 (4) 1.3弦截法 (5) 1.4二分法 (6) 第二章插值 (7) 2.1线性插值 (7) 2.2二次插值 (8) 2.3拉格朗日插值 (9) 2.4分段线性插值 (10) 2.5分段二次插值 (11) 第三章数值积分 (13) 3.1复化矩形积分法 (13) 3.2复化梯形积分法 (14) 3.3辛普森积分法 (15) 3.4变步长梯形积分法 (16) 第四章线性方程组数值法 (17) 4.1约当消去法 (17) 4.2高斯消去法 (18) 4.3三角分解法 (20)

4.4雅可比迭代法 (21) 4.5高斯—赛德尔迭代法 (23) 第五章常积分方程数值法 (25) 5.1显示欧拉公式法 (25) 5.2欧拉公式预测校正法 (26) 5.3改进欧拉公式法 (27) 5.4四阶龙格—库塔法 (28)

数值计算方法 第一章非线性方程求根 1.1迭代法 程序代码: Private Sub Command1_Click() x0 = Val(InputBox("请输入初始值x0")) ep = Val(InputBox(请输入误差限ep)) f = 0 While f = 0 X1 = (Exp(2 * x0) - x0) / 5 If Abs(X1 - x0) < ep Then Print X1 f = 1 Else x0 = X1 End If Wend End Sub 例:求f(x)=e2x-6x=0在x=0.5附近的根(ep=10-10)

1.2牛顿法 程序代码: Private Sub Command1_Click() b = Val(InputBox("请输入被开方数x0")) ep = Val(InputBox(请输入误差限ep)) f = 0 While f = 0 X1 = x0 - (x0 ^ 2 - b) / (2 * b) If Abs(X1 - x0) < ep Then Print X1 f = 1 Else x0 = X1 End If Wend End Sub 例:求56的值。(ep=10-10)

数值计算方法复习资料

实用文档 文案大全《数值计算方法》复习资料 第一章数值计算方法与误差第二章非线性方程的数值第三章线性方程组的数值第四章插值与第五数值积分与第六常微分方程的数值解 自测 课程的性质与任务 数值计算方法是一门应用性很强的基础课,在学习高等数学,线性代数和算法语言的基础上,通过本课程的学习及上机实习、使学生正确理解有关的基本概念和理论,掌握常用的基本数值方法,培养应用计算机从事科学与工程计算的能力,为以后的学习及应用打下良好基础。 第一章数值计算方法与误差分析 一考核知识点 误差的来源类型;绝对误差和绝对误差限,相对误差和相对误差限,有效数字;绝对误差的传播。 二复习要求 1. 知道产生误差的主要来源。 2. 了解绝对误差和绝对误差限、相对误差和相对误差限和有效数字等概念以及 它们之间的关系。 3. 知道四则运算中的误差传播公式。

实用文档 文案大全三例题 例1设x*= ?=3.1415926… 近似值x=3.14=0.314×101,即m=1,它的绝对误差是-0.001 592 6…,有 即n=3,故x=3.14有3位有效数字.x=3.14准确到小数点后第2位. 又近似值 x=3.1416,它的绝对误差是0.0000074…,有 即m=1,n=5,x=3.1416有5位有效数字. 而近似值x=3.1415,它的绝对误差是0.0000926…,有 即m=1,n=4,x=3.1415有4位有效数字. 这就是说某数有s位数,若末位数字是四舍五入得到的,那么该数有s位有效数字; 例2 指出下列各数具有几位有效数字,及其绝对误差限和相对误差限: 2.000 4 -0.002 00 9 000 9 000.00 解因为x1=2.000 4=0.200 04×101, 它的绝对误差限0.000 05=0.5×10 1―5,即m=1,n=5,故x=2.000 4有5位有效数字. a1=2,相对误差限 x2=-0.002 00,绝对误差限0.000 005,因为m=-2,n=3,x2=-0.002 00有 3位有效数字. a1=2,相对误差限?r= =0.002 5 实用文档 文案大全x3=9 000,绝对误差限为0.5×100,因为m=4, n=4, x3=9 000有4位有 效数字,a=9,相对误差限?r==0.000 056 x4=9 000.00,绝对误差限0.005,因为m=4,n=6,x4=9 000.00有6位有效数 字,相对误差限为?r==0.000 000 56 由x3与x4可以看到小数点之后的0,不是可有可无的,它是有实际意义的. 例3 ln2=0.69314718…,精确到10-3的近似值是多少? 解精确到10-3=0.001,意旨两个近似值x1,x2满足,由于近 似值都是四舍五入得到的,要求满足,近似值的绝对误差限应是?=0.0005,故至少要保留小数点后三位才可以。故ln2?0.693。

太原理工大学数值计算方法实验报告

本科实验报告 课程名称:计算机数值方法 实验项目:方程求根、线性方程组的直接解 法、线性方程组的迭代解法、代数插值和最 小二乘拟合多项式 实验地点:行勉楼 专业班级: ******** 学号: ********* 学生姓名: ******** 指导教师:李誌,崔冬华 2016年 4 月 8 日

y = x*x*x + 4 * x*x - 10; return y; } float Calculate(float a,float b) { c = (a + b) / 2; n++; if (GetY(c) == 0 || ((b - a) / 2) < 0.000005) { cout << c <<"为方程的解"<< endl; return 0; } if (GetY(a)*GetY(c) < 0) { return Calculate(a,c); } if (GetY(c)*GetY(b)< 0) { return Calculate(c,b); } } }; int main() { cout << "方程组为:f(x)=x^3+4x^2-10=0" << endl; float a, b; Text text; text.Getab(); a = text.a; b = text.b; text.Calculate(a, b); return 0; } 2.割线法: // 方程求根(割线法).cpp : 定义控制台应用程序的入口点。// #include "stdafx.h" #include"iostream"

心得体会 使用不同的方法,可以不同程度的求得方程的解,通过二分法计算的程序实现更加了解二分法的特点,二分法过程简单,程序容易实现,但该方法收敛比较慢一般用于求根的初始近似值,不同的方法速度不同。面对一个复杂的问题,要学会简化处理步骤,分步骤一点一点的循序处理,只有这样,才能高效的解决一个复杂问题。

数值分析期末考试复习题及其答案.doc

数值分析期末考试复习题及其答案 1. 已知325413.0,325413* 2* 1==X X 都有6位有效数字,求绝对误差限。(4分) 解: 由已知可知,n=6 5.01021 ,0,6,10325413.0016*1=?= =-=?=ε绝对误差限n k k X 2分 620* 21021,6,0,10325413.0-?=-=-=?=ε绝对误差限n k k X 2分 2. 已知?????=001A 220 - ???? ?440求21,,A A A ∞ (6分) 解: {},88,4,1max 1==A 1分 {},66,6,1max ==∞A 1分 () A A A T max 2λ= 1分 ?????=001A A T 420 ?? ?? ? -420?????001 220 - ?????440=?????001 080 ???? ?3200 2分 {}3232,8,1max )(max ==A A T λ 1分 24322==A 3. 设3 2 )()(a x x f -= (6分) ① 写出f(x)=0解的Newton 迭代格式 ② 当a 为何值时,)(1k k x x ?=+ (k=0,1……)产生的序列{}k x 收敛于2 解: ①Newton 迭代格式为: x a x x x a x a x x a x x x f x f x x k k k k k k k k k k 665)(665)(6)()(')(2 2 32 1 += +=---=-=+? 3分

②时迭代收敛即当222,112 10)2(',665)('2<<-<-=-=a a x a x ?? 3分 4. 给定线性方程组Ax=b ,其中:? ??=1 3A ??? 22,??????-=13b 用迭代公式)()()()1(k k k Ax b x x -+=+α(k=0,1……)求解Ax=b ,问取什么实数α,可使迭代收 敛 (8分) 解: 所给迭代公式的迭代矩阵为?? ? --? ??--=-=ααααα21231A I B 2分 其特征方程为 0) 21(2)31(=----= -αλα ααλλB I 2分 即,解得αλαλ41,121-=-= 2分 要使其满足题意,须使1)(

数值计算方法实验5

实验报告 学院(系)名称: 主程序部分列选主元部分

实验结果: 一.列主元消去法 输入各个数据,最终使用列选主元法,得到结果为:x1=x2=x3=1二.高斯-赛德尔迭代法 输入各个数据,输出每一步迭代数据,最终结果为:x1=0.285716,附录(源程序及运行结果) 一.列主元高斯消去法 #include #include void print(double a[3][3],int n,double b[3]){ printf("输出矩阵:\n"); for(int i=0;ifabs(d)){ d=a[i][k]; l=i; } i++; } printf("选出主元:%lf\n",d); if(d==0) printf("矩阵奇异!\n"); else if(l!=k){ for(int j=k;j

数值分析大作业

数值分析报大作业 班级:铁道2班 专业:道路与铁道工程 姓名:蔡敦锦 学号:13011260

一、序言 该数值分析大作业是通过C语言程序编程在Microsoft Visual C++ 6.0编程软件上运行实现的。本来是打算用Matlab软间来计算非线性方程的根的。学习Matlab也差不多有一个多月了,感觉自己编程做题应该没什么问题了;但是当自己真心的去编程、运行时才发现有很多错误,花了一天时间修改、调试程序都没能得到自己满意的结果。所以,我选择了自己比较熟悉的C程序语言来编程解决非线性的求值问题,由于本作业是为了比较几种方法求值问题的收敛速度和精度的差异,选择了一个相对常见的非线性函数来反映其差异,程序运行所得结果我个人比较满意。编写C语言,感觉比较上手,程序出现问题也能比较熟练的解决。最终就决定上交一份C程序语言编程的求值程序了!

二、选题 本作业的目的是为了加深对非线性方程求根方法的二分法、简单迭代法、、牛顿迭代法弦截法等的构造过程的理解;能将各种方法的算法描述正确并且能够改编为程序并在计算机上实现程序的正确合理的运行,能得到自己满意的结果,并且能调试修改程序中可能出现的问题和程序功能的增减修改。本次程序是为了比较各种方法在求解同一非线性方程根时,在收敛情况上的差异。 为了达到上面的条件我选择自己比较熟悉的语言—C语言来编程,所选题目为计算方程f(x)=x3-2x-5=0在区间[2,3]内其最后两近似值的差的绝对值小于等于5 ?的根的几种方法的比较。 110- 本文将二分法、牛顿法、简单迭代法、弦截法及加速收敛法这五种方法在同一个程序中以函数调用的方式来实现,比较简洁明了,所得结果能很好的比较,便于分析;发现问题和得出结论。

数值计算方法复习题2

习题二 1. 已知,求的二次值多项式。 2. 令求的一次插值多项式,并估计插值误差。 解:;,介于x和0,1决定的区间;,当时。 3. 给出函数的数表,分别用线性插值与二次插值求的近似值,并估计截断误差。0.54667,0.000470;0.54714,0.000029 4. 设,试利用拉格朗日余项定理写出以为节点的三次插值多项式。 5. 已知,求及的值。1,0 6. 根据如下函数值表求四次牛顿插值多项式,并用其计算和的近似值。, 7. 已知函数的如下函数值表,解答下列问题(1)试列出相应的差分表;(2)分别写出牛顿向前插值公式和牛顿向后插值公式。 向后插值公式 8. 下表为概率积分的数据表,试问:1)时,积分2)为何值时,积分?。

9. 利用在各点的数据(取五位有效数字),求方程在0.3和0.4之间的根的近似值。0.3376489 10. 依据表10中数据,求三次埃尔米特插值多项式。 11. 依据数表11 项式。 12. 在上给出的等距节点函数表,用分段线性插值求的近似值,要使截断误差不超过,问函数表的步长h应怎样选取? 13. 将区间分成n等分,求在上的分段三次埃尔米特插值多项式,并估计截断误差。 14、给定的数值表

用线性插值与二次插值计算ln0.54的近似值并估计误差限 解:仍可使用n=1及n=2的Lagrange插值或Newton插值,并应用误差估计。线性插值时,用0.5及0.6两点,用Newton插值 误差限,因,故 二次插值时,用0.5,0.6,0.7三点,作二次Newton插值

误差限,故 15、在-4≤x≤4上给出的等距节点函数表,若用二次插值法求的近 似值,要使误差不超过,函数表的步长h应取多少? 解:用误差估计式,

数值计算方法第一章

第一章 绪 论 本章以误差为主线,介绍了计算方法课程的特点,并概略描述了与算法相关的基本概念,如收敛性、稳定性,其次给出了误差的度量方法以及误差的传播规律,最后,结合数值实验指出了算法设计时应注意的问题. §1.1 引 言 计算方法以科学与工程等领域所建立的数学模型为求解对象,目的是在有限的时间段内利用有限的计算工具计算出模型的有效解答。 由于科学与工程问题的多样性和复杂性,所建立的数学模型也是各种各样的、复杂的. 复杂性表现在如下几个方面:求解系统的规模很大,多种因素之间的非线性耦合,海量的数据处理等等,这样就使得在其它课程中学到的分析求解方法因计算量庞大而不能得到计算结果,且更多的复杂数学模型没有分析求解方法. 这门课程则是针对从各种各样的数学模型中抽象出或转化出的典型问题,介绍有效的串行求解算法,它们包括 (1) 非线性方程的近似求解方法; (2) 线性代数方程组的求解方法; (3) 函数的插值近似和数据的拟合近似; (4) 积分和微分的近似计算方法; (5) 常微分方程初值问题的数值解法; (6) 优化问题的近似解法;等等 从如上内容可以看出,计算方法的显著特点之一是“近似”. 之所以要进行近似计算,这与我们使用的工具、追求的目标、以及参与计算的数据来源等因素有关. 计算机只能处理有限数据,只能区分、存储有限信息,而实数包含有无穷多个数据,这样,当把原始数据、中间数据、以及最终计算结果用机器数表示时就不可避免的引入了误差,称之为舍入误差. 我们需要在有限的时间段内得到运算结果,就需要将无穷的计算过程截断, 从而产生截断误差. 如 +++=! 21 !111e 的计算是无穷过程,当用 ! 1 !21!111n e n ++++= 作为e 的近似时,则需要进行有限过程的计算,但产生了 截断误差e e n -.

(完整版)数值计算方法上机实习题答案

1. 设?+=1 05dx x x I n n , (1) 由递推公式n I I n n 1 51+-=-,从0I 的几个近似值出发,计算20I ; 解:易得:0I =ln6-ln5=0.1823, 程序为: I=0.182; for n=1:20 I=(-5)*I+1/n; end I 输出结果为:20I = -3.0666e+010 (2) 粗糙估计20I ,用n I I n n 51 5111+- =--,计算0I ; 因为 0095.05 6 0079.01020 201 020 ≈<<≈??dx x I dx x 所以取0087.0)0095.00079.0(2 1 20=+= I 程序为:I=0.0087; for n=1:20 I=(-1/5)*I+1/(5*n); end I 0I = 0.0083 (3) 分析结果的可靠性及产生此现象的原因(重点分析原因)。 首先分析两种递推式的误差;设第一递推式中开始时的误差为000I I E '-=,递推过程的舍入误差不计。并记n n n I I E '-=,则有01)5(5E E E n n n -==-=-Λ。因为=20E 20020)5(I E >>-,所此递推式不可靠。而在第二种递推式中n n E E E )5 1(5110-==-=Λ,误差在缩小, 所以此递推式是可靠的。出现以上运行结果的主要原因是在构造递推式过程中,考虑误差是否得到控制, 即算法是否数值稳定。 2. 求方程0210=-+x e x 的近似根,要求4 1105-+?<-k k x x ,并比较计算量。 (1) 在[0,1]上用二分法; 程序:a=0;b=1.0; while abs(b-a)>5*1e-4 c=(b+a)/2;

数值计算方法期末复习答案终结版

一、 名词解释 1.误差:设*x 为准确值x 的一个近似值,称**()e x x x =-为近似值*x 的绝对误差,简称误差。 2.有效数字:有效数字是近似值的一种表示方法,它既能表示近似值的大小,又能表示其精确程度。如果近似值*x 的误差限是1 102 n -?,则称*x 准确到小数点后n 位, 并从第一个不是零的数字到这一位的所有数字均称为有效数字。 3. 算法:是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。计算一个数学问题,需要预先设计好由已知数据计算问题结果的运算顺序,这就是算法。 4. 向量范数:设对任意向量n x R ∈r r ,按一定的规则有一实数与之对应,记为||||x r ,若||||x r 满足 (1)||||0x ≥r ,且||||0x =r 当且仅当0x =r ; (2)对任意实数α,都有||||||x αα=r ||||x r ; (3)对任意,n x y R ∈r r r ,都有||||||||||||x y x y +≤+r r r r 则称||||x r 为向量x r 的范数。 5. 插值法:给出函数()f x 的一些样点值,选定一个便于计算的函数形式,如多项式、分段 线性函数及三角多项式等,要求它通过已知样点,由此确定函数()x ?作为()f x 的近似的方法。 6相对误差:设*x 为准确值x 的一个近似值,称绝对误差与准确值之比为近似值* x 的相对误 差,记为* ()r e x ,即** () ()r e x e x x = 7. 矩阵范数:对任意n 阶方阵A ,按一定的规则有一实数与之对应,记为||||A 。若||||A 满足 (1)||||0A ≥,且||||0A =当且仅当0A =; (2)对任意实数α,都有||||||A αα=||||A ; (3)对任意两个n 阶方阵A,B,都有||||||||||||A B A B +≤+; (4)||||||||AB A =||||B 称||||A 为矩阵A 的范数。 8. 算子范数:设A 为n 阶方阵,||||?是n R r 中的向量范数,则0 |||| ||||||||max x Ax A x ≠=r r 是一种矩 阵范数,称其为由向量范数||||?诱导出的矩阵范数,也称算子范数。

数值分析实验报告总结

数值分析实验报告总结 随着电子计算机的普及与发展,科学计算已成为现代科 学的重要组成部分,因而数值计算方法的内容也愈来愈广泛和丰富。通过本学期的学习,主要掌握了一些数值方法的基本原理、具体算法,并通过编程在计算机上来实现这些算法。 算法算法是指由基本算术运算及运算顺序的规定构成的完 整的解题步骤。算法可以使用框图、算法语言、数学语言、自然语言来进行描述。具有的特征:正确性、有穷性、适用范围广、运算工作量少、使用资源少、逻辑结构简单、便于实现、计算结果可靠。 误差 计算机的计算结果通常是近似的,因此算法必有误差, 并且应能估计误差。误差是指近似值与真正值之差。绝对误差是指近似值与真正值之差或差的绝对值;相对误差:是指近似值与真正值之比或比的绝对值。误差来源见表 第三章泛函分析泛函分析概要 泛函分析是研究“函数的函数”、函数空间和它们之间 变换的一门较新的数学分支,隶属分析数学。它以各种学科

如果 a 是相容范数,且任何满足 为具体背景,在集合的基础上,把客观世界中的研究对象抽 范数 范数,是具有“长度”概念的函数。在线性代数、泛函 分析及相关的数学领域,泛函是一个函数,其为矢量空间内 的所有矢量赋予非零的正长度或大小。这里以 Cn 空间为例, Rn 空间类似。最常用的范数就是 P-范数。那么 当P 取1, 2 ,s 的时候分别是以下几种最简单的情形: 其中2-范数就是通常意义下的距离。 对于这些范数有以下不等式: 1 < n1/2 另外,若p 和q 是赫德尔共轭指标,即 1/p+1/q=1 么有赫德尔不等式: II = ||xH*y| 当p=q=2时就是柯西-许瓦兹不等式 般来讲矩阵范数除了正定性,齐次性和三角不等式之 矩阵范数通常也称为相容范数。 象为元素和空间。女口:距离空间,赋范线性空间, 内积空间。 1-范数: 1= x1 + x2 +?+ xn 2-范数: x 2=1/2 8 -范数: 8 =max oo ,那 外,还规定其必须满足相容性: 所以

上海大学_王培康_数值分析大作业

数值分析大作业(2013年5月) 金洋洋(12721512),机自系 1.下列各数都是经过四舍五入得到的近似值,试分别指出它 们的绝对误差限, 相对误差限和有效数字的位数。 X1 =5.420, x 2 =0.5420, x 3=0.00542, x 4 =6000, x 5=50.610? 解:根据定义:如果*x 的绝对误差限 不超过x 的某个数位的半个单位,则从*x 的首位非零数字到该位都是有效数字。 显然根据四舍五入原则得到的近视值,全部都是有效数字。 因而在这里有:n1=4, n2=4, n3=3, n4=4, n5=1 (n 表示x 有效数字的位数) 对x1:有a1=5, m1=1 (其中a1表示x 的首位非零数字,m1表示x1的整数位数) 所以有绝对误差限 143 11 (1)101022 x ε--≤ ?=? 相对误差限 31() 0.510(1)0.00923%5.4201 r x x x εε-?= == 对x2:有a2=5, m2=0 所以有绝对误差限 044 11 (2)101022 x ε--≤ ?=? 相对误差限 42() 0.510(2)0.00923%0.54202 r x x x εε-?= == 对x3:有a3=5, m3=-2 所以有绝对误差限 235 11 (3)101022 x ε---≤ ?=? 相对误差限 53() 0.510(3)0.0923%0.005423 r x x x εε-?= == 对x4:有a4=0, m4=4 所以有绝对误差限 4411(4)1022 x ε-≤?= 相对误差限 4() 0.5 (4)0.0083%6000 4 r x x x εε= = = 对x5:有a5=6, m5=5 所以有绝对误差限 514 11(5)101022 x ε-≤ ?=? 相对误差限 45() 0.510(5)8.3%600005 r x x x εε?= ==

数值分析实验报告-Sor法分析

数值分析实验报告 一、 实验目的 1、会使用Sor 法求解一个线性方程组 2、熟悉matlab 语言并结合原理编程求方程组 3、改变ω的值观察实验结果 4、会分析实验结果 二、实验题目 编制Sor 迭代格式程序进行求解一个线性方程组的迭代计算情况,运行中要选用不同的松弛因子ω进行尝试 三、 实验原理 Jacobi 迭代和seidel 迭代对具体的线性方程组来说,逼近*x 的速度是固定不变的,遇到收敛很慢的情况时就显得很不实用。 Sor 法是一seidel 迭代为基础,并在迭代中引入参数ω以增加迭代选择的灵活性,具体为: ! 用seidel 迭代算出的,)()1()()1(k k J k k J x x x x x -=?++相减得到差向量与再用参数ω乘之再加上 )1()()()1()1()()()1(++++-=?+=k J k k k k k k x x x x x x x x ωωω,即的下一步迭代作为,由seidel 迭代的公式可以得到Sor 法的迭代格式为 n i x a x a b a x x k j n i j ij k j i j ij i ii k i k i ,2,1),()1()(1)1(11)()1( =--+-=∑∑+=+-=+ω ω 式中ω称为松弛因子。 四、 实验内容 用matlab 编程得到Sor 法求线性方程组的算法为: function [x,n]=SOR(A,b,x0,w,eps,M) if nargin==4

eps= ; M = 200; elseif nargin<4 error return : elseif nargin ==5 M = 200; end if(w<=0 || w>=2) error; return; end D=diag(diag(A)); %求A的对角矩阵L=-tril(A,-1); %求A的下三角阵( U=-triu(A,1); %求A的上三角阵B=inv(D-L*w)*((1-w)*D+w*U); f=w*inv((D-L*w))*b; x=B*x0+f; n=1; %迭代次数 while norm(x-x0)>=eps x0=x; x =B*x0+f; n=n+1; if(n>=M) (

相关文档
相关文档 最新文档