东师15春《数值计算》在线作业试卷

东师15春《数值计算》在线作业试卷
东师15春《数值计算》在线作业试卷

东师15春《数值计算》在线作业1

一、单选题:

1.设近似数x1^*=9.2270,x2^*=0.8009都是四舍五入得到的,则相对误差|er(x1^*x2^*)|≤(满分:3)

A. 6.78×10^-6

B. 6.78×10^-5

C. 6.78×10^5

D. 6.78×10^6

2.利用插值( )很容易得到拉格朗日插值多项式。(满分:3)

A. 基函数

B. 差值结点

C. 插值多项式

D. 以上都不对

3.迭代法的迭代公式为( ) (满分:3)

A. xk+1=g(k)

B. xk+1=g(k)/2

C. xk+1=xk-f(xk)/f'(xk)

D. xk+1=xk-f(xk)/(f(xk)-f(xk-1))

4.为了提高精度,与必要根据未知函数在若干个点处更多的信息(例如:一阶、二阶导数)建立插值公式。这就是( )插值的思想。(满分:3)

A. Newton

数值计算方法比较

有限差分方法(FDM:Finite Difference Method)是计算机数值模拟最早采用的方法,至今仍被广泛运用。该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。有限差分法主要集中在依赖于时间的问题(双曲型和抛物型方程)。有限差分法方面的经典文献有Richtmeyer & Morton的《Difference Methods for Initial-Value Problems》;R. LeVeque《Finite Difference Method for Differential Equations》;《Numerical Methods for C onservation Laws》。 注:差分格式: (1)从格式的精度来划分,有一阶格式、二阶格式和高阶格式。 (2)从差分的空间形式来考虑,可分为中心格式和逆风格式。 (3)考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。 目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。 构造差分的方法: 构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。 有限差分法的不足:由于采用的是直交网格,因此较难适应区域形状的任意性,而且区分不出场函数在区域中的轻重缓急之差异,缺乏统一有效的处理自然边值条件和内边值条件的方法,难以构造高精度(指收敛阶)差分格式,除非允许差分方程联系更多的节点(这又进一步增加处理边值条件韵困难)。另外它还有编制不出通用程序的困难。 有限差分法的优点:该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念 直观,表达简单,精度可选而且在一个时间步内,对于一个给定点来说其相关的空间点只是 与该相邻的几点,而不是全部的空间点。是发展较早且比较成熟的数值方法 广义差分法(有限体积法)(GDM:Generalized Difference Method):1953年,Mac—Neal 利用积分插值法(也称积分均衡法)建立了三角网格上的差分格 式,这就是以后通称的不规划网格上的差分法.这种方法的几何误差小,特别是给出了处理自然边值条件(及内边值条件)的有效方法,堪称差分法的一大进步。1978年,李荣华利用有限元空间和对偶单元上特征函数的推广——局部Taylor展式的公项,将积分插值法改写成广义Galerkin法形式,从而将不规则网格差分法推广为广义差分法.其基本思路是,将计算区域划分为一系列不重复的控制体积,并使每个网格点周围有

数值计算方法复习题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应取多少? 解:用误差估计式,

数值计算方法学习心得

数值计算方法学习心得 ------一个代码的方法是很重要,一个算法的思想也很重要,但 在我看来,更重要的是解决问题的方法,就像爱因斯坦说的内容比 思维本身更重要。 我上去讲的那次其实做了挺充分的准备,程序的运行,pdf文档,算法公式的推导,程序伪代码,不过有一点缺陷的地方,很多细节 没有讲的很清楚吧,下来之后也是更清楚了这个问题。 然后一学期下来,总的来说,看其他同学的分享,我也学习到 许多东西,并非只是代码的方法,更多的是章胜同学的口才,攀忠 的排版,小冯的深入挖掘…都是对我而言比算法更加值得珍惜的东西,又骄傲地回想一下,曾同为一个项目组的我们也更加感到做项 目对自己发展的巨大帮助了。 同时从这些次的实验中我发现以前学到的很多知识都非常有用。 比如说,以前做项目的时候,项目导师一直要求对于要上传的 文件尽量用pdf格式,不管是ppt还是文档,这便算是对产权的一种 保护。 再比如代码分享,最基础的要求便是——其他人拿到你的代码 也能运行出来,其次是代码分享的规范性,像我们可以用轻量级Ubuntu Pastebin,以前做过一小段时间acm,集训队里对于代码的分享都是推荐用这个,像数值计算实验我觉得用这个也差不多了,其 次项目级代码还是推荐github(被微软收购了),它的又是可能更 多在于个人代码平台的搭建,当然像readme文档及必要的一些数据 集放在上面都更方便一些。

