Hacker News new | ask | show | jobs
by tknkx 2603 days ago
Can someone explain to me why generating a square wave creates lots of harmonics, as opposed to other kinds of waves?
3 comments

The spectrum of a signal is its Fourier transform. Only sine and cosine signals have a "pure" signal with a single frequency. Anything else decomposes into a whole host of spectral contributions. Square waves are especially bad because they require contributions from infinitely many harmonics to produce the steep flanks. That is also why a clean square wave cannot exist: some kind of band limit is always present, resulting in ringing around the flanks.

See also Fourier Analysis on the Wikipedia article: https://en.m.wikipedia.org/wiki/Square_wave

Because you try to generate a square wave by adding toghether "round" waves (sinusoidal). In order to get into the "corners" you must add "round" waves with smaller and smaller diameters (period). Small periods means high frequencies. The more waves you add, the squarer the sum becomes.
A square wave IS the base frequency plus ALL[1] the odd harmonics (https://en.wikipedia.org/wiki/Square_wave#Fourier_analysis explains it better than I could).

[1]: Yes, so in reality you neither get an infinite set of harmonics, nor a perfect square wave.