Beat Notes: An Interesting Observation

This post is by Richard Lyons, the author of the superb book “Understanding Digital Signal Processing” – Charan Langton

Some weeks ago a friend of mine, a long time radio engineer as well as a piano player, called and asked me,

“When I travel in a DC-9 aircraft, and I sit back
near the engines, I hear this fairly loud unpleasant
whump whump whump whump sound. The frequency of that sound
is, maybe, two cycles per second. I think that sound is a
beat frequency because the DC-9’s engines are turning at
a slightly different number of revolutions per second.
My question is, what sort of mechanism in the airplane
could cause the audio from the two engines to be multiplied
so that I can hear the low-frequency beat frequency?”


I didn’t have an answer for my friend but his question did start me thinking.

Beat Notes
You’ve probably heard of beat notes before. In Mitra’s terrific DSP book, he describes a beat note as follows [1]: If we multiply two sine wave signals, having similar frequencies, the result is a sum-frequency sine wave and a difference-frequency sine wave. Mathematically, this multiplication can be shown by a common trigonometric identity as:

The cos[2x(f1–f2)t]/2 sinusoid, the difference frequency, is called the “beat note.” If you’ve ever studied AM demodulation then you’ve seen that sum and difference Eq. (1) before.

I remember years ago when someone showed me how to tune the strings for an acoustic guitar to the proper pitch, relative to another string, using the notion of beat notes. When you pluck two strings tuned to similar, but not identical, frequencies you can hear what seems to be a low-frequency beat note. When the two strings are tuned closer and closer in frequency the beat note becomes lower in frequency. When the two strings are tuned to the same frequency (same pitch) the beat note frequency goes to zero and can no longer be heard. In that event the two strings are properly tuned relative to each other. As was explained to me, the beat note we hear is the difference in frequency between two improperly tuned strings. What I’ve since learned is this description of a guitar’s audible beat note is NOT correct. Allow me to explain.

The Product and Sum of Two Audio Tones
Figure 1 shows two sine wave tones, an f1 = 210 Hz tone and an f2 = 200 Hz tone.

beat1Figure 1

If we multiply those two Figure 1 sine waves, as indicated by Eq. (1), the product is shown as the solid curve in Figure 2. In that figure we see the solid curve is the sum-frequency (f1 + f2) 410 Hz sine wave. And the amplitude offset (the instantaneous bias) of the 410 Hz sine wave fluctuates at a rate of a 10 Hz difference frequency (f1 – f2) as shown by the red dashed curve. I’ve included the red dashed curve in Figure 2 for reference only. Again, the blue curve alone is our sin(2?210t)•sin(2?200t) product signal

beat2 Figure 2

If we were to drive a speaker with the Figure 2 product signal we’d hear the 410 Hz sum-frequency tone but we would NOT hear the 10 Hz amplitude offset. (Matlab code is provided below to demonstrate what I’m claiming here.)

As it turns out, Eq. (1) is not the expression we need when considering the sum of two sine wave tones. It’s on the following trigonometric identity that we should focus:


Equation (2), the sum of a sin(2?f1t) sine wave and a sin(2?f2t) sine wave, describes what happens when two guitar strings are plucked as well as what my friend hears inside a DC-9 aircraft.

If we add the two Figure 1 sine waves, as indicated by Eq. (2), the sum is shown as the solid curve in Figure 3. In that figure we see the solid curve is the sin[2?(200+210)t/2] 205 Hz tone predicted by Eq. (2).

beat3Figure 3

However, the peak-to-peak amplitude of that 205 Hz tone is modulated (multiplied) by a cos[2?(210-200)t/2] 5 Hz sinusoid. (I’ve included the red dashed curve in Figure 3 for reference only.) Isn’t it interesting that when we add a 210 Hz sine wave to a 200 Hz sine wave the result is a fluctuating-amplitude 205 Hz sinusoidal wave? I don’t think that fact is at all intuitive. At least it wasn’t intuitive to me. That sine wave summation behavior is the “interesting observation” mentioned in the title of this blog.

In Eq. (2), with f1 = 210 and f2 = 200, I view the factor 2cos(2?5t) in Eq. (2) as an amplitude function that controls the amplitude of the sin(2?205t) audio tone. That viewpoint is shown below.