然后在实验中,发现debug能力的重要性,对于代码错误点的 正确分析,以及一些与他人交流的“正规”途径,讨论算法可能出 错的地方以及要注意的细节等,比如acm比赛都是以三人为一小组,讨论过后,讲了一遍会发现自己对算法理解更加深刻。 然后学习算法,做项目做算法一般的正常流程是看论文,尽量 看英文文献,一般就是第一手资料,然后根据论文对算法的描述, 就是如同课上的流程一样,对算法进一步理解,然后进行复现,最 后就是尝试自己改进。比如知网查询牛顿法相关论文,会找到大量 可以参考的文献。 最后的最后,想说一下,计算机专业的同学看这个数值分析, 不一定行云流水,但肯定不至于看不懂写不出来,所以我们还是要 提高自己的核心竞争力,就是利用我们的优势,对于这种算法方面 的编程,至少比他们用的更加熟练,至少面对一个问题,我们能思 考出对应问题的最佳算法是哪一个更合适解决问题。 附记: 对课程的一些小建议: 1. debug的能力不容忽视,比如给一个关于代码实现已知错误的代码给同学们,让同学们自己思考一下,然后分享各自的debug方法,一步一步的去修改代码,最后集全班的力量完成代码的debug,这往往更能提升同学们的代码能力。 2. 课堂上的效率其实是有点低的,可能会给学生带来一些负反馈,降低学习热情。 3. 总的来说还是从这门课程中学到许多东西。 数值分析学习心得体会

数值分析MATLAB实验程序

数值分析上机实验报告 院系:XXX 学号:XXX 姓名:XXXX

目录 一.Gass-Jordan消去法 (1) 二.雅克比迭代法 (2) 三.拉格朗日多项式插值 (4) 四.埃尔米特插值法 (5) 五.复化梯形公式 (7) 六.龙贝格求积公式 (8) 七.欧拉法 (9) 八.隐式欧拉法 (10)

一.Gass-Jordan消去法 Gass-Jordan消去法求解线性方程组的基本思想是将系数矩阵化为对角矩阵,这样可以直接得到方程组的解x1,x2…x n,因此也称为无回代消去法。 例:用列主元Gass-Jordan消去法求解方程组: 2x1+1x2+x3=5 5x1-1x2+1x3=8 1x1-3x2-4x3=-4 编写Gau_Jor 函数来实现求解: function [x,flag]=Gau_Jor(A,b) % 求线性方程组的列主元Gauss-Jordan消去法 % A为方程组的系数矩阵; % b为方程组的右端项; % x为方程组的解; % flag为指标向量,flag='failure'表示计算失败,flag='OK'表示计算成功。[n,m]=size(A);nb=length(b); % 当方程组行与列的维数不相等时,停止计算,并输出出错信息 if n~=m error('The rows and columns of matrix A must be equal!'); return; end % 当方程组与右端项的维数不匹配时,停止计算,并输出出错信息 if m~=nb error('The columns of A must be equal the length of b!'); return; end % 开始计算,先赋初值 flag='OK';x=zeros(n,1); for k =1:n % 选主元 max1=0; for i=k:n if abs(A(i,k))>max1 max1=abs(A(i,k));r=i; end end if max1<1e-10 falg='failure';return; end % 交换两行 if r>k

数值计算常用公式

