Zabusky 和 ​​Kruskal 对 KdV 方程的步进器的困惑

计算科学 有限差分 流体动力学
2021-12-07 23:18:11

Zabusky 和 ​​Kruskal关于孤子的论文中,他们为 Korteweg de Vries 方程(他们的脚注 6)推导出了以下更新: 他们的设置是一个初值问题(所以是已知的所有中的周期性边界条件,因此索引没有问题。

uij+1=uij113kh(ui1j+uij+ui+1j)(ui+1jui1j)δ2kh3(ui+2j2ui+1j+2ui1jui2j)
ui0iiui+2Nj=uiji

但是如果我只知道,那么更新需要来获取(当然,一旦我知道了这些,我就可以毫无问题地开始了。)那么我怎样才能使用这个方案来获得呢?ui0ui1ui2ui1

(我目前的怀疑是他们使用方程(6)表示。仍然不确定。)u=cos(π(xut))u1

1个回答

方法可以浓缩为 即弱稳定 2 -step Nyström 方案,也称为“中心欧拉方法”。请参阅有关标量方法的一些注释,以在最后的错误曲线图中看到该方法对的选择相当敏感。虽然该方法是二阶的,但建议至少进行三阶初始化和足够小的时间步长。为简单起见,计算的 RK4 步长。

uj+1=uj1+2kF(uj)
u1u˙=F(u)

然而,使用 Nyström 方法或 lsoda 求解器,这两种方法都产生了与论文中的图 2 很好对应的山景。

解随时间变化的曲面图

N=200个子区间,即使用论文h=0.01k=0.05h3δ2δ=0.022