方案的 L 稳定性或 A 稳定性与其保持二次不变量的能力有何关系?

计算科学 数值分析 时间积分 保护
2021-12-18 18:19:35

我正在使用振荡器的简单示例:

(1)u¨+u=0,u(0)=u0

我知道 Forward Euler 不保留上述系统的不变量:

(2)u˙2+u2=1

如果我将它写为一阶方程组,我可以得到一个矩阵的特征值,该矩阵使用前向欧拉近似求解但是,鉴于这些特征值和前向欧拉的稳定性属性,我不明白我能推断出前向欧拉保持(1)(2)

我希望能够总体上理解这一点,对于任何方案,不一定是 FE。

因此,例如,我知道梯形规则方案与前向欧拉不同,擅长保留,但我很难看到基于梯形规则的问题的矩阵特征值在质量上有何不同。 ..(2)

梯形规则是 L 稳定的(即, for with),但 Backwards Euler 也是如此,它不保留这里的模式是什么?Re(G(kλ))<0u˙=λuRe(λ)<0(2)

2个回答

在某种意义上,@Geoff Oxberry 说二次不变量的稳定性和保存没有直接关系是正确的。例如,存在可以为您的问题保留能量的显式方法(它们肯定不是稳定的)。A

然而,在另一种意义上,两者之间存在某种关系。

体贴入微

首先,请注意,您所描述的问题不是很好,并且您给出的不变量不符合问题描述。我相信你应该有

u¨+u=0

有初始条件

u(0)=u0
其中那么问题是适定的,并且您编写的不变条件如下。
u˙(0)=v0
u02+v02=1

能量守恒

现在,如果你将这个二阶方程重写为一阶系统

(u˙v˙)=(0110)(uv),

你发现特征值是如果我们将上面的系统写为,则精确解由 给出 ,你有能量守恒的原因是对于的两个特征值。±iw˙=Aw

w(t)=exp(At)w(0)
|eλt|=1A

离散守恒

用一步法离散化后,您将得到一个形式为

wn+1=R(ΔtA)wn,

其中是数值时间步长,是方法的稳定性函数(通常是多项式或有理函数)。由于是正常的,因此要进行离散守恒,您需要. ΔtR(z)A

|R(±iΔt)|=1.

连接

解释刚刚陈述的条件的一种方法是说ODE 系统的特征值,按数值时间步长缩放,必须位于数值积分器的绝对稳定区域的边界上这是因为稳定区域被精确地定义为复数的集合,其中z|R(z)|1

因此,只要有正确的时间步长,即使是四阶龙格-库塔方法也可以用来保存这个问题的能量,因为它的稳定区域边界与虚轴相交。当然没有人推荐这个,因为它只适用于的一个特殊值。Δt

梯形法则对任何时间步都保持能量守恒,因为它的绝对稳定区域正好是左半平面;都满足上述条件Δt

同时,前向或后向欧拉方法不可能保存能量,因为这些方法有一个稳定区域,其边界仅与原点处的假想轴接触。

不变量的稳定性和保存是不相关的。Hairer 在他的书Geometric Integration中很好地证明了各种方法如何保留不同类型的不变量第三章与您的问题最相关,例如,他在其中演示了 RK 方法和线性多步方法保留了线性第一不变量。