0
0
RosHow-ToBeginner · 4 min read

How to Find Fourier Series Coefficients: Step-by-Step Guide

To find Fourier series coefficients, calculate the integrals of the function multiplied by sine and cosine terms over one period. The coefficients a_0, a_n, and b_n are found using formulas involving integrals of f(t) times cos(nωt) and sin(nωt) over the period.
📐

Syntax

The Fourier series coefficients for a periodic function f(t) with period T are calculated as:

  • a_0 = (1/T) ∫ f(t) dt over one period, representing the average value.
  • a_n = (2/T) ∫ f(t) cos(nωt) dt for cosine coefficients.
  • b_n = (2/T) ∫ f(t) sin(nωt) dt for sine coefficients.

Here, ω = 2π/T is the fundamental angular frequency, and n is a positive integer.

python
a0 = (1 / T) * integral(f(t), t0, t0 + T)
a_n = (2 / T) * integral(f(t) * cos(n * omega * t), t0, t0 + T)
b_n = (2 / T) * integral(f(t) * sin(n * omega * t), t0, t0 + T)
omega = 2 * pi / T
💻

Example

This example finds the first three Fourier series coefficients for the function f(t) = t over the interval to π.

python
import numpy as np
from scipy.integrate import quad

def f(t):
    return t

T = 2 * np.pi
omega = 2 * np.pi / T

def a0_func(t):
    return f(t)

def an_func(t, n):
    return f(t) * np.cos(n * omega * t)

def bn_func(t, n):
    return f(t) * np.sin(n * omega * t)

# Calculate a0
 a0, _ = quad(a0_func, -np.pi, np.pi)
 a0 = (1 / T) * a0

# Calculate a1, a2, a3
coeffs_a = []
coeffs_b = []
for n in range(1, 4):
    an, _ = quad(an_func, -np.pi, np.pi, args=(n,))
    bn, _ = quad(bn_func, -np.pi, np.pi, args=(n,))
    coeffs_a.append((2 / T) * an)
    coeffs_b.append((2 / T) * bn)

print(f"a0 = {a0:.4f}")
for i in range(3):
    print(f"a{i+1} = {coeffs_a[i]:.4f}, b{i+1} = {coeffs_b[i]:.4f}")
Output
a0 = 0.0000 a1 = 0.0000, b1 = 2.0000 a2 = 0.0000, b2 = 0.0000 a3 = 0.0000, b3 = -0.6667
⚠️

Common Pitfalls

  • Not integrating over exactly one full period T causes incorrect coefficients.
  • For odd or even functions, some coefficients are zero; forgetting this wastes effort.
  • Mixing up a_n and b_n by swapping sine and cosine terms is a common error.
  • Using the wrong limits or frequency ω leads to wrong results.
python
import numpy as np
from scipy.integrate import quad

def f(t):
    return t

T = 2 * np.pi
omega = 2 * np.pi / T

# Wrong: integrating over half period only
wrong_a0, _ = quad(f, 0, np.pi)
wrong_a0 = (1 / T) * wrong_a0

# Correct: integrate over full period
correct_a0, _ = quad(f, -np.pi, np.pi)
correct_a0 = (1 / T) * correct_a0

print(f"Wrong a0: {wrong_a0:.4f}")
print(f"Correct a0: {correct_a0:.4f}")
Output
Wrong a0: 0.2500 Correct a0: 0.0000
📊

Quick Reference

CoefficientFormulaMeaning
a0(1/T) ∫ f(t) dtAverage (DC) component
a_n(2/T) ∫ f(t) cos(nωt) dtCosine coefficients
b_n(2/T) ∫ f(t) sin(nωt) dtSine coefficients
ω2π/TFundamental angular frequency
n1, 2, 3, ...Harmonic number

Key Takeaways

Fourier coefficients are found by integrating the function times sine or cosine over one full period.
Use the correct period and fundamental frequency to get accurate coefficients.
The coefficient a0 gives the average value of the function over the period.
Sine coefficients (bn) and cosine coefficients (an) capture different parts of the signal shape.
Check function symmetry to simplify calculations and avoid zero coefficients.