Baixe o app para aproveitar ainda mais
Prévia do material em texto
Atividade Prática Sinais e sistemas Nome: Lucas Botelho Ferreira RU: 2866930 ATIVIDADE 1: Operações Basicas Criar a função impulso unitário. Criar a função degrau unitário. Gerar um vetor 𝑛 de -20 até 20 com intervalo de 1. • 𝑎 = 𝑅𝑈1 • 𝑏 = 𝑅𝑈2 • 𝑐 = 𝑅𝑈3/10, se 𝑅𝑈3 = 0 adotar 𝑐 = 0,3 • 𝑑 = 𝑅𝑈4/10, se 𝑅𝑈4 = 0 adotar 𝑑 = 0,4 • 𝑒 = número 𝑒, sintaxe no Scinotes %e • 𝑚 = 𝑅𝑈5, se 𝑅𝑈5 = 0 adotar 𝑚 = 5 • 𝑓 = 𝑅𝑈6, se 𝑅𝑈6 = 0 adotar 𝑓 = 6 • 𝜋 = número 𝜋, sintaxe no Scinotes %pi • 𝑔 = 𝑅𝑈7, se 𝑅𝑈7 = 0 adotar 𝑔 = 7 Gerar as seguintes funções (para 𝑦[𝑛] manter os números do RU): 𝑥[𝑛] = 𝑡𝑔 (𝑎𝑛 + 𝑐 ∗ 𝜋) ∗ 𝑒 3 −𝑑𝑛 -b ≤ n ≤ 𝑓 𝑦[𝑛] = [(−𝑅𝑈1) 𝑅𝑈4 𝑅𝑈3 𝑅𝑈7 𝑅𝑈5 (−𝑅𝑈6) ] 𝑧[𝑛] = 0,7 𝑛(𝑥[−𝑛 − 𝑅𝑈3]) + 0,3𝑛(𝑢[𝑛 + 𝑓] − 𝑢[𝑛 − 𝑔]) RU1 RU2 RU3 RU4 RU5 RU6 RU7 2 8 6 6 9 3 0 𝑋[𝑁] = 𝑇𝐺 (2 ∗ 𝑛 + 0.6 ∗ 𝜋) ∗ 𝑒 3 −0.6∗𝑛 -8 ≤ n ≤ 3 𝑦[𝑛] = [(−2) 6 6 0 9 (−3) ] 𝑧[𝑛] = 7𝑛 (𝑥[−𝑛 − 6]) + 0,3𝑛(𝑢[𝑛 + 3] − 𝑢[𝑛 − 7]) //x[n] u1=degrau(n-b)-degrau(n+f) x=tan(a*n+(c*r/3).*e^(-d*n)).*u1 //y[n] y=-RU1*impulso(n+2)+RU4*impulso(n+1)+RU3*impulso(n)+RU7*impulso(n-1)+RU5*impulso(n-2)-RU6*impulso(n-3) //z[n] u2=degrau(n+f)-degrau(n-g) x1=cshift(y,[0,RU3]); for i=-20:1:20 z(i+21)= x1 (-i+21) + 0.7^i*(x1(-i+21)+0.3)*u2(i+21) end Sinais e Sistemas Prof. Eng. Viviana R. Zurro MSc. Calcular: 𝑜[𝑛] = 𝑥[𝑛] + 𝑦[𝑛]. 𝑧[𝑛] 𝑝[𝑛] = 𝑥[𝑛] − 𝑦[𝑛] − 𝑧[𝑛] 𝑞[𝑛] = 𝑥[𝑛]. (𝑦[𝑛] + 𝑧[𝑛]) o=x+y.*z'//o[n] p=x-y-z'//p[n] q=x.*(y+z')//q[n] Plotar todos os gráficos (𝑥[𝑛], 𝑦[𝑛], 𝑧[𝑛]. 𝑜[𝑛], 𝑝[𝑛] e 𝑞[𝑛]) como sinal discreto na mesma figura usando o comando subplot. Colocar os nomes nos eixos e o título de cada figura como no exemplo a seguir. Será tirada nota se a imagem não cumprir com o solicitado. Usar o comando plot2d3 para melhor visualização. //plotagem dos gráficos subplot(321) plot2d3(n,x,style=2) // x[n], essa função style define a cor da linha f.children.children(1).children.thickness=2; //controla a espessura da linha title('x[n]') xlabel('n') ylabel('amplitude') subplot(322) plot2d3(n,y,style=2)//y[n] f.children.children(2).children.thickness=2;//controla a espessura da linha title('y[n]') xlabel('n') ylabel('amplitude') subplot(323)//z[n] plot2d3(n,z,style=3) f.children.children(3).children.thickness=2;//controla a espessura da linha title('z[n]')//sinal de saída xlabel('n') ylabel('amplitude') subplot(324)//a[n] plot2d3(n,o,style=4) f.children.children(4).children.thickness=2;//controla a espessura da linha title('o[n]')//sinal de saída xlabel('n') ylabel('amplitude') subplot(325) plot2d3(n,p,style=5)//a[n] f.children.children(5).children.thickness=2;//controla a espessura da linha title('p[n]')//sinal de saída xlabel('n') ylabel('amplitude') subplot(326) plot2d3(n,q,style=6)//a[n] f.children.children(6).children.thickness=2;//controla a espessura da linha title('q[n]') xlabel('n') ylabel('amplitude') Figura 1Plotagem dos graficos atividade 1 Código //x[n] function [y]=degrau(x) y = zeros(1, length(x)); y(find(x>=0)) = 1; endfunction //função impulso unitário function [y]=impulso(x) y = zeros(1, length(x)); y(find(x==0)) = 1; endfunction //comandos clc//limpa console clf//limpa janela gráfica f=gcf() //manipulador de gráficos n=-20:1:20//geração do vetor n //RU 2866930, g fica com valor=7 a=2 b=8 c=0.6 d=0.6 e=%e m=9 f=3 r=%pi g=7 //número do RU RU1=2 RU2=8 RU3=6 RU4=6 RU5=9 RU6=3 RU7=0 //x[n] u1=degrau(n-b)-degrau(n+f) x=tan(a*n+(c*r/3).*e^(-d*n)).*u1 //y[n] y=-RU1*impulso(n+2)+RU4*impulso(n+1)+RU3*impulso(n)+RU7*impulso(n-1)+RU5*impulso(n-2)-RU6*impulso(n-3) //z[n] u2=degrau(n+f)-degrau(n-g) x1=cshift(y,[0,RU3]); for i=-20:1:20 z(i+21)= x1 (-i+21) + 0.7^i*(x1(-i+21)+0.3)*u2(i+21) end //cálculos a serem realizados o=x+y.*z'//o[n] p=x-y-z'//p[n] q=x.*(y+z')//q[n] //plotagem dos gráficos subplot(321) plot2d3(n,x,style=2) // x[n], essa função style define a cor da linha f.children.children(1).children.thickness=2; //controla a espessura da linha title('x[n]') xlabel('n') ylabel('amplitude') subplot(322) plot2d3(n,y,style=2)//y[n] f.children.children(2).children.thickness=2;//controla a espessura da linha title('y[n]') xlabel('n') ylabel('amplitude') subplot(323)//z[n] plot2d3(n,z,style=3) f.children.children(3).children.thickness=2;//controla a espessura da linha title('z[n]')//sinal de saída xlabel('n') ylabel('amplitude') subplot(324)//a[n] plot2d3(n,o,style=4) f.children.children(4).children.thickness=2;//controla a espessura da linha title('o[n]')//sinal de saída xlabel('n') ylabel('amplitude') subplot(325) plot2d3(n,p,style=5)//a[n] f.children.children(5).children.thickness=2;//controla a espessura da linha title('p[n]')//sinal de saída xlabel('n') ylabel('amplitude') subplot(326) plot2d3(n,q,style=6)//a[n] f.children.children(6).children.thickness=2;//controla a espessura da linha title('q[n]') xlabel('n') ylabel('amplitude') ATIVIDADE 2: Sistemas Lineares - Convolução Para 𝑥[𝑛], ℎ1[𝑛] e ℎ2[𝑛] gere um vetor 𝑛 de -5 até 5 com intervalo de 1 Para 𝑦[𝑛] gere um vetor 𝑛1 de -10 até 10 com intervalo de 1 Sendo as funções: X[n] = 𝑒−𝑑𝑛 𝑐𝑜𝑠 (𝑚. 𝑛 + 𝜋 ) 3 −4 ≤ 𝑛 < 𝑅𝑈1 ℎ1 [𝑛] = [𝑅𝑈1 𝑅𝑈2 𝑅𝑈3 ] ℎ2 [𝑛] = 𝑠𝑒𝑛(𝑐𝜋𝑛) −2 ≤ 𝑛 < 𝑅𝑈1 Calcule 𝑦[𝑛] como indicado na equação a seguir. 𝑦[𝑛] = 𝑥[𝑛] ∗ (ℎ1 [𝑛] − ℎ2[𝑛]) Calcule 𝑦[𝑛] como indicado na equação a seguir. 𝑦[𝑛] = 𝑥[𝑛] ∗ ℎ1 [𝑛] − 𝑥[𝑛] ∗ ℎ2[𝑛] Algoritmo para 𝑦[𝑛] = 𝑥[𝑛] ∗ (ℎ1 [𝑛] − ℎ2[𝑛]) e 𝑦[𝑛] = 𝑥[𝑛] ∗ ℎ1 [𝑛] − 𝑥[𝑛] ∗ ℎ2[𝑛] //ATIVIDADE 2: Sistemas lineares – Convolução function [y]=degrau(x) y = zeros(1, length(x)); y(find(x>=0)) = 1; endfunction function [y]=impulso(x) y = zeros(1, length(x)); y(find(x==0)) = 1; endfunction RU1=2;RU2=8;RU3=6;RU4=6;RU5=9;RU6=3;RU7=0; clc//limpa console clf// limpa janela grafica f=gcf()// manipulador de grafico n=-5:1:5 n1= -10:1:10 //x[n] u1=degrau (n+4)- degrau (n-RU1) x=%e^0.2.*n.*cos(RU5*n+%pi/3).*u1; //h1[n] h1=-RU1*impulso(n)+RU2*impulso(n-1)+RU3*impulso(n-2) //h2[n] u2=degrau(n+2)-degrau(n-RU1) h2= sin(0.8*%pi.*n).*u2 y=conv(x,(h1-h2)) y2= conv (x,(x.*h1)-(x.*h2)) subplot(321) plot2d3(n,x,style=2)//x[n], a função style define a cor da linha f.children.children(1).children.thickness=2;//controla a espessura da linha title('y[n]') xlabel('n') ylabel('amplitude') subplot(322) plot2d3(n,h1,style=2)//h1[n], a função style define a cor da linha f.children.children(1).children.thickness=2;//controla a grossura da linha title('h1[n]') xlabel('n') ylabel('amplitude') subplot(323) plot2d3(n,h2,style=2)//h2[n], a função style define a cor da linha f.children.children(1).children.thickness=2;//controla a espessura da linha title('h2[n]') xlabel('n') ylabel('amplitude') subplot(324) plot2d3(n1,y,style=3)//y[n], a função style define a cor da linha f.children.children(1).children.thickness=2;//controla a espessura da linha title('y[n]') xlabel('n') ylabel('amplitude') subplot(325) plot2d3(n1,y2,style=3)//y[n], a função style define a cor da linha f.children.children(1).children.thickness=2;//controla a espessura da linha title('y2[n]') xlabel('n') ylabel('amplitude') Figura 2 Plotagem graficos Atividade 2
Compartilhar