whats this line do?

1 Ansicht (letzte 30 Tage)
itsik
itsik am 26 Mai 2011
y=[zeros(10,20000),x,zeros(10,20000)];
y2=abs(fftshift(fft(real(y(2,:)))))/length(y);
thanks!!!

Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 26 Mai 2011
  • It defines y as x padded with 20000 columns on both sides
  • It takes the DFT of the real part of the second row of y, shifts it to 0 takes the absolute value and divides by the length of the row.

Weitere Antworten (1)

itsik
itsik am 26 Mai 2011
ok so what this is do? where is the fft take a place? lets say x=[10 X 1000]
y=[zeros(10,20000),x,zeros(10,20000)];
y2=abs(fftshift(fft(real(y(2,:)))))/length(y);
y3=abs(fftshift(fft(real(y(3,:)))))/length(y);
y4=abs(fftshift(fft(real(y(4,:)))))/length(y);
i just cant understand that line : y=[zeros(10,20000),x,zeros(10,20000)];
thanks!
  1 Kommentar
Sean de Wolski
Sean de Wolski am 26 Mai 2011
It zero pads x with 10x20000 zeros on each side (columnwise)
try it on a small scale
x = magic(3);
y = [zeros(3,10),x,zeros(3,5)]

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by