#1 2012-10-14 13:18:26

ziemboy

Użytkownik

Zarejestrowany: 2012-03-06
Posty: 65
Punktów :   

Zadania z labki 1

zad1.

Kod:

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

Kod:

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.

Kod:

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

Kod:

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.

Kod:

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

Kod:

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');

Kod:

y=randn(1,N);
subplot(223);
plot(t,y);
xlabel('czas[s]');
ylabel('szum');

Widmo

Kod:

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.

Kod:

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

Kod:

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

 

#2 2012-10-14 13:50:36

kemot

Użytkownik

Zarejestrowany: 2010-11-03
Posty: 94
Punktów :   

Re: Zadania z labki 1

Kto ma dzialajacy kod z komentarzem?

Offline

 

#3 2012-10-18 21:40:33

fenix21

Użytkownik

Zarejestrowany: 2011-01-28
Posty: 12
Punktów :   

Re: Zadania z labki 1

Offline

 

#4 2012-10-18 22:23:38

emes

Użytkownik

Zarejestrowany: 2010-10-31
Posty: 58
Punktów :   

Re: Zadania z labki 1

W grupie B, wszystko działało

prog1.m

Kod:

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

Kod:

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

Kod:

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

Kod:

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;

Kod:

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

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
https://www.tourderybnik.pl/ amonzi.pl