求解四阶微分方程

计算科学 有限差分 积分方程
2021-12-09 20:01:11

我想解决

2t2u(z,t)+a2z2u(z,t)+k4z4u(z,t)=0

u(z,0)=1+0.1ez22. 我想研究波浪的动态。

最简单的方法是什么?

我尝试使用有限差分法,但我的解决方案很快就发散了!

我使用这个迭代

fjn+1=2fjnfjn1+Δt2Δz2a(fj+1n2fjn+fj1n)+kΔt2Δz4(fj2n4fj1n+6fjn4fj+1n+fj+2n)
在哪里n这是时间步和j空间步。

评论后改进我的问题:

我使用了一个非常小的时间步,这就是我得到的:

震惊

这种迭代方法如何避免反射?

1个回答

你没有指定边界条件,但听起来你想解决柯西问题(即整条实线上的初值问题<z<)。

在这种情况下,不需要使用有限差分。您可以简单地使用傅立叶分析(变量分离)来写下确切的答案。一旦你有了它,你可以通过截断域和傅里叶模式集来对其进行数值评估。

如果您插入 ansatz

u(z,t)=exp(i(ξxωt))

进入你的波动方程,你会发现每个波数有两个传播频率ξ

ω(ξ)=±aξ2kξ4.

这些对应于左行波和右行波。要写下完整的解决方案,您需要确定初始数据的哪一部分是双向的。这取决于ut(z,0),你没有指定。没有这些信息,问题就不是很好。