Fourierova řada¶
vyjádření obdélníkových kmitů pomocí Fourierovy řady
In [2]:
import numpy as np
import matplotlib.pyplot as plt
Fourierova řada popisující obdélníkové o amplitudě 1, úhlové frekvenci $\omega$
Funkce $f$ vypočítá sumu $n$ členů Fourierovy řady
$$f = \frac{4}{\pi}\sum_{k=1}^n\frac{1}{2k-1}\text{sin}\left [ (2k-1)\omega\, t\right ]$$
In [4]:
def f(t,omega,n):
suma=0.0
for i in range(1,n):
suma=suma+1/(2*i-1)*np.sin((2*i-1)*omega*t)
suma=8/omega*suma
return suma
vektorizujeme tuto funkci aby mohla pracovat s polem
In [6]:
vf=np.vectorize(f)
Zvolíme si periodu $T$ obdélníkových kmitů
In [8]:
T=1.0
omega=2*np.pi/T
pole časů, ve kterých budme obdélníkové kmity počítat
In [10]:
t=np.arange(0,3.5,0.001)
In [38]:
fig,ax=plt.subplots()
for j in range(1,20,1):
y=vf(t,omega,j)
ax.plot(t,y,label="počet členů řady = "+str(j))
plt.legend(loc=(1.04,0))
plt.show()
In [ ]: