10/7/22, 15:23 conv - Jupyter Notebook
In [1]: '''
CONVOLUCION DE DOS SEÑALES DISCRETAS O ARREGLOS
Convolución de X(n)=[-7,-5,3,1] con Y(m)=[5,2,1,-2] , definidas en n=(0,3) y m=(0,3)
'''
#librerias con las que vamos a trabajar
import numpy as np
import [Link] as plt
%matplotlib inline
#definimos X como respuesta a nuestra señal de entrada, Y señal de entrada
X = [Link]([-7,-5,3,1])
Y = [Link]([5,2,1,-2])
#longitud de los arreglos o señales
print([Link], [Link])
(4,) (4,)
localhost:8888/notebooks/Downloads/[Link] 1/4
10/7/22, 15:23 conv - Jupyter Notebook
In [2]: # definimos la funcion convolucion
def convolution(X, Y):
'''recordemos, efecto de convolucion sobre señal de salida en un FOLDING'''
#aplicando folding a X
fX= [Link](X)
print(fX)
''' se crea arreglo de respuesta que va a almacenar las opciones que se realicen con las señales'''
#arreglo de respuesta a la convolucion...arreglo de ceros con el tamaño de la convolucion
rc= [Link]([Link] + [Link] -1)
#copia de a señal de entrada, se agragn ceros a las izquierda y derecha de la señal de entrada para poder co
cY= [Link](Y, 0, [Link]([Link]-1)) ##ceros del inicio
cY= [Link](cY, [Link], [Link]([Link]-1)) ##ceros del final
print(cY)
'''Creamos ciclos for para variables de sucesion de las señales'''
#ciclos de las variables de sucesion k, n
for k in [Link](0, [Link]):
for n in [Link](0, [Link]):
#control de posicion de la cadena
idcY= k + n
rc[k]= rc[k] + fX[n] * cY[idcY]
return rc
print(convolution(X, Y))
print([Link](X, Y)) #comprobar resultado
[ 1 3 -5 -7]
[ 0 0 0 5 2 1 -2 0 0 0]
[-35. -39. -2. 20. 15. -5. -2.]
[-35 -39 -2 20 15 -5 -2]
localhost:8888/notebooks/Downloads/[Link] 2/4
10/7/22, 15:23 conv - Jupyter Notebook
In [11]: #GRAFICAR CONVOLUCION
'''ya que las señales X y Y inicializan el 0 entonces, la convolucion esta centrado en 0, y tomando en cuenta q
Podemos definir el rango de la convolucion {-3,3}
'''
#definimos rango
r= [Link](-3, 4)
print([Link])
[Link](r, convolution(X,Y))
(7,)
[ 1 3 -5 -7]
[ 0 0 0 5 2 1 -2 0 0 0]
Out[11]: <StemContainer object of 3 artists>
In [ ]:
localhost:8888/notebooks/Downloads/[Link] 3/4
10/7/22, 15:23 conv - Jupyter Notebook
localhost:8888/notebooks/Downloads/[Link] 4/4