back to list

Sethares algorithm

🔗Paul H. Erlich <PERLICH@ACADIAN-ASSET.COM>

10/2/2000 11:14:55 AM

Ed Borasky wrote,

>What
>troubled me is that when I tried descending amplitudes (1, 1/2, 1/3, 1/4,
>1/5, 1/6) I got a dissonance curve with essentially only one minimum at the
>fifth. If I can hard-code all the amplitudes to 1 it will make my code a
>*lot* simpler.

Hi Ed.

Bill e-mailed me off-list to tell me that the "amplitudes" are in dB and not
really amplitudes at all. The conversion from amplitude to dB is dB =
10*log(amp)/log(10) + c, where c is a level-setting constant.

Now there's something about the results that worries me . . . for example,
if I run the program for a triangle wave (where the "amplitude" of the
harmonics decreases at 6 dB/octave) with a certain fundamental dB and then
for a square wave (where the "amplitude" of the harmonics decreases at 3
dB/octave) with half the fundamental dB, I get identical curves, other than
scaling. However, if I use a fixed waveform and simply adjust the volume up
or down (by adding a constant to all the dBs), I get very different curves.
Is that the way it's supposed to work, Bill?