zad1.
N=100; % fp=1000; t=0:1/fp:(N-1)/fp; x=1.7*sin(2*pi*87*t+0.2); subplot(121); stem(t,x); xlabel('czas[s]'); ylabel('sinus');
Widmo
Nf=128; N21=N/2+1; v=fft(x,Nf); wx=abs(v); f=linspace(0,fp/2,N21); subplot(122); stem(f,wx(1:N21)); xlabel('czest[Hz]'); ylabel('modul widma');
Zad 1a.
N=128; fp=128; t=0:1/fp:(N-1)/fp; x=1.7*sin(2*pi*37*t+0.2); subplot(121); stem(t,x); xlabel('czas[s]'); ylabel('sinus');
Widmo
Nf=128; N21=N/2+1; v=fft(x,Nf); wx=abs(v); f=linspace(0,fp/2,N21); subplot(122); stem(f,wx(1:N21)); xlabel('czest[Hz]'); ylabel('modul widma');
Zad 2.
N=128; fp=128; t=0:1/fp:(N-1)/fp; x=1.7*sin(2*pi*37*t+0.2); subplot(221) plot(t,x); xlabel('czas[s]'); ylabel('sinus');
Widmo
Nf=128; N21=N/2+1; v=fft(x,Nf); wx=abs(v); f=linspace(0,fp/2,N21); subplot(222); plot(f,wx(1:N21)); xlabel('czest[Hz]'); ylabel('modul widma');
y=randn(1,N); subplot(223); plot(t,y); xlabel('czas[s]'); ylabel('szum');
Widmo
Nf=128; N21=N/2+1; v=fft(y,Nf); wx=abs(v); f=linspace(0,fp/2,Nf); subplot(224); plot(f,wx(1:Nf)); xlabel('czest[Hz]'); ylabel('modul widma'); return;
Zad.3 Widmo źle działa.
clear; [a,fa]=wavread('mbi02becz.wav'); Na=length(a) dr=4; N=floor(Na/dr); for i=1:N x(i)=a((i-1)*dr+1); end; fp=fa/dr; t=0:1/fp:(N-1)/fp; subplot(321); plot(t,x); xlabel('czas[s]'); ylabel('wav');
Widmo
Nf=2^16; N21=N/2+1; v=fft(x,Nf); wx=abs(v); fx=linspace(0,fp/2,N21); subplot(322); plot(fx,wx(1:N21)); xlabel('czest[Hz]'); ylabel('modul widma'); return
Co jest źle w tym widmie ?
Ostatnio edytowany przez ziemboy (2012-10-14 13:19:19)
Offline
Offline
W grupie B, wszystko działało
prog1.m
fp=1000; % częstotliwość próbkowania N=100; % ilość próbek t=0:1/fp:(N-1)/fp; % oś czasu x=1.2*sin(2*pi*87*t+0.3); % zmienna subplot(121); stem(t,x); % wykres xlabel('czas[s]'); % oznaczenie osi x ylabel('sinus'); % oznaczenie osi y Nf=128; % długość transformaty Fouriera (liczba próbek) N21=Nf/2+1; % zmienna pomocnicza v=fft(x,Nf); % wx=abs(v); % f=linspace(0,fp/2,N21); % rysowanie funkcji liniowo rozłożonych punktów subplot(122); stem(f,wx(1:N21)); xlabel('czestotliwosc[Hz]'); ylabel('modul widma');
prog1a.m
fp=128; % częstotliwość próbkowania N=128; % ilość próbek t=0:1/fp:(N-1)/fp; % oś czasu x=1.2*sin(2*pi*37*t+0.3); % zmienna subplot(121); stem(t,x); % wykres xlabel('czas[s]'); % oznaczenie osi x ylabel('sinus'); % oznaczenie osi y Nf=128; % długość transformaty Fouriera (liczba próbek) N21=Nf/2+1; % zmienna pomocnicza v=fft(x,Nf); % wx=abs(v); % f=linspace(0,fp/2,N21); % rysowanie funkcji liniowo rozłożonych punktów subplot(122); stem(f,wx(1:N21)); xlabel('czestotliwosc[Hz]'); ylabel('modul widma');
prog2.m
fp=128; % częstotliwość próbkowania N=128; % ilość próbek t=0:1/fp:(N-1)/fp; % oś czasu x=1.2*sin(2*pi*37*t+0.3); % zmienna subplot(121); stem(t,x); % wykres xlabel('czas[s]'); % oznaczenie osi x ylabel('sinus'); % oznaczenie osi y Nf=128; % długość transformaty Fouriera (liczba próbek) N21=Nf/2+1; % zmienna pomocnicza v=fft(x,Nf); % wx=abs(v); % f=linspace(0,fp/2,N21); % rysowanie funkcji liniowo rozłożonych punktów subplot(122); stem(f,wx(1:N21)); xlabel('czestotliwosc[Hz]'); ylabel('modul widma');
prog3.m
clear; [a,fa]=wavread('mbi02becz.wav'); Na=length(a); dr=4; N=floor(Na/dr); for i=1:N x(i)=a((i-1)*dr+1); end; fp=fa/dr; t=0:1/fp:(N-1)/fp; subplot(321); plot(t,x); xlabel('czas[s]'); ylabel('wav'); Nf=2^15; % długość transformaty Fouriera (liczba próbek) N21=Nf/2+1; % zmienna pomocnicza v=fft(x,Nf); % wx=abs(v); % f=linspace(0,fp/2,N21); % rysowanie funkcji liniowo rozłożonych punktów subplot(322); plot(f,wx(1:N21)); xlabel('czestotliwosc[Hz]'); ylabel('modul widma'); return;
fp=128; % częstotliwość próbkowania N=128; % ilość próbek t=0:1/fp:(N-1)/fp; % oś czasu x=1.2*sin(2*pi*37*t+0.3); % zmienna subplot(221); % liczba wierszy, kolumn, odwołanie do pola stem(t,x); % wykres xlabel('czas[s]'); % oznaczenie osi x ylabel('sinus'); % oznaczenie osi y Nf=128; % długość transformaty Fouriera (liczba próbek) N21=Nf/2+1; % zmienna pomocnicza v=fft(x,Nf); % wx=abs(v); % f=linspace(0,fp/2,N21); % rysowanie funkcji liniowo rozłożonych punktów subplot(222); stem(f,wx(1:N21)); xlabel('czestotliwosc[Hz]'); ylabel('modul widma'); y=randn(1,N); subplot(223); plot(t,y); xlabel('czas[s]'); ylabel('szum'); Nf=128; % długość transformaty Fouriera (liczba próbek) N21=Nf/2+1; % zmienna pomocnicza v=fft(y,Nf); % wx=abs(v); % f=linspace(0,fp/2,N21); % rysowanie funkcji liniowo rozłożonych punktów subplot(224); plot(f,wx(1:N21)); xlabel('czestotliwosc[Hz]'); ylabel('modul widma');
Offline