from __future__ import division
import numpy as np
import matplotlib.pyplot as pt
n = 2048
spikes = np.zeros(n)
spikes[730] = 1
spikes[1512] = 0.3
pt.plot(spikes)
pattern = np.zeros_like(spikes)
pattern[n/2-100:n/2+100] = np.sin(np.linspace(-pi, pi, 200))
pt.plot(np.convolve(pattern, spikes))
spikes_hat = np.fft.ifft(spikes)
pattern_hat = np.fft.ifft(pattern)
convolved = np.fft.fft(spikes_hat * pattern_hat)
pt.plot(convolved.real)