Now if we drive a speaker with the Figure 3 sum signal we’d hear a 205 Hz tone and that tone’s amplitude (volume) would fluctuate at a rate of 10 Hz. The amplitude fluctuations occur at a 10 Hz rate because the 205 Hz tone’s amplitude goes from zero to its maximum value once for each half cycle of the 5 Hz modulating frequency. (Again, Matlab code to generate and listen to the Figure 3 signal is given below.)

So what this all means is that when we simultaneously pluck two guitar strings tuned to 210 Hz and 200 Hz respectively, we hear a tone whose frequency is 205 Hz (the average of 210 Hz and 200 Hz) and we also hear the 205 Hz tone’s amplitude fluctuate at a 10 Hz rate. And the oscillating amplitude fluctuations give us the impression that we hear a 10 Hz tone when in fact no 10 Hz tone exists in the Figure 3 sum signal. I say that because the spectrum of the Figure 3 solid sum-signal curve contains two spectral components, a 200 Hz tone and a 210 Hz tone. Nothing more and nothing less. As such we can say that plucking two guitar strings, off-tuned by 10 Hz, does NOT generate a sinusoidal 10 Hz audio beat note.

And to answer the DC-9 question, in my opinion no multiplication of engine noise is taking place. The audible whump whump whump sound is fluctuations in the amplitude (volume) of the two engines’ average rotational frequencies.

–Richard Lyons
Author of “Understanding Digital Signal Processing”

[1] S. Mitra, Digital Signal Processing, A computer-Based Approach,
McGraw-Hill, New York, New York, 2011, pp. 70-71.

Matlab Code
The following Matlab code enables you to generate, and listen to, the sum of
two audio tones.

% Filename: Beat_Frequency.m
% [Richard Lyons, Feb. 2013]

clear, clc

Fs = 8192; % Sample rate of dig. samples
N = 8192; % Number of time samples
n = 0:N-1;

Wave_1 = sin(2*pi*210*n/Fs); % First tone, 210 Hz
Wave_2 = sin(2*pi*200*n/Fs); % Second tone, 200 Hz

% Plot the two tones
plot(n/Fs, Wave_1, ‘-b’)
ylabel(‘200 Hz’); xlabel(‘Time (sec.)’);
hold on
plot(n/Fs, Wave_2, ‘-r’)
axis([0, 0.05, -1.2, 1.5]);
ylabel(‘Input tones’); xlabel(‘Time (sec.)’);
title(‘red = 200 Hz tone, blue = 210 Hz tone’);
grid on, zoom on
hold off

Product = Wave_1.*Wave_2;
Sum = Wave_1 + Wave_2;

% Plot the tones’ product and sum
plot(n/Fs, Product, ‘-b’),
ylabel(‘Product’); xlabel(‘Time (sec.)’);
grid on, zoom on
hold on
Red_Curve = 0.5*cos(2*pi*10*n/Fs) + 0.5; % Used for plotting only
plot(n/Fs, Red_Curve, ‘-r’)
axis([0, 0.3, -1.25, 1.5]);
hold off
grid on, zoom on

plot(n/Fs, Sum, ‘-b’)
hold on
Red_Curve = 2*cos(2*pi*5*n/Fs); % Used for plotting only
plot(n/Fs, Red_Curve, ‘-r’)
axis([0, 0.3, -2.4, 3]);
hold off
ylabel(‘Sum’); xlabel(‘Time (sec.)’);
grid on, zoom on

% Play all the signals
sound(Wave_1, Fs)
sound(Wave_2, Fs)
sound(Product, Fs)
sound(Sum, Fs)

% Spec analysis of the “Sum” signal
Spec = fft(Sum);
Spec_Mag = abs(Spec);
Freq = n*Fs/N; % Freq vector in Hz

figure (3) % Plot positive-freq spec amg
plot(Freq(1:N/16), Spec_Mag(1:N/16))
title(‘Spec Mag of “Sum” signal’)
ylabel(‘Mag.’), xlabel(‘Hz’)
grid on, zoom on

Digital communications tutorial links

I recently changed to this WordPress format for Although the functionality is great, the old links which so many schools, colleges had no longer work.

The site has fallen off totally from Google, probably because none of the old links can be found by Google. Hopefully their robots will find this new address.

In the meanwhile, a direct link from your site to mine will help a lot.

If you know of any good engineering tutorial sites, please also let me know.


Charan Langton

DTFT, DFT Tutorial added

