Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clear all
- close all
- clc
- % SYMSE LAB3 Czarnecki(chyba)
- % zadania sa podawane na labce nie robilismy tego co w skrypcie napisane
- % odnosnie cwiczenia(znaczy nie dokladnie tak jak tam jest punkt po
- % punkcie)
- %-------------------------------------------------------------------------
- % Zad 1.
- % Mamy 2 fukcje np. h(n)=exp(-a*n), h(n)=exp(-a*n)*cos(w*n)
- % I mamy wyznaczyc trnasmitancjie( amplitudy i fazy)
- % Nie wiem czy to wszystko jest dobrze ale co do tego zadania to mowil ze
- % cos takiego powinno wyjsc
- % ------------------------------------------------------------------------
- a1=-1;%tutaj podajem wartosc parametru a
- b=[0 exp(a1)]; %macierz wsp. w licniku w transformacie Z( najlepiej wolfram)
- a=[-1 exp(a1)];%np. mamy h(n)=exp(-a*n)-->h(z)=(exp(a)*z)/(exp(a)-z)
- figure(1);
- zplane(b,a)% rysuje polozenie biegunu wzgledem kola jednostkowego
- % patrzymy jakie dla jakiego a polozenie x jest wewnatrz kola na
- % kole i poza kolem. Podpowiedz a=0(na kole) a=-1(poza kolem)
- % a=1(w kole)
- N=20;
- % filtr dolno przepustowy
- a1=1;
- omega1=1;
- omega2=10;
- for n=1:N
- h1(n)=exp(-a1*n);
- h2(n)=exp(-a1*n)*cos(omega1*n);
- h3(n)=exp(-a1*n)*cos(omega2*n);
- end
- figure(2);
- H1=fftshift(fft(h1));%liczymy widmo
- H2=fftshift(fft(h2));
- H3=fftshift(fft(h3));
- subplot(2,1,1);
- plot(-9:1:10,abs(H1))%na osi OX mamy wielkorotnosci omega0(dla pozostalych
- title('Amplituda: exp(-a*n), a=1'); %wykresow tak samo)
- subplot(2,1,2);
- plot(-9:1:10,angle(H1))
- title('Faza: exp(-a*n), a=1');
- figure(3);
- subplot(2,1,1);
- plot(-9:1:10,abs(H2))% wydaje mi sie ze gornoprzepustowy
- title('Amplituda: exp(-a*n)*cos(w*n), a=1, w=1');
- subplot(2,1,2);
- plot(-9:1:10,angle(H2))
- title('Faza: exp(-a*n), a=1, w=1');
- figure(4);
- subplot(2,1,1);
- plot(-9:1:10,abs(H3))
- title('Amplituda: exp(-a*n)*cos(w*n), a=1, w=10');
- subplot(2,1,2);
- plot(-9:1:10,angle(H3))
- title('Faza: exp(-a*n), a=1, w=10');
- figure(20);
- stem(h1);
- %filtr pasmowoprzepustowy
- a1=0;
- omega1=1;
- omega2=10;
- for n=1:N
- h1(n)=exp(-a1*n);
- h2(n)=exp(-a1*n)*cos(omega1*n);
- h3(n)=exp(-a1*n)*cos(omega2*n);
- end
- figure(5);
- H1=fftshift(fft(h1));%liczymy widmo
- H2=fftshift(fft(h2));
- H3=fftshift(fft(h3));
- subplot(2,1,1);
- plot(-9:1:10,abs(H1))%na osi OX mamy wielkorotnosci omega0(dla pozostalych
- title('Amplituda: exp(-a*n), a=0'); %wykresow tak samo)
- subplot(2,1,2);
- plot(-9:1:10,angle(H1))
- title('Faza: exp(-a*n), a=0');
- figure(6);
- subplot(2,1,1);
- plot(-9:1:10,abs(H2))% wydaje mi sie ze gornoprzepustowy
- title('Amplituda: exp(-a*n)*cos(w*n), a=0, w=1');
- subplot(2,1,2);
- plot(-9:1:10,angle(H2))
- title('Faza: exp(-a*n), a=0, w=1');
- figure(7);
- subplot(2,1,1);
- plot(-9:1:10,abs(H3))
- title('Amplituda: exp(-a*n)*cos(w*n), a=0, w=10');
- subplot(2,1,2);
- plot(-9:1:10,angle(H3))
- title('Faza: exp(-a*n), a=0, w=10');
- figure(21);
- stem(h1);
- %filtr gornoprzepustowy
- a1=-1;
- omega1=1;
- omega2=10;
- for n=1:N
- h1(n)=exp(-a1*n);
- h2(n)=exp(-a1*n)*cos(omega1*n);
- h3(n)=exp(-a1*n)*cos(omega2*n);
- end
- figure(8);
- H1=fftshift(fft(h1));%liczymy widmo
- H2=fftshift(fft(h2));
- H3=fftshift(fft(h3));
- subplot(2,1,1);
- plot(-9:1:10,abs(H1))%na osi OX mamy wielkorotnosci omega0(dla pozostalych
- title('Amplituda: exp(-a*n), a=-1'); %wykresow tak samo)
- subplot(2,1,2);
- plot(-9:1:10,angle(H1))
- title('Faza: exp(-a*n), a=-1');
- figure(9);
- subplot(2,1,1);
- plot(-9:1:10,abs(H2))% wydaje mi sie ze gornoprzepustowy
- title('Amplituda: exp(-a*n)*cos(w*n), a=-1, w=1');
- subplot(2,1,2);
- plot(-9:1:10,angle(H2))
- title('Faza: exp(-a*n), a=-1, w=1');
- figure(10);
- subplot(2,1,1);
- plot(-9:1:10,abs(H3))
- title('Amplituda: exp(-a*n)*cos(w*n), a=-1, w=10');
- subplot(2,1,2);
- plot(-9:1:10,angle(H3))
- title('Faza: exp(-a*n), a=-1, w=10');
- figure(22);
- stem(h1);
- %-------------------------------------------------------------------------
- % Zad 2.
- % Mamy sygnal x(0)=1, x(1)=1/2; czy jakis podobny
- % wyznaczmy cos sie dzieje jak sygnal przendzie przez uklad jesli bieguny
- % sa 1. w kole jed. 2. na kole jed. 3. poza kolem jed.
- % ------------------------------------------------------------------------
- N=20;
- %sygnal wejsciowy
- x = zeros(1,N);
- x(1,1) = 1;
- %q = zeros(1:N);
- %q(1,1) = 1/2;
- %q(1,2) = 1/2;
- %generacja wektorow systemu do dalszej obrobki
- ha = zeros(1,N);
- hd1 = zeros(1,N);
- hd2 = zeros(1,N);
- he1 = zeros(1,N);
- he2 = zeros(1,N);
- for n=1:N %obrobka wektorow systemu
- ha(1,n) = j^n; %kolo jedn
- hd1(1,n) = 5^n+(-0.5)^n;%poza kolem jedn, blizej srodka ukl wsp
- hd2(1,n) = 10^n+(-0.5)^n;%poza kolem jedn, dalej srodka ukl wsp
- he1(1,n) = 0.1^n+0.2^n;%w kole jedn, blizej sr
- he2(1,n) = 0.4^n+0.55^n;%w kole jedn, dalej sr
- he3(1,n)= j^(2*n-1);%sprzezone_
- end
- figure(11);
- subplot(2,1,1);
- stem(0:1:N-1, x(1,1:1:N), 'r*');
- title('nasz sygnal');
- subplot(2,1,2);
- ya = conv(ha, x);
- stem(0:1:N-1, ha(1,1:1:N),'r.');
- title('na kole jedn');%system dziala jak genetator
- figure(12);
- subplot(3,1,1);
- stem(0:1:N-1, x, 'b+');
- title('syg wejsciowy');
- subplot((3,1,2);
- yd1 = conv(hd1, x); %uklad niestabilny
- yd2 = conv(hd2, x);
- subplot(3,1,2);
- stem(0:1:N-1, yd1(1,1:1:N),'r.');
- title('poza kolem jedn, blizej srodka ukl wsp');
- subplot(3,1,3);
- stem(0:1:N-1, yd2(1,1:1:N),'b.');
- title('poza kolem jedn, dalej srodka ukl wsp');
- figure(13);
- subplot(3,1,1);
- stem(0:1:N-1, x, 'b+');
- title('syg wejsciowy');
- subplot(3,1,2);
- ye1 = conv(he1, x); %uklad stabilny
- ye2 = conv(he2, x);
- stem(0:1:N-1, ye1(1,1:1:N),'r.');
- title('w kole jedn, blizej sr');
- subplot(3,1,3);
- stem(0:1:N-1, ye2(1,1:1:N),'b.');
- title('w kole jedn, dalej sr ');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement