这是什么有限差分法?

计算科学 有限差分
2021-12-03 17:47:55

我正在审查通过松弛求解 ODE 的数值配方方法(第 3 版中的第 18.3 章),他们选择了一种我不熟悉的有限差分方法(方程 18.3.2):

dydx=g(x,y),ykyk1xkxk1=g(12(xk+xk1),12(yk+yk1)).

不幸的是,他们只是将其称为将 ODE 转换为有限差分方程的“非唯一”方法。对我来说新的是对方程的非齐次部分的变量进行平均。几乎让我想起了 Crank-Nicholson,但它不是在时间上对整个进行平均,而是在空间上对变量本身进行平均,即,不仅仅是空间与时间的差异。例如,假设是熟悉的时间坐标,那么 Crank-Nicholson 看起来像g(x,y)g(x,y)xxt

dydt=g(t,y),ynyn1tntn1=12{g(tn,yn)+g(tn1,yn1)}g(tn+1/2,yn+1/2).

也许这种方法没有一个通用名称,但就如何根据有限差分处理方程的非齐次部分进行一般性讨论会有所帮助。正如您所说,该方法直观地看起来“更好”之间的平均斜率,即等式 1 的左侧,等于中点的斜率(右侧),而不是处的斜率(传统的向后差分方法)。这有点符合 Crank-Nicholson 的哲学,即的时间导数的平均值。但同样,这与中途时间步的实际导数(xkxk1xktntn1等式 2) 的一部分。

1个回答

这种技术的一个通用名称是(隐式)中点法,使用与黎曼积分的中点规则等效的 ODE 进行评估,就像Crank-Nicolson等效于梯形规则(注意没有h在名称中,虽然自动更正工具经常引入一个)。不幸的是,这个名称并不是绝对通用的,而且该方法也适用于许多其他数值技术分类法。