MATLAB Answers

Bandpass filter of set of Data

3 ビュー (過去 30 日間)
Abdullah Jarah
Abdullah Jarah 2021 年 4 月 20 日
回答済み: Mahesh Taparia 2021 年 6 月 3 日
Hello All,
I want to filter some seismic data I have like an array (27*4352) elements and I want to filter this data with Pass-Band filter so only Frequency between 100-2000 Hz will access I was reading a lot of codes and functions like Butterworth or filter(filter) that could help but I'm not able to perform the filter untill now? any suggestions to do that!
I use trying something but not sure!
%addpath('~/segymat1.6')
% read the data set in mtx files
filename = ('shot_1.mtx')
seismogram = readSeismogram(filename);
DT= 0.00003125;
T=1*DT:DT:size(seismogram,2)*DT;
Fs = 1/DT;
T = 0.135;
ns=round(T/DT);
% design filter
[b_pass, a_pass] = butter(2,[100,2000]/(Fs/2), 'bandpass');
%freqz(b_pass, a_pass)
plot(filtfilt(b_pass, a_pass, seismogram));

回答 (1 件)

Mahesh Taparia
Mahesh Taparia 2021 年 6 月 3 日
Hi
You can use 'bandpass' function to apply a bandpass filter to your data. For more information you can refer its documentation here. Hope it will help.

タグ

製品


リリース

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by