Está en la página 1de 8

Procesamiento de Señales

Sebastián Kelly Cisneros


Tarea 03
Ejercicio 1

En este inciso se insertaron las siguientes funciones en MatLab:

a) 𝑢1(𝑛) = {𝟎, 0,1,1,1,1}, ℎ1(𝑛) = {1, −2, 𝟑}


b) 𝑢2(𝑛) = {𝟎, 1,4, −3}, ℎ2(𝑛) = {𝟏, 0, −1, −1}
c) 𝑢3(𝑛) = {1,1,2}, ℎ3(𝑛) = 𝜇(𝑛)
d) 𝑢4(𝑛) = {1,1, 𝟎, 1,1}, ℎ4(𝑛) = {1, −2, −3, 𝟒}
e) 𝑢5(𝑛) = {1,2, 𝟎, 2,1}, ℎ5(𝑛) = 𝑢5(𝑛)

NOTA: Los números en negrita representa el valor cuando n=0.

Estos incisos fueron insertados mediante el código encontrado en el Apéndice A.

Ejercicio 2

En este ejercicio se comparó la función “cnv(x,h)”, encontrada en el Apéndice 1 del documento


proporcionado en clase, con la función “conv(u,h)” definida en MatLab. Definidas la convolución
de cada inciso del ejercicio anterior con cada comando, se usó la función “tic toc” para conocer el
tiempo que el programa tarda en hacer cada operación. Este procedimiento de medición se realizó
cinco veces a fin de encontrar una tendencia en los tiempos; los resultados se muestran en la
Tabla 1.

Tiempo de función Tiempo de función


“cnv()” (s) “conv()” (s)
Toma 1 0.024873 0.011603
Toma 2 0.014862 0.009936
Toma 3 0.021476 0.013870
Toma 4 0.010042 0.005683
Toma 5 0.007568 0.005635
Tabla 1: Valores del tiempo medidos para el cálculo de convoluciones con la función cnv() proporcionada en clase y
“conv()”, la cual está predefinida en MatLab.

El código con el cual se hicieron estas mediciones se encuentra en el Apéndice 1.

Ejercicio 3

Este ejercicio fue hecho a mano en hojas blancas, este trabajo escaneado se encuentra a
continuación:
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03

Ejercicio 4

En este ejercicio se determinó la respuesta al impuso

1 𝑛
ℎ(𝑛) = ( ) 𝜇(𝑛)
2
con las siguientes señales de entrada:
1, 0 ≤ 𝑛 < 10
a) 𝑢1(𝑛) = {
0, 𝑜𝑡𝑟𝑜 𝑐𝑎𝑠𝑜
b) 𝑢2(𝑛) = 𝜇(−𝑛)
El resultado fue graficado para cada caso, y se muestra a continuación.

Inciso a)

La gráfica del impulso ℎ(𝑛) con la señal de entrada 𝑢1(𝑛) se muestra en la Figura 1, mientras que
el resultado de la respuesta del sistema se muestra graficado en la Figura 2.
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03

Figura 1: Gráfica de las funciones h(n) y u1(n) en el mismo espacio.

Figura 2: Gráfica de la respuesta del sistema de las funciones h(n) y u1(n). En la gráfica, y1(n) es la convolución para este
sistema.

Inciso b)
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03
La gráfica del impulso ℎ(𝑛) con la señal de entrada 𝑢2(𝑛) se muestra en la Figura 3, mientras que
el resultado de la respuesta del sistema se muestra graficado en la Figura 4.9

Figura 3: Gráfica de las funciones h(n) y u2(n) en el mismo espacio.

Figura 4: Gráfica de la respuesta del sistema de las funciones h(n) y u2(n). En la gráfica, y2(n) es la convolución para este
sistema.

Los códigos mediante los cuales se realizaron ambos incisos de este ejercicio vienen escritos en el
Apéndice B.
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03
Apéndices
• Apéndice A

%% Código de ejercicio 1
% Para definir las funciones se alinearon cada una para que inicien en el
% mismo valor de "n", es decir, se rellenó de ceros para que empezaran en
% el mismo momento.
clear all

u1 = [0 0 0 0 1 1 1 1];
h1 = [1 -2 3];

u2 = [0 1 4 -3];
h2 = [1 0 -1 -1];

u3 = [1 1 2];
for n = 1:3
h3 = mu(n);
end

u4 = [0 1 1 0 1 1];
h4 = [1 -2 -3 4];

u5 = [1 2 0 2 1];
h5 = u5;

%% Código de ejercicio 2
% el subíndice 'a' de cada valor de y, corresponde a la convolución
definida
% con el código dado, el subíndice 'b' indica la convolución con la
función
% definida en MatLab.

tic
y1a = cnv(u1,h1);
y2a = cnv(u2,h2);
y3a = cnv(u3,h3);
y4a = cnv(u4,h4);
y5a = cnv(u5,h5);
toc

tic
y1b = conv(u1,h1);
y2b = conv(u2,h2);
y3b = conv(u3,h3);
y4b = conv(u4,h4);
y5b = conv(u5,h5);
toc
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03
• Apéndice B
%% Código de ejercicio 4
clear all

%definición de funciones

for n = 0:15
N(n+1)=n;
if n == 0
h(n+1) = 0;
u1(n+1) = 1;
u2(n+1) = 0;
else
h(n+1) = (1/2)^n *mu(n);
if n >= 1 && n < 10
u1(n+1) = 1;
else
u1(n+1) = 0;
end
u2(n+1) = mu(n);
end
end

%cálculo de convoluciones

y1 = cnv(u1,h);
y2 = cnv(u2,h);
M = 0:1:(length(y1)-1);

%creación de gráficas

figure(1)
hold on
grid on
axis([-inf inf -0.5 1.5])
plot(N,h,'r')
plot(N,u1,'b')
legend('función h(n)','función u1(n)')
xlabel('valores de n')
ylabel('valor de función')
hold off
figure(2)
plot(M,y1,'k')
xlabel('valores de n')
ylabel('valor de y1(n)')
axis([-inf inf -0.5 0.75])
grid on

figure(3)
hold on
grid on
axis([-inf inf -1.5 1.5])
plot(N,h,'r')
plot(N,u2,'b')
legend('función h(n)','función u2(n)')
xlabel('valores de n')
ylabel('valor de función')
Procesamiento de Señales
Sebastián Kelly Cisneros
Tarea 03
hold off
figure(4)
plot(M,y2,'k')
xlabel('valores de n')
ylabel('valor de y2(n)')
axis([-inf inf -1 1])
grid on

También podría gustarte