I have added Chapter 5 which covers DFT and DTFT and a little bit about FFT.  The tutorial has most of the Matlab code used to generate the graphs. In the links page, I have also added the sites I referred to. Most of them are very good.

Once you dive into the topic, you realize how simple on hand but then so complex at the same time, kind of like Life, I guess. The next topic on the list is Windows. Use of Windows is almost mandatory when doing DFT on real signals. So understanding how to use them is as important as the DFT itself.

Charan Langton

April 3, 2013



Understanding Digital Signal Processing by Richard Lyons

In every field there are books that just stand apart. They are so well written that they change your opinion about the subject. In fact, with most mathematical ideas if you understand them well, they no longer seem tedious, or hard. Richard Lyons book “Understanding Digital Signal Processing” is just such a book. I remember coming across it on Amazon when Amazon was young. This was before Amazon had a “look inside” feature and one was generally leery of ordering things on line. There was a two page introduction to the book which I read. The writing style was impressive and so I ordered the book. I still remember looking through and thinking this looks fun! It had more pictures than it had formulas!

I read the first chapter that night and felt exhilarated. I had my first aha moment in DSP. Although I was out of graduate school for several years at that time, I felt that I had never really understood the subject. Yes, I could do the transforms for homework etc., but understood, not really. In this book, Lyons starts with discrete signals, goes through sampling and aliasing in the first chapter. Each chapter build gently on the previous. All just a model of clarity and beauty. I particularly loved the filter chapter, with such easy to understand exposition of what the equation meant, the forward part and the reverse part. We all love pictures and the book’s strength is its ability to communicate not just in words but also in figures. From DFT to filter design to DSP algorithms, all come alive as explained by Lyons.

I think I did read the whole book in about a week. I then flipped to the end to see who this guy was. It turned out that he worked locally at TRW. So hesitatingly, I called him to tell him how much I loved his book. He became my role model and a friend. I had been writing papers and felt that this is the way engineering should be taught. This is the way engineering books should be written. With the student in mind. No hiding behind formulas.

I recently picked up the book again as I am writing some papers on FFTs. And despite being somewhat smarter today than 15 yeas ago, I find the book still a model of engineering writing. Just a plain excellent book, deserving of all the superlatives I can muster. Fantastic, etc. etc. If you are a student in this field or an engineer, I recommend that you add this book to your library immediately.

If you have read this book, would love to hear what you think of it.

-Charan Langton


Folding and Aliasing

Here is an java applet which lets you see the effect of sampling frequency and reconstruction of the signal. The signal is sampled, then goes through a low pass. You will see here what happens when sampling frequency is not large enough and the replicated spectrum overlap.

Requires Java.

New look

In coming to this new format, I had to leave behind the board which has over 2000 members. There were quite a lot of people on it and I am sorry that it will not be accessible any more. However, this format may work even better, as now the discussions will be grouped by topic. For general questions, help etc. from others, please use the main page.

I may add a forum, if there is interest
Thank you.

Discrete-time Fourier Series and Fourier Transform

I have posted part 3 of the FFT tutorial at
It starts with the development of discrete signals, their properties, periodicity of discrete signals,
finding a set of basis harmonics and then finally the Discrete-time Fourier Transform.

The tutorial also includes Matlab code.
Let me know if I succeeded in making this topic easy(er) to grasp.


Fourier Made easy part 2 – new version uploaded

I have uploaded a new version of the Fourier Made Easy part 2 tutorial. In this version, I have included more examples as well as Matlab code to plot some of the key pictures.  I get requests to include code, so I am going through my old work and including it as I can. I use Coware SPW for most of my “real” work and from it I can only include the pictures. Its purely block orientated and has no code to share.

This tutorial can be used for classroom use as well for anyone wanting to brush up on transform theory.
I am now helped in my work by Victor Levin, my son. He did the Matlab codes in this tutorial. Victor is a graduate student in EE at Georgia Tech. He is currently a TA at the Metz, France campus of GTech.

I recently went to France and saw the GTech campus and facilities. Very nice!

Charan Langton
October, 2012

Video that explains the complex exponential

While writing the second part of the Fourier tutorial, I came across this video which does a great job of explaining the complex exponential, its relationship to sinusoids and hence to the reason why signal processing math is done with exponentials. Nicely done.

Fourier tutorial part 1 – updated

I am going through my old material and am updating it. I have just uploaded FFT Part 1 after changing it in many places. If you have comments on this tutorial (any including typos!), please post them here. Charan Langton