Acoustic Research Tool (ART) v0.10
The ART command line tool provides a simple and quick interface for calculating the impedance of musical instruments.
The programme can receive input from the binary input stream and sends output to the binary output stream. Use the programme in pipes with other executables to provide input (a frequency range) and process output (impedance curves). Such executables can be found in the Toolbox for Analysis and Prototyping (TAP). The TAP framework is a collection of small programmes that can be used to create stimulus signals like frequency sweeps over a certain frequency range and process binary output.
The following command will simulate the input impedance of a straight tube of 100 cm length and 0.5 cm radius and send the frequency and magnitude columns of the resulting binary stream to the plot program. The programme will simulate the tube at equally spaced frequencies between 50 Hz and 1000 Hz with 5 Hz increment and won't read the input stream.
art -freq 50 1000 5 -cyl 100 0.5 | plot -sig 3 -xcol 1 -ycol 2 -nam ImpMag -xu [Hz] -yu [acOhm] -tit "Tube 1m"
To do the same and see a numerical table with three columns (f, mag, arg) instead of plotting the binary stream, type:
art -freq 50 1000 5 -cyl 100 0.5 | bin2flo -columns 3 -nocount
To do the same but calculate resonant frequencies and magnitudes instead of generating a binary plot stream:
art -freq 50 1000 5 1 -cyl 100 0.5
To simulate a complete trumpet described in an instrument file, type:
art -freq 50 1000 5 -list trumpet.ins | plot -sig 3 -xcol 1 -ycol 2 -nam ImpMag -xu Hz -yu Ohm -tit "Trumpet"
The programme defines its instruments in a top-down, object-oriented approach. The .ins file-format likewise represents instruments in this manner. An instrument consists of a list of elements describing its geometry, each of which has parameters specifying the exact dimensions.
T...temperature in degree centigrade (default is 21 C)
L...loss factor (default is 1)
H...air humidity in percent
CO2...CO2 content of air in ppm
The unit of length is cm.
A .ins file is a list of element types followed by relevant parameters separated by commas. Whitespace is permitted, but parameters must be on the same line as the element type. Any lines starting with a semi-colon ; are ignored as comments. Comments may not be placed on the same line as commands. Lines may not begin (or consist solely of) whitespace. The first non-commented line of the file defines the name of the instrument.
Test Instrument ; - this is a comment 1, 10.0, 1.5 ; ^ this is a cylinder, length 10cm, radius 1.5cm ; 2, 20.0, 1.5, 2.0 ; ^ this is a cone, length 20cm, radius 1.5..2.0cm ; 4, filename.ins ; ^ this loads a list element and appends it.
"art -?"for a complete list of options
bin2flo -? plot -? stim -?