Computing wavenumber using fft2

13 Ansichten (letzte 30 Tage)
Lucia Gonzalez
Lucia Gonzalez am 13 Mai 2019
Hi everyone,
I am working on an attenuation study using 52 shots with 51 receivers (traces). I already calculated the amplitude spectra using fft but now I want to calculate wavenumber which for what I read, I have to use fft2. However, I am having trouble because I cant seem to display results. nori2 is the matrix that is storing everything and it has 3 dimensions because in the filt_traces variable I stored the 52 shots with their respective time and traces, in this case 51. In other words, filt_traces is a 52x5001x51 matrix and I wanted nori2 to be the same size. Again, I exactly use this code for amplitude spectra and it worked, bt it seems not to work for fft.This is my code:
freq=0:20;
nori2=zeros(size(filt_traces,1),size(filt_traces,2),size(filt_traces,3));
for j=1:52
for i=1:51
data1=squeeze(filt_traces(j,:,i));
dataf1=fft2(data1);
%half1=dataf1(1:5001);
nori2(j,:,i)=data1;
end
imagesc(statID,freq,log(squeeze(nori2(j,:,:))))
title('Amplitude Spectra');
xlabel('Receiver number');
ylabel('Frequency(Hz)');
colormap(jet);
colorbar
pause
clf
end
Thank you!
Lucia

Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by