我对一阶形式的波动方程的离散化没有给出正确的解。我该怎么办?

计算科学 双曲-pde 龙格库塔 波传播
2021-12-26 14:19:41

我在守恒定律、冲击等方面没有太多经验。在将波动方程重新公式化为一阶系统(速度应力)后: 其中:

vt+Avx+Bvy=0
v=(vx,vy,σx,σy,σxy)A=A(ρ,μ,λ)B=B(ρ,μ,λ)

我将我的 Dirichlet BC 放在第一个组件(一些常数 vx)并获得了僵硬的行为。我用二阶方程尝试了相同的模型,并看到美丽的波在传播。在这里,我使用显式求解器(FD、RK4)立即传播和加载大量不稳定性。网格越细,我得到的高频振荡就越多。也许我习惯了位移,不明白这个公式......

我的问题是:有什么方法可以用普通工具解决这类问题,还是我应该用黎曼求解器等来解决?我的长期计划是将其扩展到 DG。有很多关于戈杜诺夫计划等的论文,但我不太明白发生了什么……

编辑:是的,它是一个线性双曲线系统。我以更“通俗”的方式使用了“僵硬”一词。我无法使用 Dirichlet BC 为该系统找到稳定的显式时间步长方案。即使对于极低的 dt (1e-20),远低于 CFL,我也会在整个域中立即获得波。另一方面,对于隐式,解决方案不会正确传播。例如,二阶系统的正弦激励 u1 = y = sin(100*t) 看起来像这样(网格显然太粗但非常精细): 你 对于一阶系统,余弦激励 v1 = y' = 100*cos(100* t) 像这样: v

相同的网格尺寸,相同的时间步长(Crank-Nicolson)。我想这在物理上是不正确的......

编辑:波也不会从中间传播: 在此处输入图像描述

0个回答
没有发现任何回复~