Sound Waves

About this lesson plan

This is a lesson plan for indented for realization during 2h lesson activities.

It has been developed during work in iCSE4school project based on lesson carried out in 2015-2017 at The Stefan Batory High School in Chorzów.

It was prepared by Adam Ogaza based on his lesson.

Attention!

In each of the “code” cells you can change any number, text or instruction. In order to return to the original version refresh the webpage. Sometimes the next code depends on variables defined from the previous one, so one has to execute cells in order of apperance.

Introduction

The lesson described below was tested three times on students learning physics at advanced level (age 17). In 2015 the numerical amount of group was 14, in 2016: 21 and in 2017: 16. This lesson was preceded by a short course of programming in Python and consists of two parts: theoretical introduction and IT laboratory. Both parts were filmed in 2015 and published on Youtube with English subtitles.

The main aims of this lesson are:

  • Explaining, what is sound.

  • Explaining, what is acoustics, how it is divided and why?

  • Defining all physical and physiological quantities describing sound.

  • Giving a basic knowledge of sound spectrum.

  • Exercising in plotting diagrams in Python.

  • Showing, that any periodical function can be presented as a linear combination of sine functions.

  • Exercising interaction and sliders in Python.

Preparing this lesson we should take into consideration the following circumstances:

  • At high school level pupils cannot integrate. They have heard about integral and its applications, but performing integrations at the level required by Fourier transform is far beyond their abilities. Therefore real calculations must be replaced by simple playing with amplitudes of harmonics.

  • It is the first students’ contact with @interact and sliders. Technical problems themselves are heavy to overcome, so there is no point in making the physical side of the topic more difficult.

  • This lesson (like any other) should be attractive, so spectacular results should be reached by relatively simple means.

  • The level of difficulties of the examples should gradually grow during this lesson. A good idea is to show different solutions for the same problem.

Theoretical part

Exercises in programming were preceded by a theoretical lecture about sound waves, published at: https://youtu.be/dp-ajKHs6WU

Main problems discussed in this lecture are the following:

  • Definition of sound wave.

  • Announcement, that some ideas from this lecture will be developed further during IT lesson with the use of SAGE and Python

  • Definition of acoustics and explanation the essence of physical and physiological acoustics.

  • Infrasounds and ultrasounds.

  • Frequency / wavelength and their relation to the tone

  • Spectrum of sound and its relation to the timbre.

  • Weber - Fechner law.

  • Sound intensity level and its relation to the loudness (audiogram).

  • Phase of the sound wave and its relation to the spatial impressions.

During this lesson a software acoustic generator is used to demonstrate the tone output with respect to the frequency. It can also show, how changes of shape of signal influences the sound spectrum and timbre of voice. Students are informed, that they will use Python to illustrate the shape of complex signal with respect to the amplitudes of individual harmonics.

IT part

The IT part of this lesson was executed in IT laboratory, filmed and published at: https://youtu.be/0fVgRy6CpWQ

This film, made in 2015, shows the previous version of programming. After some improvement it looks as follows:

Hypothetical complex wave, defined in a static manner

The same as above, but obtained with different tools.

Another version of the same function, but the individual amplitudes are now controlled by sliders.

Because students are working on server sage03 with version 6.4.1 of SAGE, we cannot use the ready function histogram. Instead I propose my own version.

Decomposition of an example function with the use of Fourier transform.

Similar analysis extended to a sawtooth-like function as well as the functions used with the sound generator as shown in the video.

With the use of interact, the code segments above could be combined as follows. Students may now play with different input signal forms:

We can also control the number of iteration. In the example below, the loop superimposes plots of functions and displays the sum together with the components:

Now the loop creates a complex wave built with harmonics of amplitudes inversely proportional to their frequencies. The number of iterations is controlled by a slider. The functions shown above are added each to other and the sum is plotted.

The same effect, but without any interaction.

Conclusions

Using Python led pupils to better understanding the essence of sound spectrum. In high school pupils don’t know Fourier transform - it is beyond the curriculum. It is a big discovery for them, that any periodic function, which has the correct symmetries (which is the case in the context of acoustic waves), can be presented as a combination of sine functions.

From the other side, the participants of the lesson had an opportunity to learn the basic methods of plotting in interactive manner, which was new for them. The topic “sound spectrum” became less abstract, because students had it “in their hands”.

My observation is, that students are happy when using ready tools included in this worksheet, but are not able to develop them. My attempts to encourage students to improve above code as a homework failed.