3 ms·
Main> majscale [(1,1),(9,8),(5,4),(4,3),(3,2),(5,3),(15,8),(2,1)] Main> map (\(x,y) -> (432.0 * (fromIntegral x)) / (fromIntegral y)) majscale [432.0,486.0,5
by elihu 10y ago
Main> majscale
[(1,1),(9,8),(5,4),(4,3),(3,2),(5,3),(15,8),(2,1)]
Main> map (\(x,y) -> (432.0 * (fromIntegral x)) / (fromIntegral y)) majscale
[432.0,486.0,540.0,576.0,648.0,720.0,810.0,864.0]
That's pretty cool. The whole major scale comes out as whole numbers in just intonation. (In 12-tone equal temperament it doesn't, because 12TET uses the 12th root of 2 as a uniform division of the octave.) This looks like your explanation isn't just a neat trick, it's likely to be the reason why 432hz was proposed as a standard in the first place.
Main> let scale = [(1,1),(16,15),(10,9),(9,8),(6,5),(5,4),(4,3),(45,32),(3,2),(8,5),(5,3),(15,8),(9,5),(15,8),(2,1)]
Main> map (\(x,y) -> (432.0 * (fromIntegral x)) / (fromIntegral y)) scale
[432.0,460.8,480.0,486.0,518.4,540.0,576.0,607.5,648.0,691.2,720.0,810.0,777.6,810.0,864.0]
..and if we construct a more chromatic scale, not all of them come out quite as whole numbers, but we don't have any repeating decimals or anything like that (though we would if we included weirder intervals like 8/7). Nice.
edit: This works for a just major scale constructed starting from A. If you construct a scale from a different root note, it might not work out quite as cleanly.
- rspeer 10y agoI was thinking it's kind of sad that A minor is the scale that's more fundamental in musical notation -- going up to C with a just minor third gets you the not-so-pretty 518.4 because there's no factor of 5 to divide by. But really, the moment you decide thirds and fifths both matter, and you want to build them on more than one note, you have to either continuously re-tune or give up on JI and worry about temperament instead. The numbers work great in a Pythagorean tuning, where only fifths matter: that tuning gets you both A=432 and C=512 (middle C = 256).