#This source code is public domain
#Author: Christian Schirm
import numpy, pylab
from matplotlib.font_manager import FontProperties
import matplotlib.pyplot as plt
pos=4,1.5,6,9
phase=0.2,0.0,0.6,0.3
x=numpy.linspace(0, 10, num=500)
ys=[numpy.cos(4*x*2*numpy.pi + f*2*numpy.pi)*numpy.exp(-((x-p)/1.5)**2) for p,f in zip(pos,phase)]
Y=numpy.sum(ys,axis=0)
for i in range(len(ys)): ys[i]+=i*2
plt.clf()
for y in ys: plt.plot(x,y,'-')
plt.plot(x,Y-3,'-')
for i in range(40): plt.plot([i*.25,i*.25],[-5,10],'0.8')
x=numpy.linspace(0, 10, num=41)
ys=[numpy.cos(4*x*2*numpy.pi + f*2*numpy.pi)*numpy.exp(-((x-p)/1.5)**2) for p,f in zip(pos,phase)]
Y=numpy.sum(ys,axis=0)
for i in range(len(ys)): ys[i]+=i*2
for y in ys: plt.plot(x,y,'bo', markersize=3)
plt.plot(x,Y-3,'bo', markersize=3)
plt.show()