NOTE: THIS DOCUMENT IS OBSOLETE, PLEASE CHECK THE NEW VERSION: "Mathematics of the Discrete Fourier Transform (DFT), with Audio Applications --- Second Edition", by Julius O. Smith III, W3K Publishing, 2007, ISBN 978-0-9745607-4-8. - Copyright © 2017-09-28 by Julius O. Smith III - Center for Computer Research in Music and Acoustics (CCRMA), Stanford University
- ... sample.1.1
- Note that the definition of
has changed unless the sampling rate
really is 1, and the
definition of
has changed no matter what the sampling rate is, since
when
,
, not
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... unknowns.2.1
- ''Linear'' in this context means that the unknowns are
multiplied only by constants--they may not be multiplied by each other or
raised to any power other than
(e.g., not squared or cubed or raised to
the
power). Linear systems of
equations in
unknowns are very
easy to solve compared to nonlinear systems of
equations in
unknowns. For example, Matlab or Mathematica can easily handle them. You
learn all about this in a course on Linear Algebra which is highly
recommended for anyone interested in getting involved with signal
processing. Linear algebra also teaches you all about matrices which
we will only introduce briefly in this course.To give you a simple first exposure, here's how the linear system of equations

looks in matrix form:
and this can be written in higher level form as
where
denotes the two-by-two matrix above, and
and
denotes the two-by-one vectors. The solution to this equation
is then
The general two-by-two matrix inverse is given by
and the inverse exists whenever
(which is called the determinant of the matrix
) is nonzero. For larger matrices,
numerical algorithms are used to invert matrices, such as used by Matlab
based on LINPACK [2]. An initial introduction to matrices
and linear algebra can be found in [3].. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... numbers2.2
- multiplication, addition, division, distributivity of
multiplication over addition, commutativity of multiplication and
addition.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... numerical:2.3
- unless you have
the optional Maple package for symbolic mathematical manipulation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... transients.3.1
- One joke along these lines, due, I'm told, to
Professor Bracewell, is that ''since the telephone is bandlimited to
3kHz, and since bandlimited signals cannot be time limited, it follows
that one cannot hang up the telephone''.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... delay4.1
- Group delay and phase delay are covered in the CCRMApublication [1] as well as in standard signal processing
references [7]. In the case of an AM or FM
broadcast signal which is passed through a filter, the carrier
wave is delayed by the phase delay of the filter, while themodulation signal is delayed by the group delay of the
filter. In the case of additive synthesis, group delay applies
to the amplitude envelope of each sinusoidal oscillator, while
the phase delay applies to the sinusoidal oscillator waveform itself.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... bel4.2
- The ''bel'' is named after Alexander
Graham Bell, the inventor of the telephone.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... intensity,4.3
- Intensity is
physically power per unit area. Bels may also be defined in
terms of energy, or power which is energy per unit time.
Since sound is always measured over somearea by a microphone diaphragm, its physical power is conventionally
normalized by area, giving intensity. Similarly, the force applied
by sound to a microphone diaphragm is normalized by area to givepressure (force per unit area).
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ...
4.4 - The bar was originally defined as
$10^-6$ atmospheres, but now it is defined to be exactly
1 $dyne/cm^2$.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... equivalents4.5
- Adapted from S. S. Stevens, F. Warshofsky, and the
Editors of Time-Life Books, Sound and Hearing, Life Science Library,
Time-Life Books, Alexandria, VA, 1965, p. 173.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... distortion'').4.6
- Companders (compresser-expanders) essentially
''turn down'' the signal gain when it is ''loud'' and ''turn up'' the
gain when it is ''quiet''. As long as the input-output curve is
monotonic (such as a log characteristic), the dynamic-rangecompression can be undone (expanded).
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... 0.4.7
- Computers use bits, as opposed to the more familiar
decimal digits, because they are more convenient to implement in
digital hardware. For example, the decimal numbers 0, 1, 2, 3,
4, 5 become, in binary format, 0, 1, 10, 11, 100, 101. Eachbit position in binary notation corresponds to a power of 2,
e.g.,
; while eachdigit position in decimal notation corresponds to a power of
10, e.g.,
. The term
''digit'' comes from the same word meaning ''finger.'' Since
we have ten fingers (digits), the term ''digit'' technically should be
associated only with decimal notation, but in practice it is used for
others as well. Other popular number systems in computers includeoctal which is base 8 (rarely seen any more, but still
specifiable in any C/C++ program by using a leading zero, e.g.,
decimal = 111,101,101
binary), and hexadecimal (or simply ''hex'') which is
base 16 and which employs the letters A through F to yield 16 digits
(specifiable in C/C++ by starting the number with ''0x'', e.g., 0x1ED
=
decimal =
1,1110,1101 binary). Note, however, that the representation within
the computer is still always binary; octal and hex are simply
convenient groupings of bits into sets of three bits (in octal)
or four bits (in hex).. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... processors.4.8
- This information is subject to change
without notice. Check your local compiler documentation.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... feedback4.9
- Normally, quantization error is computed as
, where
is the signal being quantized, and
is the quantized value, obtained by rounding to the nearest
representable amplitude. Filtered error feedback uses instead the formula
, where
denotes a filtering
operation which ''shapes'' the quantization noise spectrum. An excellent
article on the use of round-off error feedback in audio digital filters is
[11].. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... ''endianness'':4.10
- Thanks to Bill Schottstaedt for help with this table.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ...,4.11
- The notation
denotes a half-open interval which includes
but not
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ....4.12
- Another term commonly heard for ''significand''
is ''mantissa.'' However, this use of the term ''mantissa'' is not the same
as its previous definition as the fractional part of a logarithm. We will
therefore use only the term ''significand'' to avoid confusion.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... bias.4.13
- By choosing
the bias equal to half the numerical dynamic range of
(thus effectively
inverting the sign bit of the exponent), it becomes easier to compare twofloating-point numbers in hardware: the entire floating-point word can be
treated by the hardware as one giant integer for numerical comparison
purposes. This works because negative exponents correspond to
floating-point numbers less than 1 in magnitude, while. positive exponents
correspond to floating-point numbers greater than 1 in magnitude.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... CODEC4.14
- CODEC
is an acronym for ''COder/DECoder''.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... (LTI5.1
- A system
is said to belinear if for any two input signals
and
, we have
. A system is said to be time invariant if
, where
.
This subject is developed in detail in [1].. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... filter.5.2
- Technically, this
is the feedforward comb filter, also called the ''inverse comb
filter'' [14]. The longer names are meant to distinguish
it from the feedback comb filter (defined as ''the'' comb filter in
Dodge and Jerse [15]). In the feedback comb filter, the
delay output is fed back around the delay line and summed with the
delay input instead of the input being fed forward around the delay
line and summed with its output. The frequency response of the feedforward
comb filter is the inverse of that of the feedback comb filter (one will
cancel the effect of the other), hence the name ''inverse comb filter.''
When the delay in the feedforward comb filter is varied slowly over time,
the flanger effect is obtained. Flanging was originally achieved by
mixing the outputs of two LP record turntables and changing their relative
speeds by alternately touching the ''flange'' of each turntable to slow it
down.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... name.5.3
- While there is no reason it should be obvious
at this point, the comb-filter gain varies in fact sinusoidally
between
and
. It looks more "comb" like on a dB amplitude
scale, which is more appropriate for audio applications.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... dc5.4
- ''dc'' means ''direct current'' and is an
electrical engineering term for ''frequency
''.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... dB.5.5
- Recall that a gain factor
is converted to decibels(dB) by the formula
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... signal.5.6
- In complex variables, ''analytic'' just
means differentiable of all orders. Therefore, one would expect an
''analytic signal'' to simply be any signal which is differentiable of all
orders at any point in time, i.e., one that admits a fully valid Taylor
expansion about any point in time. However, all bandimited signals
(being sums of finite-frequency sinusoids) are analytic in the
complex-variables sense. Therefore, the signal processing term ''analytic
signal'' is somewhat of a misnomer. It is included in this chapter only
because it is a commonly used term in engineering practice.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... shift.5.7
- This operation is actually
used in some real-world AM and FM radio receivers (particularly in digital
radio receivers). The signal comes in centered about a high ''carrier
frequency'' (such as 101 MHz for radio station FM 101), so it looks very
much like a sinusoid at frequency 101 MHz. (The frequency modulation only
varies the carrier frequency in a relatively tiny interval about 101 MHz.
The total FM bandwidth including all the FM ''sidebands'' is about 100 kHz.
AM bands are only 10kHz wide.) By delaying the signal by 1/4 cycle, a good
approximation to the imaginary part of the analytic signal is created, and
its instantaneous amplitude and frequency are then simple to compute from
the analytic signal.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ...
5.8 - If
were constant, this would be
exact.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ...demodulation5.9
- Demodulation is the process of
recovering the modulation signal. For amplitude modulation (AM), the
modulated signal is of the form
,
where
is the ''carrier frequency'',
is the amplitude envelope (modulation),
is the modulation
signal we wish to recover (the audio signal being broadcast in the case of
AM radio), and
is the modulation index for AM.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ...
5.10 - The notation
denotes a single sample of
the signal
at sample
, while the notation
or simply
denotes the entire signal for all time.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... projection5.11
- The
coefficient of projection of a signal
onto another signal
can be
thought of as a measure of how much of
is present in
. We will
consider this topic in some detail later on.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ...
6.1 - We'll use an underline to emphasize the vector
interpretation, but there is no difference between
and
. For
purposes of this course, a signal is the same thing as a vector.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... vector.6.2
- You might wonder why the norm of
is
not written as
. There would be no problem with this
since
is undefined. However, the historically adopted notation is
instead
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... filter.7.1
- More precisely,
is a length
finite-impulse-response (FIR) digital
filter. See §8.7 for related discussion.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... computed,7.2
- We call
this thedigital sinc function to distinguish it from the sinc function
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... element7.3
- We are now using
as an integer counter,
not as
. This is standard notational practice.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... argument.7.4
- Alternatively, it can be extended to the complex case by
writing
, so that
includes a conjugation of the elements of
. This
difficulty arises from the fact that matrix multiplication is really
defined without consideration of conjugation or transposition at all,
making it unwieldy to express in terms of inner products in the complex
case, even though that is perhaps the most fundamental interpretation
of a matrix multiply.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... spectra8.1
- A spectrum is mathematically identical to a signal, since
both are just sequences of
complex numbers. However, for clarity, we
generally use ''signal'' when the sequence index is considered a time
index, and ''spectrum'' when the index is associated with successive
frequency samples.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... convolution.8.2
- To simulate acyclic convolution, as is
appropriate for the simulation of sampled continuous-time systems,
sufficient zero padding is used so that nonzero samples do not ''wrap
around'' as a result of the shifting of
in the definition of
convolution. Zero padding is discussed later in this reader.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ....8.3
- Matched filtering is briefly
discussed in §8.8.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... times.8.4
- You might wonder why we need this since all
indexing is defined modulo
already. The answer is that
formally expresses a mapping from the space of
length
signals to the space of length
signals.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... transform8.5
- The discrete cosine transform
(DCT) used often in applications is actually defined somewhat differently,
but the basic principles are the same
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... transform8.6
- The FFT is just a fast implementation of the DFT.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... Dual8.7
- In general, thedual of any Fourier operation is obtained by interchanging time
and frequency.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... domain,8.8
- The inverse DFT of the rectangular window here
is an aliased, discrete-time counterpart of the sinc function which
is defined as ''
.'' The sinc function is covered inMusic 420.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... system8.9
- We use the term ''system'' interchangeably
with ''filter.''
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ... domain.8.10
- Note that we normally say the sampling rate in the time
domain must be higher than twice the highest frequency in the
frequency domain. From the point of view of this course, however, we may
say instead that sampling rate in the time domain must be greater than thefull spectral bandwidth of the signal, including both positive andnegative frequencies. From this simplified point of view, ''sampling rate
= bandwidth supported.''
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
- ....A.1
- Mathematically,
can be allowed to be nonzero over points
provided that the set of all such points have measure zero in
the sense of Lesbegue integration. However, such distinctions do not
arise for practical signals which are always finite in extent and
which therefore have continuous Fourier transforms. This is why we
specialize Shannon's Sampling Theorem to the case of
continuous-spectrum signals.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .