domingo, 4 de maio de 2014

Lab - Sinais e Sistemas Discretos






Processamento Digital de sinais

Prof. Débora Meyhofer Ferreira 



Sinais e Sistemas Discretos

MatLab




Laboratório

          
            1- Execute, analise e complete os espaços para comentários no exemplo abaixo de um programa no MatLab que visualiza a seguinte seqüência :

x(n) = {-2,-3,-1,1,4,2,3,4}

Resultado no MatLab:
  
n=(-3:4)
x=[-2 -3 -1 1 4 2 3 4]
stem(n,x)   



              2- Idem 1, porém usar um arquivo .m no MatLab para visualizar as seqüências x(n) e y(n)=x(n-2).Utilizar o comando subplot para visualizar ao mesmo tempo.

Resultado no MatLab:
n=(-3:4)
x=[-2 -3 -1 1 4 2 3 4]
m=n-2
subplot(2,1,1);
stem(n,x);
subplot(2,1,2);
stem(m,x);
 

3- a) Escreva abaixo um programa no MatLab que visualize a seqüência y(n)=x(n+2).

Resultado no MatLab:

n=(-3:4)
x=[-2 -3 -1 1 4 2 3 4]
m=n+2
subplot(2,1,1);
stem(n,x);
subplot(2,1,2);
stem(m,x);
 

b) Execute o programa do item a), analise o resultado em relação à 2, e compare o deslocamento do sinal.

Resultado no MatLab:

n=(-3:4)
x=[-2  -3  -1  1  4  2  3  4]
m=n+2
m1=n-2
subplot(3,1,1);
stem(n,x);
subplot(3,1,2);
stem(m,x);
subplot(3,1,3);
stem(m1,x);


 FUNÇÃO IMPULSO

Geração matemática de uma seqüência de amostragem unitária,


4- Analise o programa MatLab que visualiza a seqüência amostra unitária  d(n) e d(n-no) para  n1£ n £n2.
Para isso terá que ser criado a função impseq em um arquivo do Matlab chamado também impseq.m

Resultado no MatLab:

function [x,n]=impseq(n0,n1,n2)
n1=[-2 -1];
n2=[1 2];
n0=[0]
%---------------------------------------
% Gera x(n) = delta(n); n1<= n <= n2
% Gera y(n)=x(n-n0)=delta(n-n0); n1<=n<=n2
%---------------------------------------
n=[n1:n2]; x=[n==0];             % x(n)=1 somente para n=0
m=[n1:n2]; y=[(m-n0)==0];        % y(n)=1 somente para n=n0
subplot(2,1,1); stem(n,x);
title('Sequencia unitária Delta(n)'); xlabel('amostra [n]');ylabel('amplitude [x]');
subplot(2,1,2); stem(m,y);
title('Sequencia unitária Delta(n-no)'); xlabel('amostra [n]');ylabel('amplitude [y]');


5- a) Execute o programa tal que esboce o impulso unitário d(n) e d(n-4).

Resultado no MatLab:

function [x,n]=impseq(n0,n1,n2)
n1=[-5 -4 -3 -2 -1];
n2=[5];
n0=[4];
%---------------------------------------
% Gera x(n) = delta(n); n1<= n <= n2
% Gera y(n) = x(n-4)=delta(n-4);
%---------------------------------------
n=[n1:n2]; x=[n==0];              % x(n)=1 somente para n=0
m=[n1:n2]; y=[(m-n0)==0];         % y(n)=1 somente para n=n0
subplot(2,1,1); stem(n,x);
title('Sequencia unitária Delta(n)'); xlabel('amostra [n]');ylabel('amplitude [x]');
subplot(2,1,2); stem(m,y);
title('Sequencia unitária Delta(n-n0)'); xlabel('amostra [n]');ylabel('amplitude [y]');


            b) Execute o programa tal que esboce o impulso unitário d(n) e d(n+4).

Resultado no MatLab:

