文档库 最新最全的文档下载
当前位置:文档库 › 计算方法作业

计算方法作业

计算方法作业
计算方法作业

计算方法_习题第一、二章答案..

第一章 误差 1 问3.142,3.141,7 22分别作为π的近似值各具有几位有效数字? 分析 利用有效数字的概念可直接得出。 解 π=3.141 592 65… 记x 1=3.142,x 2=3.141,x 3=7 22. 由π- x 1=3.141 59…-3.142=-0.000 40…知 34111 10||1022 x π--?<-≤? 因而x 1具有4位有效数字。 由π- x 2=3.141 59…-3.141=-0.000 59…知 223102 1||1021--?≤-

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

大作业 三 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、????? ?????----=410141014A ,则A 的LU 分解为 A ??? ?????????=? ?????????? ?。 答案: ?? ????????--??????????--=1556141501 4115401411A 2、已知3.1)3(,2.1)2(,0.1)1(===f f f ,则用辛普生(辛卜生)公式计算求得 ?≈3 1 _________ )(dx x f ,用三点式求得≈')1(f 。 答案:, 3、1)3(,2)2(,1)1(==-=f f f ,则过这三点的二次插值多项式中2 x 的系数为 , 拉格朗日插值多项式为 。 答案:-1, )2)(1(21 )3)(1(2)3)(2(21)(2--------= x x x x x x x L 4、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字; 5、设)(x f 可微,求方程)(x f x =的牛顿迭代格式是( ); ( 答案 )(1)(1n n n n n x f x f x x x '--- =+ 6、对1)(3 ++=x x x f ,差商=]3,2,1,0[f ( 1 ),=]4,3,2,1,0[f ( 0 ); 7、计算方法主要研究( 截断 )误差和( 舍入 )误差; 8、用二分法求非线性方程 f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为 ( 1 2+-n a b ); 9、求解一阶常微分方程初值问题y '= f (x ,y ),y (x 0)=y 0的改进的欧拉公式为

( )] ,(),([2111+++++=n n n n n n y x f y x f h y y ); 10、已知f (1)=2,f (2)=3,f (4)=,则二次Newton 插值多项式中x 2系数为( ); 11、 两点式高斯型求积公式?1 d )(x x f ≈( ?++-≈1 )] 321 3()3213([21d )(f f x x f ),代数精 度为( 5 ); 12、 解线性方程组A x =b 的高斯顺序消元法满足的充要条件为(A 的各阶顺序主子式均 不为零)。 13、 为了使计算 32)1(6 )1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表 达式改写为 11 ,))64(3(10-= -++=x t t t t y ,为了减少舍入误差,应将表达式 19992001-改写为 199920012 + 。 14、 用二分法求方程01)(3 =-+=x x x f 在区间[0,1]内的根,进行一步后根的所在区间 为 ,1 ,进行两步后根的所在区间为 , 。 15、 、 16、 计算积分?1 5 .0d x x ,取4位有效数字。用梯形公式计算求得的近似值为 ,用辛卜 生公式计算求得的近似值为 ,梯形公式的代数精度为 1 ,辛卜生公式的代数精度为 3 。 17、 求解方程组?? ?=+=+042.01532121x x x x 的高斯—塞德尔迭代格式为 ?????-=-=+++20/3/)51()1(1)1(2)(2)1(1 k k k k x x x x ,该迭 代格式的迭代矩阵的谱半径)(M ρ= 121 。 18、 设46)2(,16)1(,0)0(===f f f ,则=)(1x l )2()(1--=x x x l ,)(x f 的二次牛顿 插值多项式为 )1(716)(2-+=x x x x N 。 19、 求积公式 ?∑=≈b a k n k k x f A x x f )(d )(0 的代数精度以( 高斯型 )求积公式为最高,具 有( 12+n )次代数精度。

数值计算方法大作业

目录 第一章非线性方程求根 (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. 给定初值 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 *1x =1.7; * 2x =1.73; *3x =1.732 。 2. 3. (1) ≤++)(* 3*2*1x x x e r 0.00050; (注意:应该用相对误差的定义去求) (2) ≤)(*3*2*1x x x e r 0.50517; (3) ≤)/(*4*2x x e r 0.50002。 4.设6有n 位有效数字,由6≈2.4494……,知6的第一位有效数字1a =2。 令3)1()1(1* 102 1 102211021)(-----?≤??=?= n n r a x ε 可求得满足上述不等式的最小正整数n =4,即至少取四位有效数字,故满足精度要求可取6≈2.449。 5. 答:(1)*x (0>x )的相对误差约是* x 的相对误差的1/2倍; (2)n x )(* 的相对误差约是* x 的相对误差的n 倍。 6. 根据******************** sin 21)(cos 21sin 21)(sin 21sin 21)(sin 21)(c b a c e c b a c b a b e c a c b a a e c b S e r ++≤ =* *****) ()()(tgc c e b b e a a e ++ 注意当20* π < >c tgc ,即1 *1 * )() (--

7.设20= y ,41.1*0 =y ,δ=?≤--2* 00102 1y y 由 δ1* 001*111010--≤-=-y y y y , δ2*111*221010--≤-=-y y y y M δ10*991*10101010--≤-=-y y y y 即当0y 有初始误差δ时,10y 的绝对误差的绝对值将减小10 10-倍。而110 10 <<-δ,故计算过程稳定。 8. 变形后的表达式为: (1))1ln(2--x x =)1ln(2-+-x x (2)arctgx x arctg -+)1(=) 1(11 ++x x arctg (3) 1ln )1ln()1(ln 1 --++=? +N N N N dx x N N =ΛΛ+-+- +3 2413121)1ln(N N N N 1ln )11ln()1(-++ +=N N N N =1)1ln()1 1ln(-+++N N N (4)x x sin cos 1-=x x cos 1sin +=2x tg

《数值计算方法》试题集及答案

《数值计算方法》复习试题 一、填空题: 1、????? ?????----=410141014A ,则A 的LU 分解为 A ??? ?????????=? ?????????? ?。 答案: ?? ????????--??????????--=1556141501 4115401411A 3、1)3(,2)2(,1)1(==-=f f f ,则过这三点的二次插值多项式中2 x 的系数为 ,拉 格朗日插值多项式为 。 答案:-1, )2)(1(21 )3)(1(2)3)(2(21)(2--------= x x x x x x x L 4、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字; 5、设)(x f 可微,求方程)(x f x =的牛顿迭代格式就是( ); 答案 )(1)(1n n n n n x f x f x x x '--- =+ 6、对1)(3 ++=x x x f ,差商=]3,2,1,0[f ( 1 ),=]4,3,2,1,0[f ( 0 ); 7、计算方法主要研究( 截断 )误差与( 舍入 )误差; 8、用二分法求非线性方程 f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为 ( 1 2+-n a b ); 10、已知f (1)=2,f (2)=3,f (4)=5、9,则二次Newton 插值多项式中x 2系数为( 0、15 ); 11、 解线性方程组A x =b 的高斯顺序消元法满足的充要条件为(A 的各阶顺序主子式均 不为零)。 12、 为了使计算 32)1(6 )1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表 达式改写为 11 ,))64(3(10-= -++=x t t t t y ,为了减少舍入误差,应将表达式

2020年奥鹏吉大网络教育《计算方法》大作业解答

2020年奥鹏吉大网络教育《计算方法》大作业解答 (说明:前面是题目,后面几页是答案完整解答部分,注意的顺序。) 一、解线性方程 用矩阵的LU分解算法求解线性方程组 用矩阵的Doolittle分解算法求解线性方程组 用矩阵的Doolittle分解算法求解线性方程组 用高斯消去法求解线性方程组 用高斯消去法求解线性方程组 用主元素消元法求解线性方程组 用高斯消去法求解线性方程组 利用Doolittle分解法解方程组Ax=b,即解方程组 1、用矩阵的LU分解算法求解线性方程组 X1+2X2+3X3 = 0 2X1+2X2+8X3 = -4 -3X1-10X2-2X3 = -11 2、用矩阵的Doolittle分解算法求解线性方程组 X1+2X2+3X3 = 1 2X1– X2+9X3 = 0 -3X1+ 4X2+9X3 = 1 3、用矩阵的Doolittle分解算法求解线性方程组 2X1+X2+X3 = 4 6X1+4X2+5X3 =15 4X1+3X2+6X3 = 13 4、用高斯消去法求解线性方程组

2X 1- X 2+3X 3 = 2 4X 1+2X 2+5X 3 = 4 -3X 1+4X 2-3X 3 = -3 5、用无回代过程消元法求解线性方程组 2X 1- X 2+3X 3 = 2 4X 1+2X 2+5X 3 = 4 -3X 1+4X 2-3X 3 = -3 6、用主元素消元法求解线性方程组 2X 1- X 2+3X 3 = 2 4X 1+2X 2+5X 3 = 4 -3X 1+4X 2-3X 3 = -3 7、用高斯消去法求解线性方程组 123123123234 4272266 x x x x x x x x x -+=++=-++= 8、利用Doolittle 分解法解方程组Ax=b ,即解方程组 12341231521917334319174262113x x x x -? ????? ???? ??-??????=? ? ????--?????? --???? ??

数值分析大作业

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

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

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

数值计算方法试题集和答案

《计算方法》期中复习试题 一、填空题: 1、已知3.1)3(,2.1)2(,0.1)1(===f f f ,则用辛普生(辛卜生)公式计算求得 ?≈3 1 _________ )(dx x f ,用三点式求得≈')1(f 。 答案:, 2、1)3(,2)2(,1)1(==-=f f f ,则过这三点的二次插值多项式中2 x 的系数为 , 拉格朗日插值多项式为 。 答案:-1, )2)(1(21 )3)(1(2)3)(2(21)(2--------= x x x x x x x L 3、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字; 4、设)(x f 可微,求方程)(x f x =的牛顿迭代格式是( ); 答案 )(1)(1n n n n n x f x f x x x '--- =+ 5、对1)(3 ++=x x x f ,差商=]3,2,1,0[f ( 1 ),=]4,3,2,1,0[f ( 0 ); 6、计算方法主要研究( 截断 )误差和( 舍入 )误差; 7、用二分法求非线性方程f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为 ( 1 2+-n a b ); 8、已知f (1)=2,f (2)=3,f (4)=,则二次Newton 插值多项式中x 2系数为( ); 11、 两点式高斯型求积公式?1 d )(x x f ≈( ?++-≈1 )] 321 3()3213([21d )(f f x x f ),代数精 度为( 5 ); 12、 为了使计算 32)1(6 )1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表 达式改写为 11 ,))64(3(10-= -++=x t t t t y ,为了减少舍入误差,应将表达式 19992001-改写为 199920012 + 。

(完整word版)计算方法习题集及答案.doc

习题一 1. 什么叫数值方法?数值方法的基本思想及其优劣的评价标准如何? 数值方法是利用计算机求解数学问题近似解的方法 x max x i , x ( x 1 , x 2 , x n ) T R n 及 A n R n n . 2. 试证明 max a ij , A ( a ij ) 1 i n 1 i n 1 j 证明: ( 1)令 x r max x i 1 i n n p 1/ p n x i p 1/ p n x r p 1/ p 1/ p x lim( x i lim x r [ ( ] lim x r [ lim x r ) ) ( ) ] x r n p i 1 p i 1 x r p i 1 x r p 即 x x r n p 1/ p n p 1/ p 又 lim( lim( x r x i ) x r ) p i 1 p i 1 即 x x r x x r ⑵ 设 x (x 1,... x n ) 0 ,不妨设 A 0 , n n n n 令 max a ij Ax max a ij x j max a ij x j max x i max a ij x 1 i n j 1 1 i n j 1 1 i n j 1 1 i n 1 i n j 1 即对任意非零 x R n ,有 Ax x 下面证明存在向量 x 0 0 ,使得 Ax 0 , x 0 n ( x 1,... x n )T 。其中 x j 设 j a i 0 j ,取向量 x 0 sign(a i 0 j )( j 1,2,..., n) 。 1 n n 显然 x 0 1 且 Ax 0 任意分量为 a i 0 j x j a i 0 j , i 1 i 1 n n 故有 Ax 0 max a ij x j a i 0 j 即证。 i i 1 j 1 3. 古代数学家祖冲之曾以 355 作为圆周率的近似值,问此近似值具有多少位有效数字? 113 解: x 325 &0.314159292 101 133 x x 355 0.266 10 6 0.5 101 7 该近似值具有 7 为有效数字。

西安交通大学计算方法B大作业

计算方法上机报告 姓名: 学号: 班级:

目录 题目一------------------------------------------------------------------------------------------ - 4 - 1.1题目内容 ---------------------------------------------------------------------------- - 4 - 1.2算法思想 ---------------------------------------------------------------------------- - 4 - 1.3Matlab源程序----------------------------------------------------------------------- - 5 - 1.4计算结果及总结 ------------------------------------------------------------------- - 5 - 题目二------------------------------------------------------------------------------------------ - 7 - 2.1题目内容 ---------------------------------------------------------------------------- - 7 - 2.2算法思想 ---------------------------------------------------------------------------- - 7 - 2.3 Matlab源程序---------------------------------------------------------------------- - 8 - 2.4计算结果及总结 ------------------------------------------------------------------- - 9 - 题目三----------------------------------------------------------------------------------------- - 11 - 3.1题目内容 --------------------------------------------------------------------------- - 11 - 3.2算法思想 --------------------------------------------------------------------------- - 11 - 3.3Matlab源程序---------------------------------------------------------------------- - 13 - 3.4计算结果及总结 ------------------------------------------------------------------ - 14 - 题目四----------------------------------------------------------------------------------------- - 15 - 4.1题目内容 --------------------------------------------------------------------------- - 15 - 4.2算法思想 --------------------------------------------------------------------------- - 15 - 4.3Matlab源程序---------------------------------------------------------------------- - 15 - 4.4计算结果及总结 ------------------------------------------------------------------ - 16 - 题目五----------------------------------------------------------------------------------------- - 18 -

计算方法上机实习题大作业(实验报告).

计算方法实验报告 班级: 学号: 姓名: 成绩: 1 舍入误差及稳定性 一、实验目的 (1)通过上机编程,复习巩固以前所学程序设计语言及上机操作指令; (2)通过上机计算,了解舍入误差所引起的数值不稳定性 二、实验内容 1、用两种不同的顺序计算10000 21n n -=∑,分析其误差的变化 2、已知连分数() 1 01223//(.../)n n a f b b a b a a b =+ +++,利用下面的算法计算f : 1 1 ,i n n i i i a d b d b d ++==+ (1,2,...,0 i n n =-- 0f d = 写一程序,读入011,,,...,,,...,,n n n b b b a a 计算并打印f 3、给出一个有效的算法和一个无效的算法计算积分 1 041 n n x y dx x =+? (0,1,...,1 n = 4、设2 2 11N N j S j == -∑ ,已知其精确值为1311221N N ?? -- ?+?? (1)编制按从大到小的顺序计算N S 的程序 (2)编制按从小到大的顺序计算N S 的程序 (3)按两种顺序分别计算10001000030000,,,S S S 并指出有效位数 三、实验步骤、程序设计、实验结果及分析 1、用两种不同的顺序计算10000 2 1n n -=∑,分析其误差的变化 (1)实验步骤: 分别从1~10000和从10000~1两种顺序进行计算,应包含的头文件有stdio.h 和math.h (2)程序设计: a.顺序计算

#include #include void main() { double sum=0; int n=1; while(1) { sum=sum+(1/pow(n,2)); if(n%1000==0)printf("sun[%d]=%-30f",n,sum); if(n>=10000)break; n++; } printf("sum[%d]=%f\n",n,sum); } b.逆序计算 #include #include void main() { double sum=0; int n=10000; while(1) { sum=sum+(1/pow(n,2)); if(n%1000==0) printf("sum[%d]=%-30f",n,sum); if(n<=1)break; n--; } printf("sum[%d]=%f\n",n,sum); } (3)实验结果及分析: 程序运行结果: a.顺序计算

数值分析计算方法试题集及答案

数值分析复习试题 第一章 绪论 一. 填空题 1.* x 为精确值 x 的近似值;() **x f y =为一元函数 ()x f y =1的近似值; ()**,*y x f y =为二元函数()y x f y ,2=的近似值,请写出下面的公式:**e x x =-: *** r x x e x -= ()()()*'1**y f x x εε≈? ()() () ()'***1**r r x f x y x f x εε≈ ? ()()()() ()* *,**,*2**f x y f x y y x y x y εεε??≈?+??? ()()()()() ** * *,***,**222r f x y e x f x y e y y x y y y ε??≈ ?+??? 2、 计算方法实际计算时,对数据只能取有限位表示,这时所产生的误差叫 舍入误 差 。 3、 分别用2.718281,2.718282作数e 的近似值,则其有效数字分别有 6 位和 7 位;又取 1.73≈-21 1.73 10 2 ≤?。 4、 设121.216, 3.654x x ==均具有3位有效数字,则12x x 的相对误差限为 0.0055 。 5、 设121.216, 3.654x x ==均具有3位有效数字,则12x x +的误差限为 0.01 。 6、 已知近似值 2.4560A x =是由真值T x 经四舍五入得 到,则相对误差限为 0.0000204 . 7、 递推公式,??? ? ?0n n-1y =y =10y -1,n =1,2, 如果取0 1.41y ≈作计算,则计算到10y 时,误 差为 81 10 2 ?;这个计算公式数值稳定不稳定 不稳定 . 8、 精确值 14159265.3* =π,则近似值141.3*1=π和1415.3*2=π分别有 3

计算方法作业参考答案(不断更新)

: 第一次作业 1.下列各数都是经过四舍五入得到的近似数,指出他们有几位有效数字,并写出绝对误差限。 9800107480.566.385031.01021.1*65*5*4*3*2*1=?=====x x x x x x 解: 1* 11011021.01021.1?==x ,有5位有效数字,绝对误差限为4-5-1105.0105.0?=?; 1-* 2 1031.0031.0?==x ,有2位有效数字,绝对误差限为3-2-1-105.0105.0?=?; 3* 3103856.06.385?==x ;有4位有效数字,绝对误差限为-14-3105.0105.0?=?; 2* 41056480.0480.56?==x ;有5位有效数字,绝对误差限为3-5-2105.0105.0?=?; ; 65* 5 107.0107?=?=x ;有1位有效数字,绝对误差限为51-6105.0105.0?=?; 4* 6 109800.09800?==x ;有4位有效数字,绝对误差限为5.0105.04-4=?。 2.要使20的近似值的相对误差限小于%1.0,要取几位有效数字 解:由于110447213595.047213595.420??=?=,设要取n 位有效数字,则根据 定理,有()()%1.01081 1021111

计算方法大作业非线性方程求根的新方法

计算方法大作业 题目:非线性方程求根的新方法 班级:xxx 学号:xxx 姓名:xxx

非线性方程求根的新方法 一、问题引入 在计算和实际问题中经常遇到如下非线性问题的求解: F(x)=0 (1) 我们经常采用的方法是经典迭代法: 经典迭代方法 不动点迭代方法是一种应用广泛的方法,其加速方法较多,如Stiffensen加速方法的局部收敛阶(以下简称为收敛阶)为2阶;牛顿迭代方法的收敛阶亦为2阶,且与其相联系的一些方法如简化牛顿法、牛顿下山法、弦截法的收敛阶阶数介于1和2之间;而密勒法的收敛阶与牛顿法接近,但计算量较大且涉及零点的选择问题,同时收敛阶也不够理想。 因此本文介绍一种新的迭代方法 从代数角度看,牛顿法和密勒法分别是将f(x)在xk附近近似为一线性函数和二次抛物插值函数,一种很自然的想法就是能否利用Taylor展开,将f(x)在xk附近近似为其他的二次函数?答案是肯定的.其中的一种方法是将f(x)在Xk处展开3项,此时收敛阶应高于牛顿法,这正是本文的出发点. 二、算法推导 设函数f(x)在xk附近具有二阶连续导数,则可将f(x)在xk处进行二阶Taylor展开,方程(1) 可近似为如下二次方程: f(xk)+f’(xk)(x-xk)+2^(-1)f’’(xk)(x-xk)^2=0,(2) 即 2^(-1)f’’(xk)x^2+(f’(xk)-xkf’’(xk))x+2^(-1)f’’(xk)xk^2-xkf’(xk)+f(xk)=0(3) 利用求根公式可得 X=xk-(f’’(xk))^(-1)(f’(xk))-sqrt((f’(xk)^2±2f’’(xk)f(xk)))(4) 其中±符号的选取视具体问题而定,从而可构造迭代公式 X k+1=xk-(f’’(xk))^(-1)(f’(xk))-sqrt((f’(xk)^2±2f’’(xk)f(xk)))(5) 确定了根号前正负号的迭代公式(5),可称为基于牛顿法和Taylor展开的方法,简记为BNT 方法. 为描述方便起见,以下将f(xk),f’(xk),f’’(xk)分别记为f,f’,f’’.首先,二次方程(3)对应于一条抛物曲线,其开口方向由f’’(xk),x∈U(xk)的符号确定,其中U(xk)为xk的某邻域,其顶点为 P(xk-(f’’)^(-1)f’,fk-(2f’’)^(-1)(f’)^2).为使(5)式唯一确定x k+1,须讨论根式前正负号的取舍问题.下面从该方法的几何意义分析(5)式中正负号的取舍. 1)当f(xk)=o时,z。即为所求的根. 2)当f(xk)>O时,根据y=f(x)的如下4种不同情形(见图1)确定(5)式中根号前的符号. (a)当f’’(xk)o时,“±”取为“一”;(b)当f’’(xk)o,f(xk)>o时,“±”取为“一”;(d)当f’’(xk)>o,f(xk)o时,“±”取为“+”;(b)当 f’’(xk)o,f(xk)>o时,“±”取为“+”;(d)当f’’(xk)>o,f(xk)

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

