c7ce1858-27d8-47f5-a7be-47ee77968416
本文首发于 算法社区 dspstack.com,转载请注明出处,谢谢。
二维声波传播方程的有限差分解法
- 二维声波方程在Oxz平面表示:
- 有限差分表示:
其中f(t)表示源函数,我们用Ricker作为激发源。
- 离散化的二维声波方程
- matlab示例
x,z向共201个节点,节点间隔h=8m,时间采样点位400,采样间隔为0.001s。假设声音传播速度为3km/s,激发源在i=100,j=100处。Ricker主频为20Hz,频带控制参数r=3.
clc;
clear;
Nx=201; Nz=201; Nt=400;%设置采样点数,采样时间点数
h=8; %x方向和z方向的步长
dt=0.001; %时间步长
c=3000; %波传播速度为3km/s
f=20; %震源频率
gama=3; %频带控制参数
A=(dt*c)^2/h^2;
u=zeros(Nx,Nz,Nt);
for k=