第一章 误差 由观测产生的误会差,称为观测误差或参量误差. 由数值计算方法所得到的近似解与实际问题准确解之间出现的这种误差,称为截断误差或方法误差。 x *为准确值的一个近似值,则绝对误差: e *(x)= x-x * 绝对误差限:∣e * (x)∣=∣x-x * ∣≤ε * (在知道x 准确值的条件下)相对误差:=x x x x x e * -= )(* = * * * * )(x x x x x e -= 相对误差限:* * * * * * )()(r r x x x x x e x e ε≤-= = 误差传播规律:) ()()()()(2 * *2 1 * *1 * x e x f x e x f y e ??+??≈ * )()(* * y y e y e r = (看会第七页例题) 有效数字与有效数字位数: 例一:对于x=π=3.14159…,若取近似值=3.14,则绝对误差 ∣ ) (* x e ∣=0.00159…≤01.02 1?,即百分位数字4的半个单位(指 01 .02 1?)是* x 的绝对误差限,故从* x 最左边的非零数“3”开始 到百分位数字“4”的三个数都是有效数字,近似值* x 具有三位有效数字。

例二:求 2 *10 49-?=x 的有效数字? 有两位有效数字 ,即位有效数字,则有设的绝对误差限为,而可写为解:* * 2 * *x 2m 2 m 0m x 10 5.0x 1049.0x =-=-??- 第二章 非线性方程求根 二分法:[]b a x ,∈,2 b a x += 分成两半,检查0)()(0

数值计算实验课题目

数值实验课试题 本次数值实验课结课作业,请按题目要求内容写一篇文章。按题目要求 人数自由组合,每组所选题目不得相同(有特别注明的题目除外)。试题如下: 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 语言将最速下降法编写成通用的子程序,然后用你编写的程序求解对称

数值计算课后答案2

习 题 二 解 答 1.用二分法求方程x 3-2x 2-4x-7=0在区间[3,4]内的根,精确到10-3,即误 差不超过31 102 -?。 分析:精确到10-3与误差不超过10-3不同。 解:因为f(3)=-10<0,f(4)=9>0,所以,方程在区间[3,4]上有根。 由 34311 *1022222 n n n n n n b a b a x x -----≤ ===

(3)用秦九韶算法计算f(x n )比较简单。 1*.求方程x 3-2x 2-4x-7=0的隔根区间。 解:令32247y x x x =---, 则2344322()()y x x x x '=--=+- 当23443220()()y x x x x '=--=+-=时,有122 23 ,x x =-=。 因为214902150327(),()y y -=-<=-<,所以方程在区间2 23(,)-上无根; 因为21490327()y -=-<,而函数在2 3 (,)-∞-上单调增,函数值不可能变号,所以 方程在该区间上无根; 因为2150()y =-<,函数在(2,+∞)上单调增,所以方程在该区间上最多有一个根, 而(3)=-10<0,y(4)=9>0,所以方程在区间(3,4)有一个根。 所以,该方程有一个根,隔根区间是(3.4)。 2.证明1sin 0x x --=在[0,1]内有一个根,使用二分法求误差不大于4 1 102 -?的根,需要迭代多少次? 分析:证明方程在指定区间内有一个根,就是证明相应的函数在指定区间

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

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

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

数值计算课后答案

习 题 四 解 答 1、设010,1x x ==,写出()x f x e -=的一次插值多项式1()L x ,并估计插值误差。 设插值函数为1()L x ax b =+,由插值条件,建立线性方程组为 1 01 1a b a b e -?+=???+=? 解之得11 1a e b -?=-?=? 则11()(1)1L x e x -=-+ 因为(),()x x y x e y x e --'''=-= 所以,插值余项为 (1)(2) (2)011 ()()()()() (1)! 1()()2!1 ()()()2!1 (0)(1)((0,1))2n r x f x p x f x n f x f x x x x e x x ξξπξπξξ+-=-=+= =--=--∈ 所以 01 0101 ()max max (1) 2111248x r x e x x e ξξ-≤≤≤≤-≤-=??=。 2选用合适的三次插值多项式来近似计算f 和f 。 解:设三次插值多项式为230123()f x a a x a x a x =+++,由插值条件,建立方程组为 23012323 012323 01232301 23(0.1)(0.1)(0.1)0.9950.30.30.30.995 0.70.70.70.7651.1 1.1 1.10.454 a a a a a a a a a a a a a a a a ?+?-+?-+?-=?+?+?+?=??+?+?+?=??+?+?+?=?

即 012301230123 123012312301230.10.010.0010.9950.10.010.0010.9950.30.090.0270.9950.40.080.02800.70.490.3430.7650.80.480.344 1.761.1 1.21 1.3310.454a a a a a a a a a a a a a a a a a a a a a a a a a a -+-=-+-=??+++=++=??? +++=++=??+++=?12301231232330.40.720.9880.3110.10.010.0010.9950.40.080.02800.320.288 1.760.384 3.831a a a a a a a a a a a a a ??????++=-? -+-=??++=??? +=? ?-=-? 解之得 01 230.416.293.489.98 a a a a =??=-?? =-??=? 则所求的三次多项式为23()0.41 6.29 3.489.98f x x x x =--+。 所以 2323 (0.2)0.41 6.290.2 3.480.29.980.20.91 (0.8)0.41 6.290.8 3.480.89.980.8 1.74f f =-?-?+?=-=-?-?+?=- 3、设(0,1,2,,)i x i n =L 是 n+1个互异节点,证明: (1)0()(0,1,2,,)n k k i i i x l x x k n ===∑L ; (2)0 ()()0(0,1,2,,)n k i i i x x l x k n =-==∑L 。 证明: (1)由拉格朗日插值定理,以x 0,x 1,x 2,…x n 为插值节点,对y=f(x)=x k 作n 次插值,插值多项式为 0()()n n i i i p x l x y ==∑, 而y i =x i k , 所以0 ()()()n n k n i i i i i i p x l x y l x x ====∑∑ 同时,插值余项 (1)(1)11 ()()()()()()0(1)!(1)! n k n k n r x x p x f x x x n n ξξππ++=-= ==++ 所以0 ()n k k i i i l x x x ==∑ 结论得证。 (2)取函数()(),0,1,2,,k f x x t k n =-=L 对此函数取节点(0,1,2,,)i x i n =L ,则对应的插值多项式为

数值分析实验报告总结

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

如果 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 ,那 外,还规定其必须满足相容性: 所以

数值计算方法实验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) 习题二(6) 习题三(15) 习题四(29) 习题五(37) 习题六(62) 习题七(70) 2009.9,9

习题一 1.设x >0相对误差为2%4x 的相对误差。 解:由自变量的误差对函数值引起误差的公式: (())(())'()()()() f x x f x f x x f x f x δδ?= ≈得 (1)()f x = 11 ()()*2%1% 22x x δδδ≈ ===; (2)4 ()f x x =时 44 4 ()()'()4()4*2%8%x x x x x x δδδ≈ === 2.设下面各数都是经过四舍五入得到的近似数,即误差不超过最后一位的半个单位,试指出他们各有几位有效数字。 (1)12.1x =;(2)12.10x =;(3)12.100x =。 解:由教材9P 关于1212.m n x a a a bb b =±型数的有效数字的结论,易得上面三个数的有效 数字位数分别为:3,4,5 3.用十进制四位浮点数计算 (1)31.97+2.456+0.1352; (2)31.97+(2.456+0.1352) 哪个较精确? 解:(1)31.97+2.456+0.1352 ≈2 1 ((0.3197100.245610)0.1352)fl fl ?+?+ =2 (0.3443100.1352)fl ?+ =0.3457210? (2)31.97+(2.456+0.1352) 2 1 (0.319710(0.245610))fl fl ≈?+? = 21 (0.3197100.259110)fl ?+? =0.34562 10? 易见31.97+2.456+0.1352=0.3456122 10?,故(2)的计算结果较精确。 4.计算正方形面积时,若要求面积的允许相对误差为1%,测量边长所允许的相对误差限为多少?

数值分析实验报告1

实验一 误差分析 实验(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 )1.1() ()20()2)(1()(20 1∏=-=---=k k x x x x x p 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 )2.1(0 )(19=+x x p ε 其中ε是一个非常小的数。这相当于是对()中19x 的系数作一个小的扰动。我们希望比较()和()根的差别,从而分析方程()的解对扰动的敏感性。 实验内容:为了实现方便,我们先介绍两个Matlab 函数:“roots ”和“poly ”。 roots(a)u = 其中若变量a 存储n+1维的向量,则该函数的输出u 为一个n 维的向量。设a 的元素依次为121,,,+n a a a ,则输出u 的各分量是多项式方程 01121=+++++-n n n n a x a x a x a 的全部根;而函数 poly(v)b =

的输出b 是一个n+1维变量,它是以n 维变量v 的各分量为根的多项式的系数。可见“roots ”和“poly ”是两个互逆的运算函数。 ;000000001.0=ess );21,1(zeros ve = ;)2(ess ve = ))20:1((ve poly roots + 上述简单的Matlab 程序便得到()的全部根,程序中的“ess ”即是()中的ε。 实验要求: (1)选择充分小的ess ,反复进行上述实验,记录结果的变化并分析它们。 如果扰动项的系数ε很小,我们自然感觉()和()的解应当相差很小。计算中你有什么出乎意料的发现表明有些解关于如此的扰动敏感性如何 (2)将方程()中的扰动项改成18x ε或其它形式,实验中又有怎样的现象 出现 (3)(选作部分)请从理论上分析产生这一问题的根源。注意我们可以将 方程()写成展开的形式, ) 3.1(0 ),(1920=+-= x x x p αα 同时将方程的解x 看成是系数α的函数,考察方程的某个解关于α的扰动是否敏感,与研究它关于α的导数的大小有何关系为什么你发现了什么现象,哪些根关于α的变化更敏感 思考题一:(上述实验的改进) 在上述实验中我们会发现用roots 函数求解多项式方程的精度不高,为此你可以考虑用符号函数solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。

数值计算课后答案

习 题 三 解 答 1、用高斯消元法解下列方程组。 (1)1231231 22314254 27x x x x x x x x -+=?? ++=??+=?①②③ 解:?4②+(-)①2,1 2 ?③+(-)①消去第二、三个方程的1x ,得: 1232323231425313222 x x x x x x x ? ?-+=? -=???-=?④⑤⑥ 再由5 2)4 ?⑥+(-⑤消去此方程组的第三个方程的2x ,得到三角方程组: 1232332314272184x x x x x x ? ?-+=? -=???-= ? 回代,得: 36x =-,21x =-,19x = 所以方程组的解为 (9,1,6)T x =-- 注意: ①算法要求,不能化简。化简则不是严格意义上的消元法,在算法设计上就多出了步骤。实际上,由于数值计算时用小数进行的,化简既是不必要的也是不能实现的。无论是顺序消元法还是选主元素消元法都是这样。 ②消元法要求采用一般形式,或者说是分量形式,不能用矩阵,以展示消元过程。 要通过练习熟悉消元的过程而不是矩阵变换的技术。 矩阵形式错一点就是全错,也不利于检查。 一般形式或分量形式: 1231231 22314254 27x x x x x x x x -+=?? ++=??+=?①②③ 矩阵形式 123213142541207x x x -?????? ??? ?= ??? ? ??? ???????

向量形式 123213142541207x x x -???????? ? ? ? ?++= ? ? ? ? ? ? ? ????????? ③必须是方程组到方程组的变形。三元方程组的消元过程要有三个方程组,不能变形出单一的方程。 ④消元顺序12x x →→L ,不能颠倒。按为支援在方程组中的排列顺序消元也是存储算法的要求。实际上,不按顺序消元是不规范的选主元素。 ⑤不能化简方程,否则系数矩阵会变化,也不利于算法设计。 (2)1231231231132323110 221x x x x x x x x x --=?? -++=??++=-? ①②③ 解:?23②+( )①11,1 11 ?③+(-)①消去第二、三个方程的1x ,得: 123232311323523569111111252414111111x x x x x x x ? --=?? ? -=? ? ? +=-??④⑤⑥ 再由25 11)5211 ?⑥+(-⑤消去此方程组的第三个方程的2x ,得到三角方程组: 123233113235235691111111932235252x x x x x x ? ?--=? ? -=?? ? =-?? 回代,得: 32122310641 ,,193193193 x x x =- ==, 所以方程组的解为 41106223(,,)193193193T x =- 2、将矩阵 1020011120110011A ?? ? ?= ?- ???

数值计算方法总结计划复习总结提纲.docx

数值计算方法复习提纲 第一章数值计算中的误差分析 1 2.了解误差 ( 绝对误差、相对误差 ) 3.掌握算法及其稳定性,设计算法遵循的原则。 1、误差的来源 模型误差 观测误差 截断误差 舍入误差 2误差与有效数字 绝对误差E(x)=x-x * 绝对误差限x*x x* 相对误差E r (x) ( x x* ) / x ( x x* ) / x* 有效数字 x*0.a1 a2 ....a n10 m 若x x*110m n ,称x*有n位有效数字。 2 有效数字与误差关系 ( 1)m 一定时,有效数字n 越多,绝对误差限越小; ( 2)x*有 n 位有效数字,则相对误差限为E r (x)1 10 (n 1)。 2a1 选择算法应遵循的原则 1、选用数值稳定的算法,控制误差传播; 例 I n 11n x dx e x e I 0 1 1 I n1nI n1 e △ x n n! △x0 2、简化计算步骤,减少运算次数; 3、避免两个相近数相减,和接近零的数作分母;避免

第二章线性方程组的数值解法 1.了解 Gauss 消元法、主元消元法基本思想及算法; 2.掌握矩阵的三角分解,并利用三角分解求解方程组; (Doolittle 分解; Crout分解; Cholesky分解;追赶法) 3.掌握迭代法的基本思想,Jacobi 迭代法与 Gauss-Seidel 4.掌握向量与矩阵的范数及其性质, 迭代法的收敛性及其判定。 本章主要解决线性方程组求解问题,假设n 行 n 列线性方程组有唯一解,如何得到其解? a 11x 1 a 12 x 2... a 1n x n b1 a 21x 1 a 22 x 2... a 2n x n b2 ... a n1x 1 a n 2 x 2... a nn x n b n 两类方法,第一是直接解法,得到其精确解; 第二是迭代解法,得到其近似解。 一、Gauss消去法 1、顺序G auss 消去法 记方程组为: a11(1) x1a12(1) x2... a1(1n) x n b1(1) a21(1) x1a22(1) x2... a2(1n) x n b2(1) ... a n(11) x1a n(12) x2... a nn(1) x n b n(1) 消元过程: 经n-1步消元,化为上三角方程组 a11(1) x1b1(1) a 21(2) x1a22(2 ) x2b2( 2 ) ... a n(1n) x1a n(n2) x2...a nn(n ) x n b n( n ) 第k步 若a kk(k)0 ( k 1)( k) a ik(k )(k )( k 1)( k )a ik(k )( k) a ij a ij a kk(k ) a kj b i b i a kk(k )b k k 1,...n 1 i, j k 1,....,n 回代过程:

《数值计算方法》上机实验报告

《数值计算方法》上机实验报告华北电力大学 实验名称数值il?算方法》上机实验课程名称数值计算方法专业班级:电力实08学生姓名:李超然学号:200801001008 成绩: 指导教师:郝育黔老师实验日期:2010年04月华北电力大学实验报告数值计算方法上机实验报吿一. 各算法的算法原理及计算机程序框图1、牛顿法求解非线性方程 *对于非线性方程,若已知根的一个近似值,将在处展开成一阶 xxfx ()0, fx ()xkk 泰勒公式 "f 0 / 2 八八,fxfxfxxxxx 0 0 0 0 0 kkkk2! 忽略高次项,有 ,fxfxfxxx 0 ()()(),,, kkk 右端是直线方程,用这个直线方程来近似非线性方程。将非线性方程的 **根代入,即fx ()0, X ,* fxfxxx 0 0 0 0, ,, kkk fx 0 fx 0 0,

解出 fX 0 *k XX,, k' fx 0 k 水将右端取为,则是比更接近于的近似值,即xxxxk, Ik, Ik fx ()k 八XX, Ikk* fx()k 这就是牛顿迭代公式。 ,2,计算机程序框图:,见, ,3,输入变量、输出变量说明: X输入变量:迭代初值,迭代精度,迭代最大次数,\0 输出变量:当前迭代次数,当前迭代值xkl ,4,具体算例及求解结果: 2/16 华北电力大学实验报吿 开始 读入 l>k /fx()0?,0 fx 0 Oxx,,01* fx ()0 XX,,,?10 kk, ,1,kN, ?xx, 10 输出迭代输出X输出奇异标志1失败标志

,3,输入变量、输出变量说明: 结束 例:导出计算的牛顿迭代公式,并il ?算。(课本P39例2-16) 115cc (0), 求解结果: 10. 750000 10.723837 10. 723805 10. 723805 2、列主元素消去法求解线性方程组,1,算法原理: 高斯消去法是利用现行方程组初等变换中的一种变换,即用一个不为零的数乘 -个 方程后加只另一个方程,使方程组变成同解的上三角方程组,然后再自下而上 对上三角 3/16 华北电力大学实验报告方程组求解。 列选主元是当高斯消元到第步时,从列的以下(包括)的各元素中选出绝 aakkkkkk 对值最大的,然后通过行交换将其交换到的位置上。交换系数矩阵中的 两行(包括常ekk 数项),只相当于两个方程的位置交换了,因此,列选主元不影响求解的结 ,2,计算机程序框图:,见下页, 输入变量:系数矩阵元素,常向量元素baiji 输出变量:解向量元素bbb,,12n

(整理)数值分析计算方法超级总结

工程硕士《数值分析》总复习题(2011年用) [由教材中的习题、例题和历届考试题选编而成,供教师讲解和学生复习用] 一. 解答下列问题: 1)下列所取近似值有多少位有效数字( 注意根据什么? ): a) 对 e = 2.718281828459045…,取* x = 2.71828 b) 数学家祖冲之取 113355 作为π的近似值. c) 经过四舍五入得出的近似值12345,-0.001, 90.55000, 它们的有效 数字位数分别为 位, 位, 位。 2) 简述下名词: a) 截断误差 (不超过60字) b) 舍入误差 (不超过60字) c) 算法数值稳定性 (不超过60字) 3) 试推导( 按定义或利用近似公式 ): 计算3 x 时的相对误差约等于x 的相对 误差的3倍。 4) 计算球体积3 34r V π= 时,为使其相对误差不超过 0.3% ,求半径r 的相对 误差的允许范围。 5) 计算下式 341 8 )1(3)1(7)1(5)1(22345+-+---+---=x x x x x x P )( 时,为了减少乘除法次数, 通常采用什么算法? 将算式加工成什么形式? 6) 递推公式 ?????=-==- ,2,1,1102 10n y y y n n 如果取 * 041.12y y =≈= ( 三位有效数字 ) 作近似计算, 问计算到 10y 时误差为初始误差的多少倍? 这个计算过程数值稳定吗 ? 二. 插值问题: 1) 设函数 )(x f 在五个互异节点 54321,,,,x x x x x 上对应的函数值为 54321,,,,f f f f f ,根据定理,必存在唯一的次数 (A ) 的插值多项式 )(x P ,满足插值条件 ( B ) . 对此,为了构造Lagrange 插值多项式 )(x L ,由5个节点作 ( C ) 个、次数均为 ( D ) 次的插值基函数

相关文档
最新文档