matlab算出中心差分方法_有限差分法(FDM)实现声波方程数值模拟

e3578bc4d64564ad722ea6908122f9df.png

0. 前言

实现声波方程的数值模拟,常见的方法包括有限差分法(Finite Difference Method-FDM)、伪谱法(Pseudo-spectral Method-PSM)、有限单元法(Finite Element Method-FEM),这里先介绍如何使用FDM-2、FDM-4(即三点有限差分法和五点有限差分法)求解声波方程,在之后的文章中在逐一介绍其他方法。


1. 模型建立

声波方程的一般形式如公式(1)所示,可以发现方程中存在对波动u的二阶时间偏导,以及对空间坐标x,y的二阶偏导。要直接求解(1)的解析解是比较困难的,我们常常会使用各种近似的数值解来逼近解析解。

76f23fd373e7a1c7cf78f52864e2fd12.png

有限差分法便是其中常用的一种数值计算方法,FDM的基本原理类似于我们求解斜率的方法,其本质上是使用了泰勒级数展开并略去高阶项,这里就不展开讲了。

  • 1.1 偏微分项的处理

对于时间项的二阶偏导,使用三点差分格式:

385b02fbbc3d21708ab72a875d6763c0.png

我们在这里约定u的下角标代表空间上的离散点索引(index),上标代表时间上的差分索引,k时刻代表当前时刻,k+1代表下一时刻,k-1代表前一时刻。

对于空间上,在x和y方向上进行离散,我们假设在x和z方向上离散点的间距相同,即

2fe08514a338115c09c1c8b0877f47a5.png
对空间离散并
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值