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()
No description has been provided for this image
In [ ]: