Introduction
Our initial plans for this project were to model and guitar string, piano string, and drum head in MatLab, then compare data calculated to a real scenario, using the physical instruments and recording the sounds they create. We were able to complete the guitar and piano strings, but were not able to advance to the drum head due to time constraints. However, we did get a lot of good data from our experiments with the guitar and piano strings.
Guitar String
For this part of our project, we modeled a guitar’s B string in MatLab, and plucked the string at different points: once at the midpoint of the string, once 1/5 the string length from the bridge, and once 1/20 the string length from the bridge. In the proceeding images, you can see the string oscillations, the force of the string on the guitar bridge with respect to time, and the Fourier Transform of these force graphs, which reveal the frequencies inside.
Modeled Guitar Data:
Frequencies of waveforms (Fourier Transform):
The force of the string on the bridge with respect to time is nearly identical to the sound wave that the string produces in the atmosphere, thus we were able to use that data to find the frequencies in our calculated string. We also shifted the frequencies on the graph of the Fourier Transform for visual purposes (if not shifted, they would line up on top of each other and be difficult to distinguish).
Next, we recorded a guitar B string, identical to the one we modeled, and Fourier transformed those recordings to obtain the frequencies inside.
Frequencies of Physical Guitar String:
Here are the recorded guitar sound files. Note as the pluck gets closer to the bridge, the tone of the guitar becomes harsher. We will discuss this soon.
String Plucked at (1/2) distance:
String Plucked at (1/5) distance:
String plucked at (1/20) distance:
In our code for the modeled guitar string, the calculated waveform is played for the viewer, and as seen from the physical guitar, the tone of the sound gets harsher as the pluck gets closer to the bridge. This harsher sound is the stronger presence of the overtones in the waveform as seen in our Fourier transforms. As the pluck gets closer to the bridge, strength of the higher frequencies increases, which is why the sounds produced becomes much harsher. This is what we expected and found with this part of the experiment. Comparing our Fourier transform graphs, we see that the peaks at the higher frequencies increase with each pluck closer to the bridge. We can also see that the closer the pluck is to the bridge, the lower the fundamental frequency becomes present in the produced sound.
However, there are some inconsistencies between the modeled and physical strings. The modeled string did not contain and decaying properties, where the physical string did. Also, the modeled string data was calculated using two dimensions when the physicals string would utilize all 3. This important difference shows in the Fourier Transform of the modeled string. When the modeled string is plucked at the halfway point, every other frequency (or peak) is eliminated from the Fourier transform; same as when plucked at 1/5, the fifth and tenth peak is eliminated. In this modeled state, we are effectively killing these overtones by plucking where they would naturally occur on the string. The decay properties of the physical string allow these “ghosted” frequencies to sound because the string can move freely rather than stay in a fixed 2-D dimension and fixed wave profile. Another reason behind this, could be that the physical string is not of ideal form, meaning it is a series of coiled wires rather than a solid string. This could have imperfections giving rise to these “ghosted” frequencies.
Another small discrepancy in our data is that the fundamental frequency of the physical string plucked at the halfway point is lower than when plucked at the other distances. We don’t see this in our modeled system because the amplitude of the pluck was held constant for each pluck (giving us the results we expect). On the physical string, the string is able to bend more at the middle than closer to the bridge. Thus to get an equal volume pluck, we must do a harder pluck in the middle than closer to the bridge. If we kept the amplitude of the plucks for the physical guitar the same, we would expected the power of the individual frequencies to closer match the modeled ones.
Piano String
For this part of our project, we modeled a piano’s middle C string in MatLab, and struck the string with different forces: Once softly, and once more powerfully. In the proceeding images, you can see the string oscillations, the force of the string on the piano bridge with respect to time, and the Fourier Transform of these force graphs, which reveal the frequencies inside, all for two different hit intensities.
The model included a hammer with mass and an original velocity (which changes between the two trials) as well as a felt on the hammer which behaves as a spring. Here the compression of the felt is dependent on the position of the hammer and the string section where the hammer strikes, and which affects the positions of the freely moving hammer and string based on its compression. When the compression changes signs, we know that the hammer has left the string and we automatically give the string no outside force.
Modeled Piano Data and Frequencies
The force of the string on the bridge with respect to time is nearly identical to the sound wave that the string produces in the atmosphere, thus we were able to use that data to find the frequencies in our calculated string.
Next, we recorded a piano C string, identical to the one we modeled, and Fourier transformed those recordings to obtain the frequencies inside.
Frequencies of Real Piano String
Here are the recorded piano sound files. Note when the strike is harder, the tone of the guitar becomes harsher. We will discuss this soon.
Hard String Hit:
Soft String Hit:
In our code for the modeled piano string, as the strike gets harder, strength of the higher frequencies increases, which is why the sounds produced becomes much harsher. This is what we expected and found with our simulations. A similar trend was also found in the Fourier transformed recorded sound files.
However, there are some inconsistencies between the modeled and physical strings. One such difference was the lower fundamental frequency than the second overtone in the recordings, as compared to our model. This could be due to the amplifying qualities of the piano box. The modeled string did not contain and decaying properties, where the physical string did. Also, the modeled string data was calculated using two dimensions when the physicals string would utilize all 3. The model we simulated made assumptions about the spring like qualities of the felt, the width of the hammer, as well as the strike intensity, which we couldn’t make equivalent to the recorded strikes. This created some strange differences, including a strangely sharp hammer hit (not as soft as one might expect from a spring, as well as differing from the textbook’s predicted hammer behavior). We brainstormed what may be it’s cause (the hammer velocity, the original felt thickness, the hammer’s strike position) but couldn’t find a solution.
Conclusion
In conclusion our results were what we expected with some degree of uncertainty. String plucks closer to the bridge and harder string strikes produce more overtone notes relative to the fundamental frequency. If we had more time/if this project were to continue further, we would explore the addition of a damping coefficient in our modeled experiments and compare with physical strings, investigating the discrepancies mentioned earlier. We would also begin to explore the drum head dynamics, experimenting with two 3-D membranes, connected through a closed hoop, similar to the structure of an actual drum.
The following link is to a google drive containing all of our code and sound files.
Please note, if you are planning to run the code that involves the recordings of the instruments, YOU MUST CHANGE THE DIRECTORY IN WHICH THE CODE CALLS THE SOUND FILE. Each space in the code is noted where this part should be edited. This needs to be done as the naming of folders and drives varies from computer to computer. Not only must the correct location of the file be used, but the sound files must be saved in the same location as the MatLab code or it will not run. Also the correct sound file must be called in each spot, or the sampling will be off/ the code will not run properly.