Acoustic Analyzer and Acoustic Bandgaps in a Serial Loop Filter
Two weeks ago, I started on a new program called Acoustic Analyzer. The idea behind the program is pretty simple. I am both computer science major and physics major, and this program was written for a class that I got an incomplete in last semester. The class was Advanced Lab, and I didn’t make enough time for it in my schedule, but the professor was kind enough to give me the summer to finish up. I was going to do an optics experiment and do a write up for it, but after he and I got talking, I was drawn to the idea of doing an acoustics experiment. Many optics experiments can be done acoustically, basically all you do is change all your c’s (the speed of light) with the speed of sound, and magically it works. One of the draws of acoustics is that I have almost all the equipment I need sitting in my lap and somewhere between my years and under my hair. In other words, my computer has the hardware to generate source data and collect acoustic data and using my brain I can write the software to do the generation, recording and analysis. So that is just what I did.
Using 5 dollars of plastic tubing and 10 PVC T-couplings, I built a series of loops and attached a set of ear buds to each end of the series. (One set of ear buds gets to be a microphone.) This is approximately what the series of loops looks like:
—–O-O-O-O-O—–
This structure has interesting properties; in particular, it does not allow certain frequencies to travel through the tubing. My tubes do not allow 340Hz, 680Hz, 1020Hz, and so on.
Look at the attached picture. The top 3 graphs are the raw input, the recorded output through a normal tube, the recorded output through my loops. Below that is the transmission spectrum, notice that the transmission groops at multiples of 340Hz. The Input Spectrum is the frequency components of the recorded data through the normal tube, and the Output Spectrum is the frequency components of the recorded data through the serial loops.
I may release my program later under a BSD license.
–Stefan