当前位置:文档之家› 数值分析 李庆杨 Cht9常微分方程初值问题数值解法

数值分析 李庆杨 Cht9常微分方程初值问题数值解法

数值分析常微分方程的数值解法

《计算机数学基础》数值部分第五单元辅导 14 常微分方程的数值解法 一.重点内容 1. 欧拉公式: )心知1)a 儿+1 =儿 + hfg ,儿) m 1、 伙=0丄2,…川一 1) I 无=x Q +kh 局部截断误差是0(*)。 2. 改进欧拉公式: 预报一校正公式: 预报值 _v*+1 =儿+ hf (x k ,儿) - h - 校正值 y M = y k +-[f (x kt y k ) + /(x A+1, y M )] 即 儿+1 =儿+ £ "(忑'儿)+心+「儿+ hfg ,儿))] 或表成平均的形式: 儿=儿+ hfg ,儿) '儿=儿+"(无+】,儿) +K ) 改进欧拉法的局部截断误差是0(2) 3. 龙格一库塔法 二阶龙格一库塔法的局部截断误差是0(爪) 三阶龙格一库塔法的局部截断误差是0(护) 四阶龙格F 塔法公式:儿计=儿+ 2(匕+ 2心+ 2? + ?) 四阶龙格一库塔法的局部截断误差是0(爪)。 二实例 y' = — y — xv f2(0 < x < 0.6) 例1用欧拉法解初值问题{ ' ? -取步长/匸02计算过程保留 b (o )= 1 4位小数。 解/i=0.2. f (x )= —y —xy 2<,首先建立欧拉迭代格式 y*+i =儿+ hf g,y k ) = y k -hy k -hx k y ; =0.2 儿(4 - x k y k )(k = 0,1,2) K 2=f(x n +^h, yk+-hK\)t gg+舟人,>'n +y/?A3);

当k=0, xi=0.2 时,已知x()=0,y()=l,有 y(0?2)今i=0?2X l(4-0X 1)=0.8000 当k=\. M=0?4时,已知“=0?2」尸0?8,有 y(0?4)今2=0.2 X 0.8X(4-0.2X0.8)=0.614 4 当k=2, xs=0.6 时,已知x2=0.4,y2=0.6144,有 y(0?6)今3=0.2 X0.6144X (4-0.4 X 0.4613)=0.8000 「J, ,2 ?_ ZX 例2用欧拉预报一校正公式求解初值问题\y + v +V sinx=,取步长/?=0.2,计算 .y ⑴=1 y(0.2),y(0.4)的近似值,计算过程保留5位小数。 解步长力=0.2,此时/(x,y)=—y—fsiiu 欧拉预报一校正公式为: 预报值兀I = y k + hfg y k) - I J_ 校正值)3=儿+尹(忑,儿)+ fg,儿+1)] 有迭代格式] 预报值儿+] = y k 4-h(-y k -y; sin x k) =y k (0?8-0?2儿sin x k) < h 、—— 2 校止值y如]=儿 +尸[(一片一力sinxJ + LN+i-yl sin.v I+1)] ——?> =儿(°?9一0?1儿sin心)一0?1(儿+| +y;j sin心利) 、"M=0.別=1」)=1 时,Xj=1.2> 有 儿=yo(°?8-O?2yo sinx0) = 1 x (0.8-02x lsin 1) = 0.63171 y(1.2) ?= lx(0.9-0.1xlxsinl)-0.1(0.63171+0.631712sinl.2) = 0.71549 当 T xi=1.2, yi=0.71549 时,x2=1.4,有 y2 =儿(0.8-0?2儿sinXj) = 0.71549x(0.8-02x0.71549sinl.2) =0.47697 y(14) z y2 = 0.71549x(0.9-0.1x0.71549xsin 1.2)-0.1(0.47697+ 0.476972 sin 1.4) =0.52608 V = 8 — 3y 例3写出用四阶龙格一库塔法求解初值问题^ ‘的计算公式,取步长/匸0.2计 b(0) = 2 算y(0.4)的近似值。讣算过程保留4位小数。 解此处.心,刃=8 —3”四阶龙格一库塔法公式为 艰=儿 + % + 2? + 2勺 + ?) 1 h, y n+ y/?A3): 本例计算公式为: 0 2 呱严儿+三(32?+2?+心

常微分方程边值问题的数值解法

