非均匀平流方程的 Crank-Nicolson 方法

计算科学 pde 有限差分 双曲-pde 平流 曲柄尼科尔森
2021-12-09 19:35:33

假设我们有非均匀平流方程

(x+1ct)u(t,x)=v(t,x)
为了u,v:R×RR(边界条件尚未指定)。

假设我们没有v,即方程的齐次部分,Crank-Nicolson 方法将产生

cμ4u1n+1+un+1+cμ4u+1n+1=cμ4u1n+uncμ4u+1n,

在哪里μ=ΔtΔxun=u(nΔt,Δx).

我不知道如何处理这些方案中的不均匀性。

1个回答

一旦空间被离散化,您的方程可以用以下方式编写(任何空间导数近似都是有效的):

(*)1cduidt=(ux)i(t)+vi(t)
请记住,vi(t)=v(xi,t).

现在方程组只取决于时间t您可以应用 Crack Nicholson 方法来求解 ODE 系统。为了简单,让右手边()命名为:

Fi(t)=vi(t)(ux)i(t)
因此()cab ne 改写如下:
(**)1cduidt=Fi(t)

Cranck-Nicholson 方法可以从θ方法设置θ=1/2,因此,时间离散方程()是:

1cuin+1uinδt=θFi(tn+1)+(1θ)Fi(tn)=12[Fi(tn+1)+Fi(tn)]

不要忘记我们有表达Fi(t), 其中函数vi(t)也存在。

希望您现在知道如何处理该术语。