Recursive structure of MOS scales: Difference between revisions

Ganaram inukshuk (talk | contribs)
General algorithm: I recently implemented the code I had described here as actual code, only to find that it didn't work in all cases. I ended up rewriting the entire algorithm as described. (This also means the pseudocode section is now outdated and needs updating.)
Inthar (talk | contribs)
No edit summary
Line 323: Line 323:


==Tree of MOS patterns==
==Tree of MOS patterns==
MOS patterns have parents and children. If 1L 1s is the root of the tree, with any generator between 0\1 (for paucitonic 1L 1s) and 1\2 (for equalized 1L 1s) Every node aL bs has two children, aL (a+b)s and (a+b)L as (these MOS patterns are [[sister]] MOS patterns; they are called such because they have the same parent). The generator range of aL bs splits at the mediant of the endpoints of the parent interval (which is the generator size for [[MOS step ratio spectrum|basic]] aL bs), giving the generator ranges of the two child patterns.
MOS patterns have parents and children. If 1L 1s is the root of the tree, with any generator between 0\1 (for collapsed 1L 1s) and 1\2 (for equalized 1L 1s) Every node aL bs has two children, aL (a+b)s and (a+b)L as (these MOS patterns are [[sister]] MOS patterns; they are called such because they have the same parent). The generator range of aL bs splits at the mediant of the endpoints of the parent interval (which is the generator size for [[MOS step ratio spectrum|basic]] aL bs), giving the generator ranges of the two child patterns.


The tree of MOS patterns starts with:
The tree of MOS patterns starts with: