数值分析思考题9

更新时间:2023-11-11 09:41:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数值分析思考题9

1、 一个算法局部误差和整体误差的区别是什么?如何定义常微

分方程数值方法的阶?

称 en?y(xn)?yn为某方法在点xn的整体截断误差,设yn是准确的,用某种方法计算yn时产生的截断误差,称为该方法的局部截断误差。可以知道,整体误差来自于前面误差积累,而局部误差只来自于yn的

p?1T?O(h),n?1误差。如果给定方法的局部截断误差为其中p为自然数,

则称该方法是p阶的或具有p阶精度。

2、 显式方法和隐式方法的优缺点分别是什么?多步法中为什么

还要使用单步法? 显式方法优点:方法简单快速。

缺点:精度低。

隐式方法优点:稳定性好。

缺点:精度低,计算量大。

多步法需要多个初值来启动迭代,而初值的计算需要用到单步法。 3、 刚性问题的求解困难主要体现在哪儿?计算刚性问题的最简

单的稳定方法是什么?

了保证数值稳定性,步长h需要足够小,但是为了反映解的完整性,x区间又需要足够长,计算速度变慢。最简单的稳定方法就是扩大绝对稳定域。

4、分别用欧拉向前法、欧拉向后法、改进的欧拉法、经典的四阶Runge-Kutta法、四阶Adams方法计算下列微分方程初值问题的解。

y?dy3?x?,1?x?2?(1)?dx; x?y(1)?0.4?(2)??y'??10y?9z,?y(1)?1,满足?,1?x?2。

z'?10y?11z,z(1)?1,??解:(1)取步长为0.1,

3向前Euler公式:yn?1?yn?hf(xn,yn)=0.1xn?(1?0.1)y xnn40.1xn?1?ynxn?1向后Euler公式:yn?1?yn?hf(xn?1,yn?1)?

xn?1?0.1hyn?1?yn??f(xn,yn)?f?xn?1,yn?hf(xn,yn)????2改进的Euler公式: 3?0.1x?y0.1?3yn3n?1n?yn??xn??xn?1?3?22?xnxn?1?xn?1?经典的四阶Runge-Kutta法:

yn?1?yn?h(k1?2k2?2k3?k4) 6k1?f(xn,yn)

k2?f(xn?hh,yn?k1) 22hh,yn?k2) 22k3?f(xn?k4?f(xn?h,yn?hk3)

四阶显示Adams方法:

(0)yn?1?yn?h[55f(xn,yn)?59f(xn?1,yn?1)?37f(xn?2,yn?2)?9f(xn?3,yn?3)] 24h(0)[9f(xn?1,yn?1)?19f(xn,yn)?5f(xn?1,yn?1)?f(xn?2,yn?2)] 24yn?1?yn?

改进的X 向前Euler 向后Euler Euler 经典的四阶Runge-Kutta 四阶显示Adams 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0

0.4000 0.4600 0.5513 0.6781 0.8457 1.0597 1.3265 1.6532 2.0473 2.5167 3.0702 0.4000 0.4887 0.6106 0.7710 0.9757 1.2311 1.5442 1.9224 2.3737 2.9067 3.5302 0.4000 0.4756 0.5834 0.7281 0.9153 1.1511 1.4422 1.7957 2.2196 2.7220 3.3117 0.4000 0.4746 0.5814 0.7251 0.9112 1.1458 1.4357 1.7881 2.2106 2.7117 3.3000 0.4000 0.4746 0.5814 0.7251 0.9112 1.1458 1.4357 1.7881 2.2106 2.7117 3.3000 (2)二元微分方程组,经典的四阶Runge-Kutta法公式为:

yn?1?yn?h(k?2k2?2k3?k4) 61h(L1?2L2?2L3?L4) 6zn?1?zn?k1?f(xn,yn,zn)

k2?f(xn?hhh,yn?k1,zn?L1) 222hhh,yn?k2,zn?L2) 222k3?f(xn?k4?f(xn?h,yn?hk3,zn?hL3)

L1?g(xn,yn,zn)

L2?g(xn?hhh,yn?k1,zn?L1) 222hhh,yn?k2,zn?L2) 222L3?g(xn?L4?g(xn?h,yn?hk3,zn?hL3)

改进的欧拉即为特殊的二阶龙格-库塔,公式在此不累述,注意系数。思路同上,四点Adams公式在此也不累述,注意前四项须由四阶龙格-库塔求得以启动迭代。 编程求解得

经典的四阶改进的Euler 四点阶Adams Runge-Kutta x y 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.0000 0.9048 0.8187 0.7408 0.6703 0.6065 0.5488 0.4966 0.4493 z 1.0000 0.9048 0.8187 0.7408 0.6703 0.6065 0.5488 0.4966 0.4493 y 1.0000 0.9048 0.8187 0.7408 0.6703 0.6065 0.5488 0.4966 0.4493 z 1.0000 0.9048 0.8187 0.7408 0.6703 0.6065 0.5488 0.4966 0.4493 y 1.0000 0.9048 0.8187 0.7408 0.6703 0.6065 0.5488 0.4966 0.4493 z 1.0000 0.9048 0.8187 0.7408 0.6703 0.6065 0.5488 0.4966 0.4493 1.9 2.0 0.4066 0.3679 0.4066 0.3679 0.4066 0.3679 0.4066 0.3679 0.4066 0.3679 0.4066 0.3679 取步长h=0.1,则向前Euler公式:

yn?1?yn?hf(xn,yn,zn)=0.9zn zn?1?yn?hg(xn,yn,zn)=yn-0.1zn

向后Euler公式:

yn?1?yn?0.9z2.1n 0.92?2.1zn?1?1?0.9?y?zn? n2.1?2.1??编程求解得

向前Euler 向后Euler x 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 y 1.0000 0.9000 0.8100 0.7290 0.6561 0.5905 0.5314 0.4783 0.4305 z 1.0000 0.9000 0.8100 0.7290 0.6561 0.5905 0.5314 0.4783 0.4305 y 1.0000 0.9091 0.8264 0.7513 0.6830 0.6209 0.5645 0.5132 0.4665 z 1.0000 0.9091 0.8264 0.7513 0.6830 0.6209 0.5645 0.5132 0.4665 1.9 2.0 0.3874 0.3487 0.3874 0.3487

0.4241 0.3855 0.4241 0.3855

本文来源:https://www.bwwdw.com/article/kxsv.html

Top