数值确定欧拉法的收敛阶

计算科学 数值分析 收敛
2021-12-05 12:56:35

我需要在数值上确定欧拉方法在各种步长下的收敛顺序。我不确定如何去做。

这是问题:

问题陈述: dydt=αtα1,y(0)=0, 在哪里α>0. 用欧拉法求解初值问题α=2.5,1,5,1.1带步长h=0.2,0.1,0.05. 数值确定这些问题的欧拉方法的收敛阶数。

我创建了一个 Excel 电子表格,其中列出了所有相关信息(使用 Excel 公式),并带有列i,ti=a+ih,a,b,α,N,wi,y(ti),|y(ti)wi|在哪里:

i=迭代中的第 i 步

ti= 第 i 步的时间

a=初始时间值

b=最终时间价值

α=问题不断

N=子区间数

wi=在第 i 步近似解

y(ti)=第 i 步的真正解决方案

|y(ti)wi|=误差幅度

现在,因为我无法估计错误κ仅来自一个积分,因为误差项近似为errort=b(h)=Ahκ, 一个步长不足以估计κ. 但是,如果我对误差和步长进行对数图,则最佳线的斜率将给出所需的估计值κ,应该接近 1。

我的问题是如何在 Excel 2013 中绘制错误和步长的对数图?我了解这一切背后的数学原理,但不知道如何实现它。

在此处输入图像描述

谢谢。

1个回答

任务是使用 Excel 来说明应用于三个常微分方程的欧拉方法的收敛速度:

dydt=αtα1 for α=2.5,1.5,1.1

有初始条件y(0)=0,通过改变步长h=0.2,0,1,0.05. 精明的读者会发现这些 IVP 是非常简单的集成,而且由于精确的解决方案tα可以通过明确的积分获得,比如说y(1)=1为了比较,我们可以将 Excel 中的三个数据集列成logh与“错误”日志相比E=|yh(ti)1|t=1(或其他一些方便的端点)。

在网上不难找到有关如何让 Excel 将最佳拟合线与数据“散点图”结合起来的说明。注意步长h这里是几何级数,所以在取对数之后,我们将有等距的参数。

线的斜率给了我们方法的收敛顺序,即误差的指数E随步长变化h. 虽然(前向)欧拉方法的局部截断误差表现为O(h2), 较小h,按比例需要更多的步骤才能达到相同的端点。因此,全局截断错误的行为只像O(h).

现在修改后的欧拉方法做了更多的工作并且应该获得更好的收敛速度,类似于使用更高阶的精确正交规则。修正(中点)欧拉法的局部截断误差为O(h3)因此它的全局截断误差是O(h2).

您报告获得了约0.5,但这应该更像2. 我怀疑分子/分母混淆已经潜入直线拟合。如果不是,那么修改后的 Euler 方法的实现方式就有问题。它的收敛速度应该比基本的欧拉方法有所提高。