Matika/ITDT/jjj.py
2025-03-09 11:33:42 +01:00

31 lines
No EOL
786 B
Python

import sympy as sp
# Symbolická proměnná t
t = sp.symbols('t')
# Definujte funkci f(t) podle vašich potřeb
def f(t):
return t if 0 < t < 1 else 0
# Zde nastavte hodnotu n pro konkrétní číslo harmonické složky
n = 1
# Perioda a úhlová frekvence
T = 2 # Perioda funkce
omega = 2 * sp.pi / T # Úhlová frekvence
# Výpočet Fourierových koeficientů
a_0 = (2 / T) * sp.integrate(f(t), (t, 0, T))
a_n = (2 / T) * sp.integrate(f(t) * sp.cos(n * omega * t), (t, 0, T))
b_n = (2 / T) * sp.integrate(f(t) * sp.sin(n * omega * t), (t, 0, T))
# Výpočet konkrétního koeficientu c_n na základě a_n a b_n
c_n = a_n + b_n
# Tisk koeficientů
print(f'a_0: {a_0}')
print(f'a_{n}: {a_n.subs(n, 1)}')
print(f'b_{n}: {b_n.subs(n, 1)}')
print(f'c_{n}: {c_n.subs(n, 1)}')