Convolución discreta con Python.

#By Mark Wickert from Signals and Systems For Dummies
import numpy as np
import pylab as pl
import ssd

n=np.arange(-4,6)
xd1=2*ssd.drect(n,4)
hd1=1.5*ssd.dimpulse(n)-0.5*ssd.drect(n+1,3)
#hd1=-0.5*ssd.dimpulse(n+1)+1*ssd.dimpulse(n)-0.5*ssd.dimpulse(n-1)
yd1_num,nd1=ssd.conv_sum(xd1,n,hd1,n)
#pl.subplot(1,3,1)
pl.figure(1)
pl.stem(n,xd1)
pl.title('x[n]'), pl.axis([-4,5,-1,3]),pl.grid(True)
#pl.subplot(1,3,2)
pl.figure(2)
pl.stem(n,hd1),pl.grid(True)
pl.title('h[n]')
#pl.subplot(1,3,3)
pl.figure(3)
pl.stem(nd1,yd1_num), pl.axis([-4,5,-2,2]),pl.grid(True)
pl.title('y[n]=x[n]*h[n]')

4 comentarios:

  1. Hola como estas, esta bueno tu codigo pero que es import ssd?? Podrias ayudarme con eso??

    ResponderEliminar
    Respuestas
    1. Hola, es una librería del libro de Mark Wickert "Signals and Systems For Dummies". Si buscas en google, la puedes bajar. Es libre.

      Eliminar
  2. Respuestas
    1. Te recomiendo que uses: https://www.continuum.io/downloads

      Eliminar