## Fourier Synthesis

A periodic signal can be described by a Fourier
decomposition as a Fourier series, i. e. as a sum of
sinusoidal and cosinusoidal oscillations.
By reversing this procedure a periodic signal can be generated by superimposing
sinusoidal and cosinusoidal waves.
The general function is:

The Fourier series of a square wave is

or

The Fourier series of a saw-toothed wave is

The approximation improves as more oscillations are added.

A sample session would be as follows:
- To produce a saw-toothed wave,
in the white box to the right of the word "Sin:" enter a
formula such as
`1/x`

or `(-1^(x-1))/x`

.
The variable `"x"`

will be replaced by the term number, so the
coefficients will have values of 1, 0.5, 0.3333,...
- IN ORDER FOR THE PROGRAM TO PARSE AN EXPRESSION, you must
press the "Enter" key instead of leaving the box with the mouse or
cursor keys.
- You can modify coefficients by using the formula box, the slider
bars, or by entering an expression (such as 0.5 or -1/7) into the white
box by each label.
- If your machine is capable of playing sounds, you should also
hear a tone for the waveform you have produced. This may be turned
off by pressing the "Audio Off" button.
- You may reset a coefficient to zero by clicking on the label button
with the mouse, thus by clicking on the even numbered coefficients
`b2:`

, `b4:`

, ..., you can produce a square wave.
- The applet can store up to 3 different waveforms
(by clicking on Wave1, Wave2, Wave3) which is helpful for comparing different
sequences or different numbers of terms.

**Condition of Dirichlet:**

The Fourier series of a periodic function x(t) exists, if
- , i. e. x(t) is absolutely integratable,
- variations of x(t) are limited in every finite time interval T and
- there is only a finite set of discontinuities in T.

The source code (version 96/09/27)
is available according to the
GNU Public License

This applet uses the sun.audio package. HotJava users should set
`Class access` to `Unrestricted`.

This applet, gif images and
HTML documentation were developed by
Manfred Thole,
thole@nst.ing.tu-bs.de, July 15, 1996.
The original documentation and applets can be found at:

Deutsch
http://www.nst.ing.tu-bs.de/schaukasten/fourier/

English
http://www.nst.ing.tu-bs.de/schaukasten/fourier/en_idx.html

Modifications were made by Tom Huber,
huber@gac.edu, September 27, 1996

This applet requires the
graph2d package
from Leigh Brookshaw to parse equations.

Tom Huber,
huber@gac.edu, Revised 22-APR-97