第8章 常微分方程边值问题的数值解法 引 言 第7章介绍了求解常微分方程初值问题的常用的数值方法;本章将介绍常微分方程的边值问题的数值方法。 只含边界条件(boundary-value condition)作为定解条件的常微分方程求解问题称为常微分方程的边值问题(boundary-value problem). 为简明起见,我们以二阶边值问题为 则边值问题(8.1.1)有唯一解。 推论 若线性边值问题 ()()()()()(),, (),()y x p x y x q x y x f x a x b y a y b αβ'''=++≤≤?? ==? (8.1.2) 满足 (1) (),()p x q x 和()f x 在[,]a b 上连续; (2) 在[,]a b 上, ()0q x >, 则边值问题(8.1.1)有唯一解。 求边值问题的近似解,有三类基本方法: (1) 差分法(difference method),也就是用差商代替微分方程及边界条件中的导数,最终化为代数方程求解; (2) 有限元法(finite element method);

(3) 把边值问题转化为初值问题,然后用求初值问题的方法求解。 差分法 8.2.1 一类特殊类型二阶线性常微分方程的边值问题的差分法 设二阶线性常微分方程的边值问题为 (8.2.1)(8.2.2) ()()()(),,(),(), y x q x y x f x a x b y a y b αβ''-=<

常微分方程数值解法

i.常微分方程初值问题数值解法 常微分方程初值问题的真解可以看成是从给定初始点出发的一条连续曲线。差分法是常微分方程初值问题的主要数值解法,其目的是得到若干个离散点来逼近这条解曲线。有两个基本途径。一个是用离散点上的差商近似替代微商。另一个是先对微分方程积分得到积分方程,再利用离散点作数值积分。 i.1 常微分方程差分法 考虑常微分方程初值问题:求函数()u t 满足 (,), 0du f t u t T dt =<≤ (i.1a ) 0(0)u u = (i.1b) 其中(,)f t u 是定义在区域G : 0t T ≤≤, u <∞上的连续函数,0u 和T 是给定的常数。我们假设(,)f t u 对u 满足Lipschitz 条件,即存在常数L 使得 121212(,)(,), [0,]; ,(,)f t u f t u L u u t T u u -≤-?∈∈-∞∞ (i.2) 这一条件保证了(i.1)的解是适定的,即存在,唯一,而且连续依赖于初值0u 。 通常情况下,(i.1)的精确解不可能用简单的解析表达式给出,只能求近似解。本章讨论常微分方程最常用的近似数值解法-差分方法。先来讨论最简单的Euler 法。为此,首先将求解区域[0,]T 离散化为若干个离散点: 0110N N t t t t T -=<< <<= (i.3) 其中n t hn =,0h >称为步长。 在微积分课程中我们熟知,微商(即导数)是差商的极限。反过来,差商就是微商的近似。在0t t =处,在(i.1a )中用向前差商 10()()u t u t h -代替微商du dt ,便得 10000()()(,())u t u t hf t u t ε=++ 如果忽略误差项0ε,再换个记号,用i u 代替()i u t 便得到 1000(,)u u hf t u -= 一般地,我们有 1Euler (,), 0,1, ,1n n n n u u hf t u n N +=+=-方法: (i.4) 从(i.1b) 给出的初始值0u 出发,由上式可以依次算出1,,N t t 上的差分解1,,N u u 。

数值分析第五版全答案chap1

第一章 绪 论 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 =,*5 7 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 ()102 1()102 1()102 1()102 1()102x x x x x εεεεε-----=?=?=?=?=? ***124***1244333 (1)() ()()() 111101010222 1.0510x x x x x x εεεε----++=++=?+?+?=? ***123*********123231132143 (2)() ()()() 1111.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)(/)()() 110.0311056.430102256.43056.430 10x x x x x x x εεε---+≈??+??=?= 5计算球体积要使相对误差限为1,问度量半径R 时允许的相对误差限是多少? 解:球体体积为343V R π= 则何种函数的条件数为 2 3 '4343 p R V R R C V R ππ=== (*)(*)3(*)r p r r V C R R εεε∴≈= 又(*)1r V ε=

数值分析讲义线性方程组的解法

数值分析讲义 第三章线性方程组的解法 §3.0 引言 §3.1 雅可比(Jacobi)迭代法 §3.2 高斯-塞德尔(Gauss-Seidel)迭代法 §3.3 超松驰迭代法§3.7 三角分解法 §3.4 迭代法的收敛性§3.8 追赶法 §3.5 高斯消去法§3.9 其它应用 §3.6 高斯主元素消去法§3.10 误差分析 §3 作业讲评3 §3.11 总结

§3.0 引言 重要性:解线性代数方程组的有效方法在计算数学和科学计算中具有特殊的地位和作用.如弹性力学、电路分析、热传导和振动、以及社会科学及定量分析商业经济中的各种问题. 分类:线性方程组的解法可分为直接法和迭代法两种方法. (a) 直接法:对于给定的方程组,在没有舍入误差的假设下,能在预定的运算次数内求得精确解.最基本的直接法是Gauss消去法,重要的直接法全都受到Gauss消去法的启发.计算代价高. (b) 迭代法:基于一定的递推格式,产生逼近方程组精确解的近似序列.收敛性是其为迭代法的前提,此外,存在收敛速度与误差估计问题.简单实用,诱人.

§3.1 雅可比Jacobi 迭代法 (AX =b ) 1 基本思想: 与解f (x )=0 的不动点迭代相类似,将AX =b 改写为X =BX +f 的形式,建立雅可比方法的迭代格式:X k +1=BX (k )+f ,其中,B 称为迭代矩阵.其计算精度可控,特别适用于求解系数为大型稀疏矩阵(sparse matrices)的方程组. 2 问题: (a) 如何建立迭代格式? (b) 向量序列{X k }是否收敛以及收敛条件? 3 例题分析: 考虑解方程组??? ??=+--=-+-=--2.453.82102 .72103 21321321x x x x x x x x x (1) 其准确解为X *={1, 1.2, 1.3}. 建立与式(1)相等价的形式: ??? ??++=++=++=84.02.01.083.02.01.072 .02.01.02 13312321x x x x x x x x x (2) 据此建立迭代公式: ?????++=++=++=+++84 .02.01.083.02.01.072.02.01.0)(2)(1)1(3 )(3 )(1)1(23)(2)1(1k k k k k k k k k x x x x x x x x x (3) 取迭代初值0) 0(3 )0(2)0(1===x x x ,迭代结果如下表. JocabiMethodP31.cpp

数值分析课程第五版课后习题答案(李庆扬等)

第一章 绪论(12) 1、设0>x ,x 的相对误差为δ,求x ln 的误差。 [解]设0*>x 为x 的近似值,则有相对误差为δε=)(*x r ,绝对误差为**)(x x δε=,从而x ln 的误差为δδεε=='=* ****1)()(ln )(ln x x x x x , 相对误差为* * ** ln ln ) (ln )(ln x x x x r δ εε= = 。 2、设x 的相对误差为2%,求n x 的相对误差。 [解]设*x 为x 的近似值,则有相对误差为%2)(*=x r ε,绝对误差为**%2)(x x =ε,从而n x 的误差为n n x x n x n x x n x x x ** 1 *** %2%2) ()()()(ln * ?=='=-=εε, 相对误差为%2) () (ln )(ln *** n x x x n r == εε。 3、下列各数都是经过四舍五入得到的近似数,即误差不超过最后一位的半个单位,试指出它们是几位有效数字: 1021.1*1=x ,031.0*2=x ,6.385*3=x ,430.56*4=x ,0.17*5 ?=x 。 [解]1021.1*1 =x 有5位有效数字;0031.0* 2=x 有2位有效数字;6.385*3=x 有4位有效数字;430.56* 4 =x 有5位有效数字;0.17*5?=x 有2位有效数字。 4、利用公式(3.3)求下列各近似值的误差限,其中* 4*3*2*1,,,x x x x 均为第3题所给 的数。 (1)* 4*2*1x x x ++; [解]3 334* 4*2*11** *4*2*1*1005.1102 1 10211021)()()()()(----=?=?+?+?=++=? ??? ????=++∑x x x x x f x x x e n k k k εεεε; (2)* 3*2 *1x x x ;

常微分方程的数值解

实验4 常微分方程的数值解 【实验目的】 1.掌握用MATLAB软件求微分方程初值问题数值解的方法; 2.通过实例用微分方程模型解决简化的实际问题; 3.了解欧拉方法和龙格-库塔方法的基本思想和计算公式,及稳定性等概念。 【实验内容】 题3 小型火箭初始重量为1400kg,其中包括1080kg燃料。火箭竖直向上发射时燃料燃烧率为18kg/s,由此产生32000N的推力,火箭引擎在燃料用尽时关闭。设火箭上升时空气阻力正比于速度的平方,比例系数为0.4kg/m,求引擎关闭瞬间火箭的高度、速度、加速度,及火箭到达最高点的时的高度和加速度,并画出高度、速度、加速度随时间变化的图形。 模型及其求解 火箭在上升的过程可分为两个阶段,在全过程中假设重力加速度始终保持不变,g=9.8m/s2。 在第一个过程中,火箭通过燃烧燃料产生向上的推力,同时它还受到自身重力(包括自重和该时刻剩余燃料的重量)以及与速度平方成正比的空气阻力的作用,根据牛顿第二定律,三个力的合力产生加速度,方向竖直向上。因此有如下二式: a=dv/dt=(F-mg-0.4v2)/m=(32000-0.4v2)/(1400-18t)-9.8 dh/dt=v 又知初始时刻t=0,v=0,h=0。记x(1)=h,x(2)=v,根据MATLAB 可以求出0到60秒内火箭的速度、高度、加速度随时间的变化情况。程序如下: function [ dx ] = rocket( t,x ) a=[(32000-0.4*x(2)^2)/(1400-18*t)]-9.8; dx=[x(2);a]; end ts=0:1:60;

x0=[0,0]; [t,x]=ode45(@rocket,ts,x0); h=x(:,1); v=x(:,2); a=[(32000-0.4*(v.^2))./(1400-18*t)]-9.8; [t,h,v,a]; 数据如下: t h v a 0 0 0 13.06 1.00 6.57 13.19 13.30 2.00 26.44 26.58 1 3.45 3.00 59.76 40.06 13.50 4.00 106.57 53.54 13.43 5.00 16 6.79 66.89 13.26 6.00 240.27 80.02 12.99 7.00 326.72 92.83 12.61 8.00 425.79 105.22 12.15 9.00 536.99 117.11 11.62 10.00 659.80 128.43 11.02 11.00 793.63 139.14 10.38 12.00 937.85 149.18 9.71 13.00 1091.79 158.55 9.02 14.00 1254.71 167.23 8.33 15.00 1425.93 175.22 7.65 16.00 1604.83 182.55 6.99 17.00 1790.78 189.22 6.36 18.00 1983.13 195.27 5.76 19.00 2181.24 200.75 5.21 20.00 2384.47 205.70 4.69 21.00 2592.36 210.18 4.22 22.00 2804.52 214.19 3.79 23.00 3020.56 217.79 3.41 24.00 3240.08 221.01 3.07 25.00 3462.65 223.92 2.77 26.00 3687.88 226.56 2.50 27.00 3915.58 228.97 2.27

数值分析实验2_求解线性方程组直接法

一 实验目的 1.掌握求解线性方程组的高斯消元法及列主元素法; 2. 掌握求解线性方程组的克劳特法; 3. 掌握求解线性方程组的平方根法。 二 实验内容 1.用高斯消元法求解方程组(精度要求为610-=ε): 1231231 233272212240x x x x x x x x x -+=??-+-=-??-+=? 2.用克劳特法求解上述方程组(精度要求为610-=ε)。 3. 用平方根法求解上述方程组(精度要求为610-=ε)。 4. 用列主元素法求解方程组(精度要求为610-=ε): 1231231 233432222325x x x x x x x x x -+=??-+-=??--=-? 三 实验步骤(算法)与结果 1. 程序代码(Python3.6): import numpy as np def Gauss(A,b): n=len(b) for i in range(n-1): if A[i,i]!=0: for j in range(i+1,n): m=-A[j,i]/A[i,i] A[j,i:n]=A[j,i:n]+m*A[i,i:n] b[j]=b[j]+m*b[i] for k in range(n-1,-1,-1): b[k]=(b[k]-sum(A[k,(k+1):n]*b[(k+1):n]))/A[k,k]

print(b) 运行函数: >>> A=np.array([[3,-1,2],[-1,2,-2],[2,-2,4]],dtype=np.float) >>> b=np.array([7,-1,0],dtype=np.float) >>> x=Gauss(A,b) 输出: 结果:解得原方程的解为x1=3.5,x2=-1,x3=-2.25 2 程序代码(Python3.6): import numpy as np A=np.array([[3,-1,2],[-1,2,-2],[2,-2,4]],dtype=float) L=np.array([[1,0,0],[0,1,0],[0,0,1]],dtype=float) U=np.array([[0,0,0],[0,0,0],[0,0,0]],dtype=float) b=np.array([7,-1,0],dtype=float) y=np.array([0,0,0],dtype=float) x=np.array([0,0,0],dtype=float) def LU(A): n=len(A[0]) i=0 while i

9.正方形的边长大约为了100cm ,应怎样测量才能使其面积误差不超过2 1cm ? 解:正方形的面积函数为2 ()A x x = p7 当*100x =时,若(*)1A ε≤, 则21 (*)102 x ε-≤ ? 故测量中边长误差限不超过0.005cm 时,才能使其面积误差不超过2 1cm 第二章 插值法p48 1.当1,1,2 x =-时,()0,3,4f x =-, 分别用单项式基底、拉格朗日基底、牛顿基底求() f x 的二次插值多项式。 解: 0120121200102021101201220211,1,2, ()0,()3,()4;()()1 ()(1)(2)()()2()()1 ()(1)(2) ()()6 ()()1 ()(1)(1) ()()3 x x x f x f x f x x x x x l x x x x x x x x x x x l x x x x x x x x x x x l x x x x x x x ==-===-=--==-+-----==------= =-+-- 则二次拉格朗日插值多项式为 2 20 ()()k k k L x y l x ==∑ 0223()4() 14 (1)(2)(1)(1)23537623 l x l x x x x x x x =-+=---+-+=+- 2.给出()ln f x x =的数值表 用线性插值及二次插值计算的近似值。 解:由表格知,

常微分方程数值解法

第八章 常微分方程数值解法 考核知识点: 欧拉法,改进欧拉法,龙格-库塔法,单步法的收敛性与稳定性。 考核要求: 1. 解欧拉法,改进欧拉法的基本思想;熟练掌握用欧拉法,改进欧拉法、求微 分方程近似解的方法。 2. 了解龙格-库塔法的基本思想;掌握用龙格-库塔法求微分方程近似解的方 法。 3. 了解单步法的收敛性、稳定性与绝对稳定性。 例1 用欧拉法,预估——校正法求一阶微分方程初值问题 ? ??=-='1)0(y y x y ,在0=x (0,1)0.2近似解 解 (1)用1.0=h 欧拉法计算公式 n n n n n n x y y x y y 1.09.0)(1.01+=-+=+,1.0=n 计算得 9.01=y 82.01.01.09.09.02=?+?=y (2)用预估——校正法计算公式 1,0)(05.01.09.0)0(111)0(1=???-+-+=+=++++n y x y x y y x y y n n n n n n n n n 计算得 91.01=y ,83805.02=y 例2 已知一阶初值问题 ???=-='1 )0(5y y y 求使欧拉法绝对稳定的步长n 值。 解 由欧拉法公式 n n n n y h y h y y )51(51-=-=+ n n y h y ~)51(~1-=+

相减得01)51()51(e h e h e n n n -==-=-Λ 当 151≤-h 时,4.00≤

数值分析报告第五版_李庆扬_王能超_易大义主编课后习题问题详解

第一章 绪论 1.设0x >,x 的相对误差为δ,求ln x 的误差。 解:近似值* x 的相对误差为* **** r e x x e x x δ-= = = 而ln x 的误差为()1 ln *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 时允许的相对误差限是多少? 解:球体体积为343 V R π= 则何种函数的条件数为 2 3'4343 p R V R R C V R ππ=== (*)(*)3(*)r p r r V C R R εεε∴≈=

数值分析第五版全答案

第四章 数值积分与数值微分 1.确定下列求积公式中的特定参数,使其代数精度尽量高,并指明所构造出的求积公式所具有的代数精度: 101210121 12120 (1)()()(0)(); (2)()()(0)(); (3)()[(1)2()3()]/3; (4)()[(0)()]/2[(0)()]; h h h h h f x dx A f h A f A f h f x dx A f h A f A f h f x dx f f x f x f x dx h f f h ah f f h -----≈-++≈-++≈-++''≈++-?? ?? 解: 求解求积公式的代数精度时,应根据代数精度的定义,即求积公式对于次数不超过m 的多项式均能准确地成立,但对于m+1次多项式就不准确成立,进行验证性求解。 (1)若101(1) ()()(0)()h h f x dx A f h A f A f h --≈-++? 令()1f x =,则 1012h A A A -=++ 令()f x x =,则 110A h A h -=-+ 令2 ()f x x =,则 3 221123 h h A h A -=+ 从而解得 01 1431313A h A h A h -?=?? ?=?? ?=?? 令3 ()f x x =,则 3()0h h h h f x dx x dx --==? ? 101()(0)()0A f h A f A f h --++= 故 101()()(0)()h h f x dx A f h A f A f h --=-++? 成立。 令4 ()f x x =,则

数值分析第五版答案

第一章 绪论 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 ε= 故度量半径R 时允许的相对误差限为1 (*)10.333 r R ε=?≈ 6.设028Y = ,按递推公式1n n Y Y -= (n=1,2,…) 计算到100Y 27.982≈(5位有效数字),试问计算100Y 将有多大误差? 解:1n n Y Y -=- 10099Y Y ∴=- 9998Y Y = 9897Y Y =-…… 10Y Y =- 依次代入后,有1000100Y Y =- 即1000Y Y = 27.982, 100027.982Y Y ∴=-

数值分析报告 (李庆扬版)

《数值分析》作业 学院:机械学院 专业:机械工程 姓名:赵博 学号:2014520024 日期:2015年6月29日

第二章作业 问:用线性插值及二次插值计算ln0.54的近似值。 答:VB程序如下: Option Explicit Sub czfl(ByRef x() As Single, y() As Single, n As Integer, x1 As Double, f As Double) Dim i, j As Integer Dim p As Single Dim appexcel As Object Dim wbmybook As Object Dim wsmysheet As Object Set appexcel = CreateObject("excel.application") Set wbmybook = appexcel.workbooks.Add Set wsmysheet = appexcel.worksheets.Add f = 0 For i = 0 To n p = 1 For j = 0 To n If i <> j Then p = p * (x1 - x(j)) / (x(i) - x(j)) End If Next j wsmysheet.cells(i + 1, 1) = Str(p) wsmysheet.cells(i + 1, 2) = Str(p * y(i)) f = f + p * y(i) Next i wsmysheet.cells(n + 1, 3) = "最终结果" + Str(f) appexcel.Visible = True End Sub Private Sub Command1_Click(Index As Integer) Dim x() As Single

常微分方程数值解法

第八章 常微分方程的数值解法 一.内容要点 考虑一阶常微分方程初值问题:?????==0 0)() ,(y x y y x f dx dy 微分方程的数值解:设微分方程的解y (x )的存在区间是[a,b ],在[a,b ]内取一系列节 点a= x 0< x 1<…< x n =b ,其中h k =x k+1-x k ;(一般采用等距节点,h=(b-a)/n 称为步长)。在每个节点x k 求解函数y(x)的近似值:y k ≈y(x k ),这样y 0 , y 1 ,...,y n 称为微分方程的数值解。 用数值方法,求得f(x k )的近似值y k ,再用插值或拟合方法就求得y(x)的近似函数。 (一)常微分方程处置问题解得存在唯一性定理 对于常微分方程初值问题:?????==0 0)() ,(y x y y x f dx dy 如果: (1) 在B y y A x x 00≤-≤≤,的矩形内),(y x f 是一个二元连续函数。 (2) ),(y x f 对于y 满足利普希茨条件,即 2121y y L y x f y x f -≤-),(),(则在C x x 0≤≤上方程?????==0 0)() ,(y x y y x f dx dy 的解存在且唯一,这里C=min((A-x 0),x 0+B/L),L 是利普希茨常数。 定义:任何一个一步方法可以写为),,(h y x h y y k k k 1k Φ+=+,其中),,(h y x k k Φ称为算法的增量函数。 收敛性定理:若一步方法满足: (1)是p 解的. (2) 增量函数),,(h y x k k Φ对于y 满足利普希茨条件. (3) 初始值y 0是精确的。则),()()(p h O x y kh y =-kh =x -x 0,也就是有 0x y y lim k x x kh 0h 0 =--=→)( (一)、主要算法 1.局部截断误差 局部截断误差:当y(x k )是精确解时,由y(x k )按照数值方法计算出来的1~ +k y 的误差y (x k+1)- 1~ +k y 称为局部截断误差。 注意:y k+1和1~ +k y 的区别。因而局部截断误差与误差e k +1=y (x k +1) -y k +1不同。 如果局部截断误差是O (h p+1),我们就说该数值方法具有p 阶精度。

相关主题
文本预览
相关文档 最新文档