数值分析大作业(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 εε?= ==

计算方法练习题与答案

练习题与答案 练习题一 练习题二 练习题三 练习题四 练习题五 练习题六 练习题七 练习题八 练习题答案 练习题一 一、是非题 1.*x=–1 2.0326作为x的近似值一定具有6位有效数字,且其误差限 ≤ 4 10 2 1 - ? 。() 2.对两个不同数的近似数,误差越小,有效数位越多。( ) 3.一个近似数的有效数位愈多,其相对误差限愈小。( ) 4.用 2 1 2 x - 近似表示cos x产生舍入误差。( )

5. 3.14和 3.142作为π的近似值有效数字位数相同。 ( ) 二、填空题 1. 为了使计算 ()()2334912111y x x x =+ -+ ---的乘除法次数尽量少,应将该 表达式改写为 ; 2. * x =–0.003457是x 舍入得到的近似值,它有 位有效数字,误差限 为 ,相对误差限为 ; 3. 误差的来源是 ; 4. 截断误差为 ; 5. 设计算法应遵循的原则是 。 三、选择题 1.* x =–0.026900作为x 的近似值,它的有效数字位数为( ) 。 (A) 7; (B) 3; (C) 不能确定 (D) 5. 2.舍入误差是( )产生的误差。 (A) 只取有限位数 (B) 模型准确值与用数值方法求得的准确值 (C) 观察与测量 (D) 数学模型准确值与实际值 3.用 1+x 近似表示e x 所产生的误差是( )误差。 (A). 模型 (B). 观测 (C). 截断 (D). 舍入 4.用s *=21 g t 2表示自由落体运动距离与时间的关系式 (g 为重力加速度),s t 是在 时间t 内的实际距离,则s t - s *是( )误差。 (A). 舍入 (B). 观测 (C). 模型 (D). 截断 5.1.41300作为2的近似值,有( )位有效数字。 (A) 3; (B) 4; (C) 5; (D) 6。 四、计算题

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