1. 引言
记
为简单,记
。下式为半直线上Kortewego-de Vries (KdV)方程初边值
问题 [1] [2] [3]:
(1)
其中
和
是常数。文献 [4] [5] [6] 用谱方法或有限元/b-样条有限元方法研究有界区域上KdV方程的数值解,针对方程(1)中的参数
的不同取值,文献 [7] [8] 利用空间Hermite谱配置方法、时间有限差分方法或Chebyshev-Hermite多项式时空谱配置方法求解其Cauchy问题的数值解;文献 [9] 用Laguerre拟谱方法研究了半直线上非线性热传导方程的数值解。针对问题(1)的孤波解的性态,用含有因子
的插值函数可以更好地逼近问题的理论解,同时通过适当选取伸缩因子
可以改进数值误差精度。另外,用Gauss型节点得到的Lagrang插值多项式,与其相关的高阶微分矩阵是一阶微分矩阵的乘积,这为实际计算带来极大的方便。
2. 基于Gauss型节点的Lagrange插值函数及其微分矩阵
次数为l的广义拉盖尔多项式定义为 [9]:
(2)
广义拉盖尔函数定义为:
(3)
特别,
。
令
是
的根。以
为节点的通常的Lagrange插值基函数为 [9] [10] [11]
对任意
,其Lagrange插值多项式为:
对
求m阶导数得,
令
则由文献 [9] [10] [11]
(4)
(5)
特别,
3. KdV方程的谱配置方法
3.1. KdV方程的谱配置格式
在式(1)中去
,考虑KdV方程的初边值问题:
(6)
用
,逼近式(6)的解
,将其代入式(6),得
(7)
式(7)等价于
(8)
令
,及
式(8)的矩阵形式为
(9)
其中符号“
”表示对应位置元素相乘。
3.2. 数值结果
用格式(9)求解式(6)。在时间方向用步长为
的Crank-Nicolson格式离散式(9),得
(10)
上式中I是N阶单位矩阵。显然(10)式是关于
的非线性方程,通常用解非线性方程的迭代方法求其近似解。实际计算时一般用的是Newton迭代方法,但计算迭代矩阵比较麻烦。为简单起见,用如下的不动点迭代方法:对时间方向
处构造迭代格式:
(11)
在迭代过程中给出条件:对任给的
,当
时终止迭代,可得
在
处的值。
在(1)式中取
,相应的KdV方程有如下孤波解 [1] [10]:
(12)
上式中的
和
是任意参数。用如下的无穷范数
计算数值解与理论解之间的误差。图(a)给出
时不同时间步长
对应的误差
的常用对数
随N的变化关系。可以发现,数值误差
只须空间节点数
,时间步长
时,误差即达到
量级,说明所提算法格式有谱精度;图(b)与图(a)相比较,就是理论解(12)中的参数
由0.3变为0.5,插值函数中的伸缩因子
由1变为1.5。可以看出,算法格式(9)对(10)式中的参数
有较强的适应性,当
较大时插值基函数中的
也适当的变大,空间方向仍可以达到谱精度;而已有的文献通常对较小的
逼近精确解(10),所以算法格式(9)对参数
是稳定的,这是所提算法的一个优点。图(c)给出时间t分别取1和50时的误差变化,当
时,需要增加节点个数,所提算法格式仍然有效。图(d)是选取插值函数中的伸缩因子
不同的值时的误差,表明对孤波解而言,当选择较大的
时,数值误差
会变的小一些,
的值通过试验得到的,理论上还没有解决如何选取最好的
值。

(a)
(b)

(c)
(d)
4. 结论
为了避免通常的等距节点Lagrange插值多项式当次数较高时(
)出现Runge现象,而采用Gauss型节点构造Lagrange插值多项式逼近问题(1)解。考虑到问题(1)的孤波解的性态,当
时,其迅速衰减为零,用含有因子
的插值函数可以使逼近函数与问题(1)的理论解更好的吻合,从而得到较高精度的数值解。特别,所给算法也适合于(10)中较大的参数
及变量时间t值,表明算法格式(9)是强健的。
基金项目
国家自然科学基金项目(11371123);SRTP (N.2019198)。