如何估计收敛阶数?这个公式怎么样?

计算科学 数值分析 误差估计
2021-12-13 18:06:36

我已经用解析方程求解了 PDE。通过运算符拆分,我使用顺序方法将 PDE 分为一个 PDE 和一个 ODE。

最后为了不同dt,我得到了欧几里得范数的差异:

欧几里得范数
dt1 error1
dt2 error2
dt3 error3

我想知道我的数字方案的顺序,这可能吗?我看过以下公式:

(p+1)estimated=log10(error1)log10(error2)log10(dt1)log10(dt2)

2个回答

估计数值方案的顺序的想法如下。如果您只有一个离散化参数,请说dt,您首先假设错误具有以下字符e=C(dt)p在哪里e当比较数值解和精确解时,例如在固定时间,你首选的“全局”错误是什么?T(即你需要不同数量的时间步长不同dt)。如果您期望错误的这种行为,那么p表示方法的顺序。

所以

e1=C(dt1)p,e2=C(dt2)p.
然后你做一个简化(一个近似值)C在这两种情况下都是相同的,一般情况下是不正确的,但是对于足够小的dt这个近似值是合理的。做简单的代数计算,你得到
e2e1=(dt2dt1)p
你可以像你写的那样表达。最简单的方法是使用dt2=dt1/2当足够小dt1你可以估计p=1如果e2=e1/2要么p=2如果e2=e1/4等等。

首先说明 - 您通常不(也不想)估计在许多情况下是有序的局部截断误差p+1. 其次,您提到 PDE,因此您通常还有另一个离散化步骤,例如dx(或者你用解析方法解决分裂方法中的一个方程?)。那么您的错误将由较低的阶精度主导,因此在没有阶的先验知识的情况下,不容易估计它。

我不是 100% 确定,虽然我会说这个问题的答案可以在以下书中找到(我还没有找到),显然本地截断错误的定义由下式给出

p=sup{qN:limτ0E(τ)τq+1=c<+inf}

p 是顺序,E 是取决于 qa natural 的误差(我猜),c 是常数。一致p>0。然后你将 tau 靠近机器零,并看到极限。

τ

这个公式有什么参考价值?另外,我认为这种方法可以在线用于本地截断错误,所以一步。我的结果在模拟结束时。所以我想问一下,我还有什么其他方法可以从我的全局错误中找到顺序?

谢谢