(matlab代码)绘制地震记录的F-K谱
% 需要讀入數據:地震記錄DATA_DISP 采樣時間dt 道間距dx
datatt = DATA_DISP’;%轉置后橫軸為時間
% dt=0.005;
dv = 1;
dx = 1; %【改!道間距】
vmax=vmax_plot;
vmin=5; % 設置速度間隔 最大最小掃描速度
nt=size(datatt,2); % 采樣點數
f_samplt = 1/dt; % 采樣頻率
nx=size(datatt,1); % 道數
kx=1/dx; % 波數
nx_plus = 4096;
nt_plus=5000;
datatt(nx_plus,nt_plus)=0;%道數方向,時間方向充零
fk = abs(fft2(datatt));%t-x轉化到f-k域
fk = fftshift(fk);%零頻部分移動至中心
% 將雙側頻譜fk轉化到單側頻譜fk_side 其頻率波數間隔df dk,橫縱坐標范圍:f k 坐標點個數fn kn
f_max=20; % 選擇頻散圖中的最大頻率
df = f_samplt/nt_plus;
dk = kx/nx_plus;
fk_side = fk(1:end/2,end/2:end/2+floor(f_max/df));
kn=size(fk_side,1);fn=size(fk_side,2);
k = linspace(0,kx/2,kn);
f2 = linspace(0,f_max,fn);
% figure
% resolution=500;
% [~,ch]=contourf(f2,fliplr(k),fk_side,resolution);
% set(ch,‘linestyle’,‘none’);
% title(‘F-K域能量圖’);
% xlabel(‘頻率 HZ’);ylabel(‘波數 m-1’);
% axis([0 100 0 0.25])
% colormap(jet)
總結
以上是生活随笔為你收集整理的(matlab代码)绘制地震记录的F-K谱的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【DS】数据结构八股文英文版(1)
- 下一篇: 医院药库管理系统 v6.26 下载