function [x,n]=impseq(n0,n1,n2)
n1=[-5 -4 -3 -2 -1];
n2=[5];
n0=[4];
%---------------------------------------
% Gera x(n) = delta(n); n1<= n <= n2
% Gera y(n) = x(n-4)=delta(n-4);
%---------------------------------------
n=[n1:n2]; x=[n==0];              % x(n)=1 somente para n=0
m=[n1:n2]; y=[(m+n0)==0];         % y(n)=1 somente para n=n0
subplot(2,1,1); stem(n,x);
title('Sequencia unitária Delta(n)'); xlabel('amostra [n]');ylabel('amplitude [x]');
subplot(2,1,2); stem(m,y);
title('Sequencia unitária Delta(n+n0)'); xlabel('amostra [n]');ylabel('amplitude [y]');

 

 

FUNÇÃO DEGRAU


Representação da seqüência degrau unitário,




e está relacionada a amostra unitária por



6- Analise o programa MatLab a seguir, criado para permitir a visualização da seqüência degrau unitária  u(n) e u(n-no) para  n1£ n £n2.

Resultado no MatLab:
function [x,n]=stepseq(n0,n1,n2)
n1=[-4 -3 -2 -1];
n2=[5];
n0=[0];
%---------------------------------------
% Gera x(n) = u(n); n1<= n <= n2
% Gera y(n)=x(n-n0)=u(n-n0); n1<=n<=n2
%---------------------------------------
n=[n1:n2]; x=[n>=0];            % x(n)=1 somente para n>=0
m=[n1:n2]; y=[(m-n0)>=0];        % y(n)=1 somente pata n>=n0
subplot(2,1,1); stem(n,x);
title('Sequencia degrau unitario u(n)'); xlabel('amostra [n]'); ylabel('amplitude [x]');
subplot(2,1,2); stem(m,y);
title('Sequencia degrau unitario u(n-no)'); xlabel('amostra [n]'); ylabel('amplitude [y]');


7- a) Execute o programa tal que esboce a sequencia degrau unitário u(n) e d(n-4).

Resultado no MatLab:
function [x,n]=stepseq(n0,n1,n2)
n1=[-4 -3 -2 -1];
n2=[6];
n0=[4];
%---------------------------------------
% Gera x(n) = u(n); n1<= n <= n2
% Gera y(n)=x(n-n0)=u(n-n0); n1<=n<=n2
%---------------------------------------
n=[n1:n2]; x=[n>=0];            % x(n)=1 somente para n>=0
m=[n1:n2]; y=[(m-n0)>=0];        % y(n)=1 somente pata n>=n0
subplot(2,1,1); stem(n,x);
title('Sequencia degrau unitario u(n)'); xlabel('amostra [n]'); ylabel('amplitude [x]');
subplot(2,1,2); stem(m,y);
title('Sequencia degrau unitario u(n-no)'); xlabel('amostra [n]'); ylabel('amplitude [y]');




            b) Execute o programa tal que esboce a sequencia degrau unitário u(n) e d(n+4).

Resultado no MatLab:
function [x,n]=stepseq(n0,n1,n2)
n1=[-6 -5 -4 -3 -2 -1];
n2=[6];
n0=[4];
%---------------------------------------
% Gera x(n) = u(n); n1<= n <= n2
% Gera y(n)=x(n-n0)=u(n-n0); n1<=n<=n2
%---------------------------------------
n=[n1:n2]; x=[n>=0];            % x(n)=1 somente para n>=0
m=[n1:n2]; y=[(m+n0)>=0];        % y(n)=1 somente pata n>=n0
subplot(2,1,1); stem(n,x);
title('Sequencia degrau unitario u(n)'); xlabel('amostra [n]'); ylabel('amplitude [x]');
subplot(2,1,2); stem(m,y);
title('Sequencia degrau unitario u(n+no)'); xlabel('amostra [n]'); ylabel('amplitude [y]');


Nenhum comentário:

Postar um comentário