Está en la página 1de 4

PUNTO ADICIONAL 1 PARCIAL DE SEÑALES Y SISTEMAS.

Gabriel Felipe Aranguren Díaz – 201610055

1. Desarrollar un código en MATLAB que haga la convolución de cualquier señal.

Solución:

% Codigo que calcula la convolucion de 2 funciones.


% Gabriel Felipe Aranguren Díaz 20161005055
x=input('Ingrese la primera función: ')
h=input('Ingrese la segunda función: ')
a=length(x);
b=length(h);
X=[x,zeros(1,b)];
H=[h,zeros(1,a)];
for i=1:b+a-1
Y(i)=0;
for j=1:a
if(i-j+1>0)
Y(i)=Y(i)+X(j)*H(i-j+1);
else
end
end
end
Y
plot(Y)

 x=input('Ingrese la primera función: ')


h=input('Ingrese la segunda función: ')

Primero generamos las entradas para que la persona pueda digitar las señales.

 a=length(x);
 b=length(h);

Hacemos unos vectores de igual tamaño en los que la función está definida.

 X=[x,zeros(1,b)];
 H=[h,zeros(1,a)];

Los llenamos de ceros para que puedan ser llenados por los valores de la función.
 Y(i)=0;
 for j=1:a
 if(i-j+1>0)
 Y(i)=Y(i)+X(j)*H(i-j+1);

En esta parte del código, debido a que todas las señales de entrada son discretas,
(aunque sean continuas, hay que ponerles limites en los que están definidas y
aumentos la estamos discretizando); podemos usar la sumatoria de convolución
para señales discretas.

Donde j es nuestra variable de sumatoria, el if nos suma i + j donde este definida la


función y en Y(i) hacemos la parte interna de la convolución.

Resultados en MATLAB:

Usando:
 x=cos(0:0.1:1)
 y=sin(0:0.1:1)

Obtenemos:
Y por grafica de la convolución obtenemos:
Cuando usamos las mismas entradas con en comando conv obtenemos:

Y por grafica de la convolución obtenemos:

Conclusiones:

 Podemos afirmar que el código es fiable y se ajusta totalmente con los resultados usando
el comando de MATLAB para generar las convoluciones.

También podría gustarte