Matlab fórum
Fourierova trans. matlab - Verzia pre tlač

+- Matlab fórum (http://matlab.sk)
+-- Fórum: Matlab.sk (/forumdisplay.php?fid=1)
+--- Fórum: Otázky a návrhy / Questions and suggestions (/forumdisplay.php?fid=3)
+--- Téma: Fourierova trans. matlab (/showthread.php?tid=137)



Fourierova trans. matlab - zdenoky - 01-30-2018 18:53

Dobrý den, není mi trohu jasné, jak použít správně fft. Mám data jako vektory x,y v časové závislosti a chci to transformovat do frekvenční. Postupuji špatně, protože mi to nevychází. Děkuji za radu.
Zdeny


RE: Fourierova trans. matlab - Eduard - 01-31-2018 08:01

Zdravim,
nejak takto? Je tam iba jednoduchy nezasumeny signal. Drzim palce


clc;clear all;
x=0:0.01:4;
dx=mean(diff(x));
y=sin(2*pi*x*7)+sin(2*pi*x*12);
f=fftshift(fft(y));
nn=length(x);
dw=1/dx/nn;
w=dw*(-floor(nn/2):1:floor(nn/2));
plot(w,abs(f))
xlabel('w')
figure(2)
plot(w(floor(nn/2):end),abs(f(floor(nn/2):end)))
xlabel('w')


RE: Fourierova trans. matlab - zdenoky - 01-31-2018 13:43

Děkuji, ale takhle to nemuže fungovat, mám svoje data v excelu, ty vložím do matlabu a chci se podívat jak jsou na tom frekvenčně


RE: Fourierova trans. matlab - zdenoky - 01-31-2018 16:29

Mám data x,y kde na x je čas a já chci frekvenční spektrum, mockrát děkuji.


RE: Fourierova trans. matlab - Eduard - 01-31-2018 20:44

Ak je problem v nacitani z excelu(v prilohe je riesenie). Staci doplni na zaciatok riadky
clc;clear all;
d=xlsread('data.xlsx');
x=d(:,1);
y=d(:,2);

Samozrejme x musia by ekvidistancne vzdialene...


RE: Fourierova trans. matlab - zdenoky - 01-31-2018 21:12

Mockrát děkuju, funguje to přesně i na moje data.