User:Ganaram inukshuk/Code

From Xenharmonic Wiki
Jump to navigation Jump to search

This page is for xen-related programming projects that I've made but don't have an exact place on the wiki (yet).

Mosfinder (C++)

I wrote a crude C++ program for finding all of the mosses for a given edo.

Source code: https://gist.github.com/GanaramInukshuk/5b59543eb13cd5af74a340690e90441a

Here's sample output for 50edo.

--------------------------------------------------------
Single-Period Moment-of-Symmetry Scales
--------------------------------------------------------

Generators: 49\50 and 1\50
Number of scales with generator pair: 49
MOS:  1L  1s | Steps:  2 | Step ratio:  49:1 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  48:1 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  47:1 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  46:1 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  45:1 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:  44:1 | Scale pattern: Lssssss
MOS:  1L  7s | Steps:  8 | Step ratio:  43:1 | Scale pattern: Lsssssss
MOS:  1L  8s | Steps:  9 | Step ratio:  42:1 | Scale pattern: Lssssssss
MOS:  1L  9s | Steps: 10 | Step ratio:  41:1 | Scale pattern: Lsssssssss
MOS:  1L 10s | Steps: 11 | Step ratio:  40:1 | Scale pattern: Lssssssssss
MOS:  1L 11s | Steps: 12 | Step ratio:  39:1 | Scale pattern: Lsssssssssss
MOS:  1L 12s | Steps: 13 | Step ratio:  38:1 | Scale pattern: Lssssssssssss
MOS:  1L 13s | Steps: 14 | Step ratio:  37:1 | Scale pattern: Lsssssssssssss
MOS:  1L 14s | Steps: 15 | Step ratio:  36:1 | Scale pattern: Lssssssssssssss
MOS:  1L 15s | Steps: 16 | Step ratio:  35:1 | Scale pattern: Lsssssssssssssss
MOS:  1L 16s | Steps: 17 | Step ratio:  34:1 | Scale pattern: Lssssssssssssssss
MOS:  1L 17s | Steps: 18 | Step ratio:  33:1 | Scale pattern: Lsssssssssssssssss
MOS:  1L 18s | Steps: 19 | Step ratio:  32:1 | Scale pattern: Lssssssssssssssssss
MOS:  1L 19s | Steps: 20 | Step ratio:  31:1 | Scale pattern: Lsssssssssssssssssss
MOS:  1L 20s | Steps: 21 | Step ratio:  30:1 | Scale pattern: Lssssssssssssssssssss
MOS:  1L 21s | Steps: 22 | Step ratio:  29:1 | Scale pattern: Lsssssssssssssssssssss
MOS:  1L 22s | Steps: 23 | Step ratio:  28:1 | Scale pattern: Lssssssssssssssssssssss
MOS:  1L 23s | Steps: 24 | Step ratio:  27:1 | Scale pattern: Lsssssssssssssssssssssss
MOS:  1L 24s | Steps: 25 | Step ratio:  26:1 | Scale pattern: Lssssssssssssssssssssssss
MOS:  1L 25s | Steps: 26 | Step ratio:  25:1 | Scale pattern: Lsssssssssssssssssssssssss
MOS:  1L 26s | Steps: 27 | Step ratio:  24:1 | Scale pattern: Lssssssssssssssssssssssssss
MOS:  1L 27s | Steps: 28 | Step ratio:  23:1 | Scale pattern: Lsssssssssssssssssssssssssss
MOS:  1L 28s | Steps: 29 | Step ratio:  22:1 | Scale pattern: Lssssssssssssssssssssssssssss
MOS:  1L 29s | Steps: 30 | Step ratio:  21:1 | Scale pattern: Lsssssssssssssssssssssssssssss
MOS:  1L 30s | Steps: 31 | Step ratio:  20:1 | Scale pattern: Lssssssssssssssssssssssssssssss
MOS:  1L 31s | Steps: 32 | Step ratio:  19:1 | Scale pattern: Lsssssssssssssssssssssssssssssss
MOS:  1L 32s | Steps: 33 | Step ratio:  18:1 | Scale pattern: Lssssssssssssssssssssssssssssssss
MOS:  1L 33s | Steps: 34 | Step ratio:  17:1 | Scale pattern: Lsssssssssssssssssssssssssssssssss
MOS:  1L 34s | Steps: 35 | Step ratio:  16:1 | Scale pattern: Lssssssssssssssssssssssssssssssssss
MOS:  1L 35s | Steps: 36 | Step ratio:  15:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssss
MOS:  1L 36s | Steps: 37 | Step ratio:  14:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssss
MOS:  1L 37s | Steps: 38 | Step ratio:  13:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssssss
MOS:  1L 38s | Steps: 39 | Step ratio:  12:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssssss
MOS:  1L 39s | Steps: 40 | Step ratio:  11:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssssssss
MOS:  1L 40s | Steps: 41 | Step ratio:  10:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssssssss
MOS:  1L 41s | Steps: 42 | Step ratio:   9:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssssssssss
MOS:  1L 42s | Steps: 43 | Step ratio:   8:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssssssssss
MOS:  1L 43s | Steps: 44 | Step ratio:   7:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssssssssssss
MOS:  1L 44s | Steps: 45 | Step ratio:   6:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssssssssssss
MOS:  1L 45s | Steps: 46 | Step ratio:   5:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssssssssssssss
MOS:  1L 46s | Steps: 47 | Step ratio:   4:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssssssssssssss
MOS:  1L 47s | Steps: 48 | Step ratio:   3:1 | Scale pattern: Lsssssssssssssssssssssssssssssssssssssssssssssss
MOS:  1L 48s | Steps: 49 | Step ratio:   2:1 | Scale pattern: Lssssssssssssssssssssssssssssssssssssssssssssssss
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 48\50 and 2\50
Number of scales with generator pair: 24
MOS:  1L  1s | Steps:  2 | Step ratio:  48:2 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  46:2 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  44:2 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  42:2 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  40:2 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:  38:2 | Scale pattern: Lssssss
MOS:  1L  7s | Steps:  8 | Step ratio:  36:2 | Scale pattern: Lsssssss
MOS:  1L  8s | Steps:  9 | Step ratio:  34:2 | Scale pattern: Lssssssss
MOS:  1L  9s | Steps: 10 | Step ratio:  32:2 | Scale pattern: Lsssssssss
MOS:  1L 10s | Steps: 11 | Step ratio:  30:2 | Scale pattern: Lssssssssss
MOS:  1L 11s | Steps: 12 | Step ratio:  28:2 | Scale pattern: Lsssssssssss
MOS:  1L 12s | Steps: 13 | Step ratio:  26:2 | Scale pattern: Lssssssssssss
MOS:  1L 13s | Steps: 14 | Step ratio:  24:2 | Scale pattern: Lsssssssssssss
MOS:  1L 14s | Steps: 15 | Step ratio:  22:2 | Scale pattern: Lssssssssssssss
MOS:  1L 15s | Steps: 16 | Step ratio:  20:2 | Scale pattern: Lsssssssssssssss
MOS:  1L 16s | Steps: 17 | Step ratio:  18:2 | Scale pattern: Lssssssssssssssss
MOS:  1L 17s | Steps: 18 | Step ratio:  16:2 | Scale pattern: Lsssssssssssssssss
MOS:  1L 18s | Steps: 19 | Step ratio:  14:2 | Scale pattern: Lssssssssssssssssss
MOS:  1L 19s | Steps: 20 | Step ratio:  12:2 | Scale pattern: Lsssssssssssssssssss
MOS:  1L 20s | Steps: 21 | Step ratio:  10:2 | Scale pattern: Lssssssssssssssssssss
MOS:  1L 21s | Steps: 22 | Step ratio:   8:2 | Scale pattern: Lsssssssssssssssssssss
MOS:  1L 22s | Steps: 23 | Step ratio:   6:2 | Scale pattern: Lssssssssssssssssssssss
MOS:  1L 23s | Steps: 24 | Step ratio:   4:2 | Scale pattern: Lsssssssssssssssssssssss
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 47\50 and 3\50
Number of scales with generator pair: 18
MOS:  1L  1s | Steps:  2 | Step ratio:  47:3 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  44:3 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  41:3 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  38:3 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  35:3 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:  32:3 | Scale pattern: Lssssss
MOS:  1L  7s | Steps:  8 | Step ratio:  29:3 | Scale pattern: Lsssssss
MOS:  1L  8s | Steps:  9 | Step ratio:  26:3 | Scale pattern: Lssssssss
MOS:  1L  9s | Steps: 10 | Step ratio:  23:3 | Scale pattern: Lsssssssss
MOS:  1L 10s | Steps: 11 | Step ratio:  20:3 | Scale pattern: Lssssssssss
MOS:  1L 11s | Steps: 12 | Step ratio:  17:3 | Scale pattern: Lsssssssssss
MOS:  1L 12s | Steps: 13 | Step ratio:  14:3 | Scale pattern: Lssssssssssss
MOS:  1L 13s | Steps: 14 | Step ratio:  11:3 | Scale pattern: Lsssssssssssss
MOS:  1L 14s | Steps: 15 | Step ratio:   8:3 | Scale pattern: Lssssssssssssss
MOS:  1L 15s | Steps: 16 | Step ratio:   5:3 | Scale pattern: Lsssssssssssssss
MOS: 16L  1s | Steps: 17 | Step ratio:   3:2 | Scale pattern: sLLLLLLLLLLLLLLLL
MOS: 17L 16s | Steps: 33 | Step ratio:   2:1 | Scale pattern: LLsLsLsLsLsLsLsLsLsLsLsLsLsLsLsLs
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 46\50 and 4\50
Number of scales with generator pair: 13
MOS:  1L  1s | Steps:  2 | Step ratio:  46:4 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  42:4 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  38:4 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  34:4 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  30:4 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:  26:4 | Scale pattern: Lssssss
MOS:  1L  7s | Steps:  8 | Step ratio:  22:4 | Scale pattern: Lsssssss
MOS:  1L  8s | Steps:  9 | Step ratio:  18:4 | Scale pattern: Lssssssss
MOS:  1L  9s | Steps: 10 | Step ratio:  14:4 | Scale pattern: Lsssssssss
MOS:  1L 10s | Steps: 11 | Step ratio:  10:4 | Scale pattern: Lssssssssss
MOS:  1L 11s | Steps: 12 | Step ratio:   6:4 | Scale pattern: Lsssssssssss
MOS: 12L  1s | Steps: 13 | Step ratio:   4:2 | Scale pattern: sLLLLLLLLLLLL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 45\50 and 5\50
Number of scales with generator pair: 9
MOS:  1L  1s | Steps:  2 | Step ratio:  45:5 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  40:5 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  35:5 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  30:5 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  25:5 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:  20:5 | Scale pattern: Lssssss
MOS:  1L  7s | Steps:  8 | Step ratio:  15:5 | Scale pattern: Lsssssss
MOS:  1L  8s | Steps:  9 | Step ratio:  10:5 | Scale pattern: Lssssssss
MOS:    10ed | Steps: 10 | Step ratio:   5:5 | Scale pattern: uuuuuuuuuu

Generators: 44\50 and 6\50
Number of scales with generator pair: 10
MOS:  1L  1s | Steps:  2 | Step ratio:  44:6 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  38:6 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  32:6 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  26:6 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  20:6 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:  14:6 | Scale pattern: Lssssss
MOS:  1L  7s | Steps:  8 | Step ratio:   8:6 | Scale pattern: Lsssssss
MOS:  8L  1s | Steps:  9 | Step ratio:   6:2 | Scale pattern: sLLLLLLLL
MOS:  8L  9s | Steps: 17 | Step ratio:   4:2 | Scale pattern: ssLsLsLsLsLsLsLsL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 43\50 and 7\50
Number of scales with generator pair: 13
MOS:  1L  1s | Steps:  2 | Step ratio:  43:7 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  36:7 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  29:7 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  22:7 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  15:7 | Scale pattern: Lsssss
MOS:  1L  6s | Steps:  7 | Step ratio:   8:7 | Scale pattern: Lssssss
MOS:  7L  1s | Steps:  8 | Step ratio:   7:1 | Scale pattern: sLLLLLLL
MOS:  7L  8s | Steps: 15 | Step ratio:   6:1 | Scale pattern: ssLsLsLsLsLsLsL
MOS:  7L 15s | Steps: 22 | Step ratio:   5:1 | Scale pattern: sssLssLssLssLssLssLssL
MOS:  7L 22s | Steps: 29 | Step ratio:   4:1 | Scale pattern: ssssLsssLsssLsssLsssLsssLsssL
MOS:  7L 29s | Steps: 36 | Step ratio:   3:1 | Scale pattern: sssssLssssLssssLssssLssssLssssLssssL
MOS:  7L 36s | Steps: 43 | Step ratio:   2:1 | Scale pattern: ssssssLsssssLsssssLsssssLsssssLsssssLsssssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 42\50 and 8\50
Number of scales with generator pair: 9
MOS:  1L  1s | Steps:  2 | Step ratio:  42:8 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  34:8 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  26:8 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  18:8 | Scale pattern: Lssss
MOS:  1L  5s | Steps:  6 | Step ratio:  10:8 | Scale pattern: Lsssss
MOS:  6L  1s | Steps:  7 | Step ratio:   8:2 | Scale pattern: sLLLLLL
MOS:  6L  7s | Steps: 13 | Step ratio:   6:2 | Scale pattern: ssLsLsLsLsLsL
MOS:  6L 13s | Steps: 19 | Step ratio:   4:2 | Scale pattern: sssLssLssLssLssLssL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 41\50 and 9\50
Number of scales with generator pair: 10
MOS:  1L  1s | Steps:  2 | Step ratio:  41:9 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio:  32:9 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio:  23:9 | Scale pattern: Lsss
MOS:  1L  4s | Steps:  5 | Step ratio:  14:9 | Scale pattern: Lssss
MOS:  5L  1s | Steps:  6 | Step ratio:   9:5 | Scale pattern: sLLLLL
MOS:  6L  5s | Steps: 11 | Step ratio:   5:4 | Scale pattern: LLsLsLsLsLs
MOS: 11L  6s | Steps: 17 | Step ratio:   4:1 | Scale pattern: sLsLLsLLsLLsLLsLL
MOS: 11L 17s | Steps: 28 | Step ratio:   3:1 | Scale pattern: ssLssLsLssLsLssLsLssLsLssLsL
MOS: 11L 28s | Steps: 39 | Step ratio:   2:1 | Scale pattern: sssLsssLssLsssLssLsssLssLsssLssLsssLssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 40\50 and 10\50
Number of scales with generator pair: 4
MOS:  1L  1s | Steps:  2 | Step ratio: 40:10 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 30:10 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio: 20:10 | Scale pattern: Lsss
MOS:     5ed | Steps:  5 | Step ratio: 10:10 | Scale pattern: uuuuu

Generators: 39\50 and 11\50
Number of scales with generator pair: 10
MOS:  1L  1s | Steps:  2 | Step ratio: 39:11 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 28:11 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio: 17:11 | Scale pattern: Lsss
MOS:  4L  1s | Steps:  5 | Step ratio:  11:6 | Scale pattern: sLLLL
MOS:  5L  4s | Steps:  9 | Step ratio:   6:5 | Scale pattern: LLsLsLsLs
MOS:  9L  5s | Steps: 14 | Step ratio:   5:1 | Scale pattern: sLsLLsLLsLLsLL
MOS:  9L 14s | Steps: 23 | Step ratio:   4:1 | Scale pattern: ssLssLsLssLsLssLsLssLsL
MOS:  9L 23s | Steps: 32 | Step ratio:   3:1 | Scale pattern: sssLsssLssLsssLssLsssLssLsssLssL
MOS:  9L 32s | Steps: 41 | Step ratio:   2:1 | Scale pattern: ssssLssssLsssLssssLsssLssssLsssLssssLsssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 38\50 and 12\50
Number of scales with generator pair: 9
MOS:  1L  1s | Steps:  2 | Step ratio: 38:12 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 26:12 | Scale pattern: Lss
MOS:  1L  3s | Steps:  4 | Step ratio: 14:12 | Scale pattern: Lsss
MOS:  4L  1s | Steps:  5 | Step ratio:  12:2 | Scale pattern: sLLLL
MOS:  4L  5s | Steps:  9 | Step ratio:  10:2 | Scale pattern: ssLsLsLsL
MOS:  4L  9s | Steps: 13 | Step ratio:   8:2 | Scale pattern: sssLssLssLssL
MOS:  4L 13s | Steps: 17 | Step ratio:   6:2 | Scale pattern: ssssLsssLsssLsssL
MOS:  4L 17s | Steps: 21 | Step ratio:   4:2 | Scale pattern: sssssLssssLssssLssssL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 37\50 and 13\50
Number of scales with generator pair: 10
MOS:  1L  1s | Steps:  2 | Step ratio: 37:13 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 24:13 | Scale pattern: Lss
MOS:  3L  1s | Steps:  4 | Step ratio: 13:11 | Scale pattern: sLLL
MOS:  4L  3s | Steps:  7 | Step ratio:  11:2 | Scale pattern: LLsLsLs
MOS:  4L  7s | Steps: 11 | Step ratio:   9:2 | Scale pattern: LsLssLssLss
MOS:  4L 11s | Steps: 15 | Step ratio:   7:2 | Scale pattern: LssLsssLsssLsss
MOS:  4L 15s | Steps: 19 | Step ratio:   5:2 | Scale pattern: LsssLssssLssssLssss
MOS:  4L 19s | Steps: 23 | Step ratio:   3:2 | Scale pattern: LssssLsssssLsssssLsssss
MOS: 23L  4s | Steps: 27 | Step ratio:   2:1 | Scale pattern: sLLLLLsLLLLLLsLLLLLLsLLLLLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 36\50 and 14\50
Number of scales with generator pair: 7
MOS:  1L  1s | Steps:  2 | Step ratio: 36:14 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 22:14 | Scale pattern: Lss
MOS:  3L  1s | Steps:  4 | Step ratio:  14:8 | Scale pattern: sLLL
MOS:  4L  3s | Steps:  7 | Step ratio:   8:6 | Scale pattern: LLsLsLs
MOS:  7L  4s | Steps: 11 | Step ratio:   6:2 | Scale pattern: sLsLLsLLsLL
MOS:  7L 11s | Steps: 18 | Step ratio:   4:2 | Scale pattern: ssLssLsLssLsLssLsL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 35\50 and 15\50
Number of scales with generator pair: 5
MOS:  1L  1s | Steps:  2 | Step ratio: 35:15 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 20:15 | Scale pattern: Lss
MOS:  3L  1s | Steps:  4 | Step ratio:  15:5 | Scale pattern: sLLL
MOS:  3L  4s | Steps:  7 | Step ratio:  10:5 | Scale pattern: ssLsLsL
MOS:    10ed | Steps: 10 | Step ratio:   5:5 | Scale pattern: uuuuuuuuuu

Generators: 34\50 and 16\50
Number of scales with generator pair: 10
MOS:  1L  1s | Steps:  2 | Step ratio: 34:16 | Scale pattern: Ls
MOS:  1L  2s | Steps:  3 | Step ratio: 18:16 | Scale pattern: Lss
MOS:  3L  1s | Steps:  4 | Step ratio:  16:2 | Scale pattern: sLLL
MOS:  3L  4s | Steps:  7 | Step ratio:  14:2 | Scale pattern: ssLsLsL
MOS:  3L  7s | Steps: 10 | Step ratio:  12:2 | Scale pattern: sssLssLssL
MOS:  3L 10s | Steps: 13 | Step ratio:  10:2 | Scale pattern: ssssLsssLsssL
MOS:  3L 13s | Steps: 16 | Step ratio:   8:2 | Scale pattern: sssssLssssLssssL
MOS:  3L 16s | Steps: 19 | Step ratio:   6:2 | Scale pattern: ssssssLsssssLsssssL
MOS:  3L 19s | Steps: 22 | Step ratio:   4:2 | Scale pattern: sssssssLssssssLssssssL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 33\50 and 17\50
Number of scales with generator pair: 18
MOS:  1L  1s | Steps:  2 | Step ratio: 33:17 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio: 17:16 | Scale pattern: sLL
MOS:  3L  2s | Steps:  5 | Step ratio:  16:1 | Scale pattern: LLsLs
MOS:  3L  5s | Steps:  8 | Step ratio:  15:1 | Scale pattern: LsLssLss
MOS:  3L  8s | Steps: 11 | Step ratio:  14:1 | Scale pattern: LssLsssLsss
MOS:  3L 11s | Steps: 14 | Step ratio:  13:1 | Scale pattern: LsssLssssLssss
MOS:  3L 14s | Steps: 17 | Step ratio:  12:1 | Scale pattern: LssssLsssssLsssss
MOS:  3L 17s | Steps: 20 | Step ratio:  11:1 | Scale pattern: LsssssLssssssLssssss
MOS:  3L 20s | Steps: 23 | Step ratio:  10:1 | Scale pattern: LssssssLsssssssLsssssss
MOS:  3L 23s | Steps: 26 | Step ratio:   9:1 | Scale pattern: LsssssssLssssssssLssssssss
MOS:  3L 26s | Steps: 29 | Step ratio:   8:1 | Scale pattern: LssssssssLsssssssssLsssssssss
MOS:  3L 29s | Steps: 32 | Step ratio:   7:1 | Scale pattern: LsssssssssLssssssssssLssssssssss
MOS:  3L 32s | Steps: 35 | Step ratio:   6:1 | Scale pattern: LssssssssssLsssssssssssLsssssssssss
MOS:  3L 35s | Steps: 38 | Step ratio:   5:1 | Scale pattern: LsssssssssssLssssssssssssLssssssssssss
MOS:  3L 38s | Steps: 41 | Step ratio:   4:1 | Scale pattern: LssssssssssssLsssssssssssssLsssssssssssss
MOS:  3L 41s | Steps: 44 | Step ratio:   3:1 | Scale pattern: LsssssssssssssLssssssssssssssLssssssssssssss
MOS:  3L 44s | Steps: 47 | Step ratio:   2:1 | Scale pattern: LssssssssssssssLsssssssssssssssLsssssssssssssss
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 32\50 and 18\50
Number of scales with generator pair: 7
MOS:  1L  1s | Steps:  2 | Step ratio: 32:18 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio: 18:14 | Scale pattern: sLL
MOS:  3L  2s | Steps:  5 | Step ratio:  14:4 | Scale pattern: LLsLs
MOS:  3L  5s | Steps:  8 | Step ratio:  10:4 | Scale pattern: LsLssLss
MOS:  3L  8s | Steps: 11 | Step ratio:   6:4 | Scale pattern: LssLsssLsss
MOS: 11L  3s | Steps: 14 | Step ratio:   4:2 | Scale pattern: sLLLsLLLLsLLLL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 31\50 and 19\50
Number of scales with generator pair: 8
MOS:  1L  1s | Steps:  2 | Step ratio: 31:19 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio: 19:12 | Scale pattern: sLL
MOS:  3L  2s | Steps:  5 | Step ratio:  12:7 | Scale pattern: LLsLs
MOS:  5L  3s | Steps:  8 | Step ratio:   7:5 | Scale pattern: sLsLLsLL
MOS:  8L  5s | Steps: 13 | Step ratio:   5:2 | Scale pattern: LLsLLsLsLLsLs
MOS:  8L 13s | Steps: 21 | Step ratio:   3:2 | Scale pattern: LsLssLsLssLssLsLssLss
MOS: 21L  8s | Steps: 29 | Step ratio:   2:1 | Scale pattern: sLLsLLLsLLsLLLsLLLsLLsLLLsLLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 30\50 and 20\50
Number of scales with generator pair: 3
MOS:  1L  1s | Steps:  2 | Step ratio: 30:20 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio: 20:10 | Scale pattern: sLL
MOS:     5ed | Steps:  5 | Step ratio: 10:10 | Scale pattern: uuuuu

Generators: 29\50 and 21\50
Number of scales with generator pair: 8
MOS:  1L  1s | Steps:  2 | Step ratio: 29:21 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio:  21:8 | Scale pattern: sLL
MOS:  2L  3s | Steps:  5 | Step ratio:  13:8 | Scale pattern: ssLsL
MOS:  5L  2s | Steps:  7 | Step ratio:   8:5 | Scale pattern: LLLsLLs
MOS:  7L  5s | Steps: 12 | Step ratio:   5:3 | Scale pattern: sLsLsLLsLsLL
MOS: 12L  7s | Steps: 19 | Step ratio:   3:2 | Scale pattern: LLsLLsLLsLsLLsLLsLs
MOS: 19L 12s | Steps: 31 | Step ratio:   2:1 | Scale pattern: sLsLLsLsLLsLsLLsLLsLsLLsLsLLsLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 28\50 and 22\50
Number of scales with generator pair: 7
MOS:  1L  1s | Steps:  2 | Step ratio: 28:22 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio:  22:6 | Scale pattern: sLL
MOS:  2L  3s | Steps:  5 | Step ratio:  16:6 | Scale pattern: ssLsL
MOS:  2L  5s | Steps:  7 | Step ratio:  10:6 | Scale pattern: sssLssL
MOS:  7L  2s | Steps:  9 | Step ratio:   6:4 | Scale pattern: LLLLsLLLs
MOS:  9L  7s | Steps: 16 | Step ratio:   4:2 | Scale pattern: sLsLsLsLLsLsLsLL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 27\50 and 23\50
Number of scales with generator pair: 10
MOS:  1L  1s | Steps:  2 | Step ratio: 27:23 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio:  23:4 | Scale pattern: sLL
MOS:  2L  3s | Steps:  5 | Step ratio:  19:4 | Scale pattern: ssLsL
MOS:  2L  5s | Steps:  7 | Step ratio:  15:4 | Scale pattern: sssLssL
MOS:  2L  7s | Steps:  9 | Step ratio:  11:4 | Scale pattern: ssssLsssL
MOS:  2L  9s | Steps: 11 | Step ratio:   7:4 | Scale pattern: sssssLssssL
MOS: 11L  2s | Steps: 13 | Step ratio:   4:3 | Scale pattern: LLLLLLsLLLLLs
MOS: 13L 11s | Steps: 24 | Step ratio:   3:1 | Scale pattern: sLsLsLsLsLsLLsLsLsLsLsLL
MOS: 13L 24s | Steps: 37 | Step ratio:   2:1 | Scale pattern: ssLssLssLssLssLssLsLssLssLssLssLssLsL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 26\50 and 24\50
Number of scales with generator pair: 13
MOS:  1L  1s | Steps:  2 | Step ratio: 26:24 | Scale pattern: Ls
MOS:  2L  1s | Steps:  3 | Step ratio:  24:2 | Scale pattern: sLL
MOS:  2L  3s | Steps:  5 | Step ratio:  22:2 | Scale pattern: ssLsL
MOS:  2L  5s | Steps:  7 | Step ratio:  20:2 | Scale pattern: sssLssL
MOS:  2L  7s | Steps:  9 | Step ratio:  18:2 | Scale pattern: ssssLsssL
MOS:  2L  9s | Steps: 11 | Step ratio:  16:2 | Scale pattern: sssssLssssL
MOS:  2L 11s | Steps: 13 | Step ratio:  14:2 | Scale pattern: ssssssLsssssL
MOS:  2L 13s | Steps: 15 | Step ratio:  12:2 | Scale pattern: sssssssLssssssL
MOS:  2L 15s | Steps: 17 | Step ratio:  10:2 | Scale pattern: ssssssssLsssssssL
MOS:  2L 17s | Steps: 19 | Step ratio:   8:2 | Scale pattern: sssssssssLssssssssL
MOS:  2L 19s | Steps: 21 | Step ratio:   6:2 | Scale pattern: ssssssssssLsssssssssL
MOS:  2L 21s | Steps: 23 | Step ratio:   4:2 | Scale pattern: sssssssssssLssssssssssL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

--------------------------------------------------------
Multi-Period Moment-of-Symmetry Scales (period of 2)
--------------------------------------------------------

Generators: 13\50 and 12\50
Number of scales with generator pair: 13
MOS:  2L  2s | Steps:  4 | Step ratio: 13:12 | Scale pattern: LsLs
MOS:  4L  2s | Steps:  6 | Step ratio:  12:1 | Scale pattern: sLLsLL
MOS:  4L  6s | Steps: 10 | Step ratio:  11:1 | Scale pattern: ssLsLssLsL
MOS:  4L 10s | Steps: 14 | Step ratio:  10:1 | Scale pattern: sssLssLsssLssL
MOS:  4L 14s | Steps: 18 | Step ratio:   9:1 | Scale pattern: ssssLsssLssssLsssL
MOS:  4L 18s | Steps: 22 | Step ratio:   8:1 | Scale pattern: sssssLssssLsssssLssssL
MOS:  4L 22s | Steps: 26 | Step ratio:   7:1 | Scale pattern: ssssssLsssssLssssssLsssssL
MOS:  4L 26s | Steps: 30 | Step ratio:   6:1 | Scale pattern: sssssssLssssssLsssssssLssssssL
MOS:  4L 30s | Steps: 34 | Step ratio:   5:1 | Scale pattern: ssssssssLsssssssLssssssssLsssssssL
MOS:  4L 34s | Steps: 38 | Step ratio:   4:1 | Scale pattern: sssssssssLssssssssLsssssssssLssssssssL
MOS:  4L 38s | Steps: 42 | Step ratio:   3:1 | Scale pattern: ssssssssssLsssssssssLssssssssssLsssssssssL
MOS:  4L 42s | Steps: 46 | Step ratio:   2:1 | Scale pattern: sssssssssssLssssssssssLsssssssssssLssssssssssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 14\50 and 11\50
Number of scales with generator pair: 7
MOS:  2L  2s | Steps:  4 | Step ratio: 14:11 | Scale pattern: LsLs
MOS:  4L  2s | Steps:  6 | Step ratio:  11:3 | Scale pattern: sLLsLL
MOS:  4L  6s | Steps: 10 | Step ratio:   8:3 | Scale pattern: ssLsLssLsL
MOS:  4L 10s | Steps: 14 | Step ratio:   5:3 | Scale pattern: sssLssLsssLssL
MOS: 14L  4s | Steps: 18 | Step ratio:   3:2 | Scale pattern: LLLLsLLLsLLLLsLLLs
MOS: 18L 14s | Steps: 32 | Step ratio:   2:1 | Scale pattern: sLsLsLsLLsLsLsLLsLsLsLsLLsLsLsLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 15\50 and 10\50
Number of scales with generator pair: 3
MOS:  2L  2s | Steps:  4 | Step ratio: 15:10 | Scale pattern: LsLs
MOS:  4L  2s | Steps:  6 | Step ratio:  10:5 | Scale pattern: sLLsLL
MOS:    10ed | Steps: 10 | Step ratio:   5:5 | Scale pattern: uuuuuuuuuu

Generators: 16\50 and 9\50
Number of scales with generator pair: 7
MOS:  2L  2s | Steps:  4 | Step ratio:  16:9 | Scale pattern: LsLs
MOS:  4L  2s | Steps:  6 | Step ratio:   9:7 | Scale pattern: sLLsLL
MOS:  6L  4s | Steps: 10 | Step ratio:   7:2 | Scale pattern: LLsLsLLsLs
MOS:  6L 10s | Steps: 16 | Step ratio:   5:2 | Scale pattern: LsLssLssLsLssLss
MOS:  6L 16s | Steps: 22 | Step ratio:   3:2 | Scale pattern: LssLsssLsssLssLsssLsss
MOS: 22L  6s | Steps: 28 | Step ratio:   2:1 | Scale pattern: sLLLsLLLLsLLLLsLLLsLLLLsLLLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 17\50 and 8\50
Number of scales with generator pair: 10
MOS:  2L  2s | Steps:  4 | Step ratio:  17:8 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:   9:8 | Scale pattern: LssLss
MOS:  6L  2s | Steps:  8 | Step ratio:   8:1 | Scale pattern: sLLLsLLL
MOS:  6L  8s | Steps: 14 | Step ratio:   7:1 | Scale pattern: ssLsLsLssLsLsL
MOS:  6L 14s | Steps: 20 | Step ratio:   6:1 | Scale pattern: sssLssLssLsssLssLssL
MOS:  6L 20s | Steps: 26 | Step ratio:   5:1 | Scale pattern: ssssLsssLsssLssssLsssLsssL
MOS:  6L 26s | Steps: 32 | Step ratio:   4:1 | Scale pattern: sssssLssssLssssLsssssLssssLssssL
MOS:  6L 32s | Steps: 38 | Step ratio:   3:1 | Scale pattern: ssssssLsssssLsssssLssssssLsssssLsssssL
MOS:  6L 38s | Steps: 44 | Step ratio:   2:1 | Scale pattern: sssssssLssssssLssssssLsssssssLssssssLssssssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 18\50 and 7\50
Number of scales with generator pair: 7
MOS:  2L  2s | Steps:  4 | Step ratio:  18:7 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  11:7 | Scale pattern: LssLss
MOS:  6L  2s | Steps:  8 | Step ratio:   7:4 | Scale pattern: sLLLsLLL
MOS:  8L  6s | Steps: 14 | Step ratio:   4:3 | Scale pattern: LLsLsLsLLsLsLs
MOS: 14L  8s | Steps: 22 | Step ratio:   3:1 | Scale pattern: sLsLLsLLsLLsLsLLsLLsLL
MOS: 14L 22s | Steps: 36 | Step ratio:   2:1 | Scale pattern: ssLssLsLssLsLssLsLssLssLsLssLsLssLsL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 19\50 and 6\50
Number of scales with generator pair: 9
MOS:  2L  2s | Steps:  4 | Step ratio:  19:6 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  13:6 | Scale pattern: LssLss
MOS:  2L  6s | Steps:  8 | Step ratio:   7:6 | Scale pattern: LsssLsss
MOS:  8L  2s | Steps: 10 | Step ratio:   6:1 | Scale pattern: sLLLLsLLLL
MOS:  8L 10s | Steps: 18 | Step ratio:   5:1 | Scale pattern: ssLsLsLsLssLsLsLsL
MOS:  8L 18s | Steps: 26 | Step ratio:   4:1 | Scale pattern: sssLssLssLssLsssLssLssLssL
MOS:  8L 26s | Steps: 34 | Step ratio:   3:1 | Scale pattern: ssssLsssLsssLsssLssssLsssLsssLsssL
MOS:  8L 34s | Steps: 42 | Step ratio:   2:1 | Scale pattern: sssssLssssLssssLssssLsssssLssssLssssLssssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 20\50 and 5\50
Number of scales with generator pair: 4
MOS:  2L  2s | Steps:  4 | Step ratio:  20:5 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  15:5 | Scale pattern: LssLss
MOS:  2L  6s | Steps:  8 | Step ratio:  10:5 | Scale pattern: LsssLsss
MOS:    10ed | Steps: 10 | Step ratio:   5:5 | Scale pattern: uuuuuuuuuu

Generators: 21\50 and 4\50
Number of scales with generator pair: 9
MOS:  2L  2s | Steps:  4 | Step ratio:  21:4 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  17:4 | Scale pattern: LssLss
MOS:  2L  6s | Steps:  8 | Step ratio:  13:4 | Scale pattern: LsssLsss
MOS:  2L  8s | Steps: 10 | Step ratio:   9:4 | Scale pattern: LssssLssss
MOS:  2L 10s | Steps: 12 | Step ratio:   5:4 | Scale pattern: LsssssLsssss
MOS: 12L  2s | Steps: 14 | Step ratio:   4:1 | Scale pattern: sLLLLLLsLLLLLL
MOS: 12L 14s | Steps: 26 | Step ratio:   3:1 | Scale pattern: ssLsLsLsLsLsLssLsLsLsLsLsL
MOS: 12L 26s | Steps: 38 | Step ratio:   2:1 | Scale pattern: sssLssLssLssLssLssLsssLssLssLssLssLssL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 22\50 and 3\50
Number of scales with generator pair: 10
MOS:  2L  2s | Steps:  4 | Step ratio:  22:3 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  19:3 | Scale pattern: LssLss
MOS:  2L  6s | Steps:  8 | Step ratio:  16:3 | Scale pattern: LsssLsss
MOS:  2L  8s | Steps: 10 | Step ratio:  13:3 | Scale pattern: LssssLssss
MOS:  2L 10s | Steps: 12 | Step ratio:  10:3 | Scale pattern: LsssssLsssss
MOS:  2L 12s | Steps: 14 | Step ratio:   7:3 | Scale pattern: LssssssLssssss
MOS:  2L 14s | Steps: 16 | Step ratio:   4:3 | Scale pattern: LsssssssLsssssss
MOS: 16L  2s | Steps: 18 | Step ratio:   3:1 | Scale pattern: sLLLLLLLLsLLLLLLLL
MOS: 16L 18s | Steps: 34 | Step ratio:   2:1 | Scale pattern: ssLsLsLsLsLsLsLsLssLsLsLsLsLsLsLsL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 23\50 and 2\50
Number of scales with generator pair: 13
MOS:  2L  2s | Steps:  4 | Step ratio:  23:2 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  21:2 | Scale pattern: LssLss
MOS:  2L  6s | Steps:  8 | Step ratio:  19:2 | Scale pattern: LsssLsss
MOS:  2L  8s | Steps: 10 | Step ratio:  17:2 | Scale pattern: LssssLssss
MOS:  2L 10s | Steps: 12 | Step ratio:  15:2 | Scale pattern: LsssssLsssss
MOS:  2L 12s | Steps: 14 | Step ratio:  13:2 | Scale pattern: LssssssLssssss
MOS:  2L 14s | Steps: 16 | Step ratio:  11:2 | Scale pattern: LsssssssLsssssss
MOS:  2L 16s | Steps: 18 | Step ratio:   9:2 | Scale pattern: LssssssssLssssssss
MOS:  2L 18s | Steps: 20 | Step ratio:   7:2 | Scale pattern: LsssssssssLsssssssss
MOS:  2L 20s | Steps: 22 | Step ratio:   5:2 | Scale pattern: LssssssssssLssssssssss
MOS:  2L 22s | Steps: 24 | Step ratio:   3:2 | Scale pattern: LsssssssssssLsssssssssss
MOS: 24L  2s | Steps: 26 | Step ratio:   2:1 | Scale pattern: sLLLLLLLLLLLLsLLLLLLLLLLLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 24\50 and 1\50
Number of scales with generator pair: 24
MOS:  2L  2s | Steps:  4 | Step ratio:  24:1 | Scale pattern: LsLs
MOS:  2L  4s | Steps:  6 | Step ratio:  23:1 | Scale pattern: LssLss
MOS:  2L  6s | Steps:  8 | Step ratio:  22:1 | Scale pattern: LsssLsss
MOS:  2L  8s | Steps: 10 | Step ratio:  21:1 | Scale pattern: LssssLssss
MOS:  2L 10s | Steps: 12 | Step ratio:  20:1 | Scale pattern: LsssssLsssss
MOS:  2L 12s | Steps: 14 | Step ratio:  19:1 | Scale pattern: LssssssLssssss
MOS:  2L 14s | Steps: 16 | Step ratio:  18:1 | Scale pattern: LsssssssLsssssss
MOS:  2L 16s | Steps: 18 | Step ratio:  17:1 | Scale pattern: LssssssssLssssssss
MOS:  2L 18s | Steps: 20 | Step ratio:  16:1 | Scale pattern: LsssssssssLsssssssss
MOS:  2L 20s | Steps: 22 | Step ratio:  15:1 | Scale pattern: LssssssssssLssssssssss
MOS:  2L 22s | Steps: 24 | Step ratio:  14:1 | Scale pattern: LsssssssssssLsssssssssss
MOS:  2L 24s | Steps: 26 | Step ratio:  13:1 | Scale pattern: LssssssssssssLssssssssssss
MOS:  2L 26s | Steps: 28 | Step ratio:  12:1 | Scale pattern: LsssssssssssssLsssssssssssss
MOS:  2L 28s | Steps: 30 | Step ratio:  11:1 | Scale pattern: LssssssssssssssLssssssssssssss
MOS:  2L 30s | Steps: 32 | Step ratio:  10:1 | Scale pattern: LsssssssssssssssLsssssssssssssss
MOS:  2L 32s | Steps: 34 | Step ratio:   9:1 | Scale pattern: LssssssssssssssssLssssssssssssssss
MOS:  2L 34s | Steps: 36 | Step ratio:   8:1 | Scale pattern: LsssssssssssssssssLsssssssssssssssss
MOS:  2L 36s | Steps: 38 | Step ratio:   7:1 | Scale pattern: LssssssssssssssssssLssssssssssssssssss
MOS:  2L 38s | Steps: 40 | Step ratio:   6:1 | Scale pattern: LsssssssssssssssssssLsssssssssssssssssss
MOS:  2L 40s | Steps: 42 | Step ratio:   5:1 | Scale pattern: LssssssssssssssssssssLssssssssssssssssssss
MOS:  2L 42s | Steps: 44 | Step ratio:   4:1 | Scale pattern: LsssssssssssssssssssssLsssssssssssssssssssss
MOS:  2L 44s | Steps: 46 | Step ratio:   3:1 | Scale pattern: LssssssssssssssssssssssLssssssssssssssssssssss
MOS:  2L 46s | Steps: 48 | Step ratio:   2:1 | Scale pattern: LsssssssssssssssssssssssLsssssssssssssssssssssss
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

--------------------------------------------------------
Multi-Period Moment-of-Symmetry Scales (period of 5)
--------------------------------------------------------

Generators: 5\50 and 5\50
Number of scales with generator pair: 1
MOS:    10ed | Steps: 10 | Step ratio:   5:5 | Scale pattern: uuuuuuuuuu

Generators: 6\50 and 4\50
Number of scales with generator pair: 3
MOS:  5L  5s | Steps: 10 | Step ratio:   6:4 | Scale pattern: LsLsLsLsLs
MOS: 10L  5s | Steps: 15 | Step ratio:   4:2 | Scale pattern: sLLsLLsLLsLLsLL
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 7\50 and 3\50
Number of scales with generator pair: 5
MOS:  5L  5s | Steps: 10 | Step ratio:   7:3 | Scale pattern: LsLsLsLsLs
MOS:  5L 10s | Steps: 15 | Step ratio:   4:3 | Scale pattern: LssLssLssLssLss
MOS: 15L  5s | Steps: 20 | Step ratio:   3:1 | Scale pattern: sLLLsLLLsLLLsLLLsLLL
MOS: 15L 20s | Steps: 35 | Step ratio:   2:1 | Scale pattern: ssLsLsLssLsLsLssLsLsLssLsLsLssLsLsL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 8\50 and 2\50
Number of scales with generator pair: 4
MOS:  5L  5s | Steps: 10 | Step ratio:   8:2 | Scale pattern: LsLsLsLsLs
MOS:  5L 10s | Steps: 15 | Step ratio:   6:2 | Scale pattern: LssLssLssLssLss
MOS:  5L 15s | Steps: 20 | Step ratio:   4:2 | Scale pattern: LsssLsssLsssLsssLsss
MOS:    25ed | Steps: 25 | Step ratio:   2:2 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 9\50 and 1\50
Number of scales with generator pair: 9
MOS:  5L  5s | Steps: 10 | Step ratio:   9:1 | Scale pattern: LsLsLsLsLs
MOS:  5L 10s | Steps: 15 | Step ratio:   8:1 | Scale pattern: LssLssLssLssLss
MOS:  5L 15s | Steps: 20 | Step ratio:   7:1 | Scale pattern: LsssLsssLsssLsssLsss
MOS:  5L 20s | Steps: 25 | Step ratio:   6:1 | Scale pattern: LssssLssssLssssLssssLssss
MOS:  5L 25s | Steps: 30 | Step ratio:   5:1 | Scale pattern: LsssssLsssssLsssssLsssssLsssss
MOS:  5L 30s | Steps: 35 | Step ratio:   4:1 | Scale pattern: LssssssLssssssLssssssLssssssLssssss
MOS:  5L 35s | Steps: 40 | Step ratio:   3:1 | Scale pattern: LsssssssLsssssssLsssssssLsssssssLsssssss
MOS:  5L 40s | Steps: 45 | Step ratio:   2:1 | Scale pattern: LssssssssLssssssssLssssssssLssssssssLssssssss
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

--------------------------------------------------------
Multi-Period Moment-of-Symmetry Scales (period of 10)
--------------------------------------------------------

Generators: 3\50 and 2\50
Number of scales with generator pair: 3
MOS: 10L 10s | Steps: 20 | Step ratio:   3:2 | Scale pattern: LsLsLsLsLsLsLsLsLsLs
MOS: 20L 10s | Steps: 30 | Step ratio:   2:1 | Scale pattern: sLLsLLsLLsLLsLLsLLsLLsLLsLLsLL
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Generators: 4\50 and 1\50
Number of scales with generator pair: 4
MOS: 10L 10s | Steps: 20 | Step ratio:   4:1 | Scale pattern: LsLsLsLsLsLsLsLsLsLs
MOS: 10L 20s | Steps: 30 | Step ratio:   3:1 | Scale pattern: LssLssLssLssLssLssLssLssLssLss
MOS: 10L 30s | Steps: 40 | Step ratio:   2:1 | Scale pattern: LsssLsssLsssLsssLsssLsssLsssLsssLsssLsss
MOS:    50ed | Steps: 50 | Step ratio:   1:1 | Scale pattern: uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Mosfinder (VBA)

Based on the C++ mosfinder and further experiments with copy-pasting tables from Excel and into the wiki editor, I ended up writing an Excel macro that's basically a port of the C++ mosfinder, with basic formatting for a table. The latest version has two versions of the same macro where one skips step visualization and lists the steps as a list of numbers. This version was created due to concerns of larger edos' step visualizations being harder to copy and paste.

Source code (older version): https://gist.github.com/GanaramInukshuk/f92db8c4d48484b51e389f79b0b7f18e

Source code (newer version): https://gist.github.com/GanaramInukshuk/e18439e300dba0bb59bd0211ffbf2932

Example Tables

The following table was auto-generated by the macro and copypasted into the wiki editor. Additional formatting was required (such as designating cells to be header cells).

Single-Period Scales for 16 Equal Divisions
Step Pattern General Information Temperament Information
Generator pair of 15\16 and 1\16 Mos Step Ratio TAMNAMS Name Scale
15 1 1L 1s 15:1
14 1 1 1L 2s 14:1
13 1 1 1 1L 3s 13:1
12 1 1 1 1 1L 4s 12:1
11 1 1 1 1 1 1L 5s 11:1
10 1 1 1 1 1 1 1L 6s 10:1
9 1 1 1 1 1 1 1 1L 7s 9:1
8 1 1 1 1 1 1 1 1 1L 8s 8:1
7 1 1 1 1 1 1 1 1 1 1L 9s 7:1
6 1 1 1 1 1 1 1 1 1 1 1L 10s 6:1
5 1 1 1 1 1 1 1 1 1 1 1 1L 11s 5:1
4 1 1 1 1 1 1 1 1 1 1 1 1 1L 12s 4:1
3 1 1 1 1 1 1 1 1 1 1 1 1 1 1L 13s 3:1
2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1L 14s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 14\16 and 2\16 Mos Step Ratio TAMNAMS Name Scale
14 2 1L 1s 14:2
12 2 2 1L 2s 12:2
10 2 2 2 1L 3s 10:2
8 2 2 2 2 1L 4s 8:2
6 2 2 2 2 2 1L 5s 6:2
4 2 2 2 2 2 2 1L 6s 4:2
2 2 2 2 2 2 2 2 8ed 2
Generator pair of 13\16 and 3\16 Mos Step Ratio TAMNAMS Name Scale
13 3 1L 1s 13:3
10 3 3 1L 2s 10:3
7 3 3 3 1L 3s 7:3
4 3 3 3 3 1L 4s 4:3
1 3 3 3 3 3 5L 1s 3:1 machinoid
1 1 2 1 2 1 2 1 2 1 2 5L 6s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 12\16 and 4\16 Mos Step Ratio TAMNAMS Name Scale
12 4 1L 1s 12:4
8 4 4 1L 2s 8:4
4 4 4 4 4ed 4
Generator pair of 11\16 and 5\16 Mos Step Ratio TAMNAMS Name Scale
11 5 1L 1s 11:5
6 5 5 1L 2s 6:5
1 5 5 5 3L 1s 5:1
1 1 4 1 4 1 4 3L 4s 4:1 mosh
1 1 1 3 1 1 3 1 1 3 3L 7s 3:1 sephiroid
1 1 1 1 2 1 1 1 2 1 1 1 2 3L 10s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 10\16 and 6\16 Mos Step Ratio TAMNAMS Name Scale
10 6 1L 1s 10:6
4 6 6 2L 1s 6:4
4 4 2 4 2 3L 2s 4:2 antipentic
2 2 2 2 2 2 2 2 8ed 2
Generator pair of 9\16 and 7\16 Mos Step Ratio TAMNAMS Name Scale
9 7 1L 1s 9:7
2 7 7 2L 1s 7:2
2 2 5 2 5 2L 3s 5:2 pentic
2 2 2 3 2 2 3 2L 5s 3:2 antidiatonic
2 2 2 2 1 2 2 2 1 7L 2s 2:1 superdiatonic
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 8\16 and 8\16 Mos Step Ratio TAMNAMS Name Scale
8 8 2ed 8
Multi-Period Scales (period = 2) for 16 Equal Divisions
Step Pattern General Information Temperament Information
Generator pair of 7\16 and 1\16 Mos Step Ratio TAMNAMS Name Scale
7 1 7 1 2L 2s 7:1
6 1 1 6 1 1 2L 4s 6:1 antilemon
5 1 1 1 5 1 1 1 2L 6s 5:1 antiechidnoid
4 1 1 1 1 4 1 1 1 1 2L 8s 4:1 antidimanic
3 1 1 1 1 1 3 1 1 1 1 1 2L 10s 3:1
2 1 1 1 1 1 1 2 1 1 1 1 1 1 2L 12s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 6\16 and 2\16 Mos Step Ratio TAMNAMS Name Scale
6 2 6 2 2L 2s 6:2
4 2 2 4 2 2 2L 4s 4:2 antilemon
2 2 2 2 2 2 2 2 8ed 2
Generator pair of 5\16 and 3\16 Mos Step Ratio TAMNAMS Name Scale
5 3 5 3 2L 2s 5:3
2 3 3 2 3 3 4L 2s 3:2 lemon
2 2 1 2 1 2 2 1 2 1 6L 4s 2:1 dipentic
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 4\16 and 4\16 Mos Step Ratio TAMNAMS Name Scale
4 4 4 4 4ed 4
Multi-Period Scales (period = 4) for 16 Equal Divisions
Step Pattern General Information Temperament Information
Generator pair of 3\16 and 1\16 Mos Step Ratio TAMNAMS Name Scale
3 1 3 1 3 1 3 1 4L 4s 3:1 tetrawood; diminished
2 1 1 2 1 1 2 1 1 2 1 1 4L 8s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1
Generator pair of 2\16 and 2\16 Mos Step Ratio TAMNAMS Name Scale
2 2 2 2 2 2 2 2 8ed 2
Multi-Period Scales (period = 8) for 16 Equal Divisions
Step Pattern General Information Temperament Information
Generator pair of 1\16 and 1\16 Mos Step Ratio TAMNAMS Name Scale
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 16ed 1

The following table was generated without step visualization. Again, this required additional formatting, mainly designating cells as header cells.

Single-Period Scales for 17 Equal Division of the Octave
Steps for Generators 16\17 and 1\17 Mos Step Ratio TAMNAMS Name Temperament
16 1 1L 1s 16:1
15 1 1 1L 2s 15:1
14 1 1 1 1L 3s 14:1
13 1 1 1 1 1L 4s 13:1
12 1 1 1 1 1 1L 5s 12:1
11 1 1 1 1 1 1 1L 6s 11:1
10 1 1 1 1 1 1 1 1L 7s 10:1
9 1 1 1 1 1 1 1 1 1L 8s 9:1
8 1 1 1 1 1 1 1 1 1 1L 9s 8:1
7 1 1 1 1 1 1 1 1 1 1 1L 10s 7:1
6 1 1 1 1 1 1 1 1 1 1 1 1L 11s 6:1
5 1 1 1 1 1 1 1 1 1 1 1 1 1L 12s 5:1
4 1 1 1 1 1 1 1 1 1 1 1 1 1 1L 13s 4:1
3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1L 14s 3:1
2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1L 15s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 15\17 and 2\17 Mos Step Ratio TAMNAMS Name Temperament
15 2 1L 1s 15:2
13 2 2 1L 2s 13:2
11 2 2 2 1L 3s 11:2
9 2 2 2 2 1L 4s 9:2
7 2 2 2 2 2 1L 5s 7:2
5 2 2 2 2 2 2 1L 6s 5:2
3 2 2 2 2 2 2 2 1L 7s 3:2
1 2 2 2 2 2 2 2 2 8L 1s 2:1 subneutralic
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 14\17 and 3\17 Mos Step Ratio TAMNAMS Name Temperament
14 3 1L 1s 14:3
11 3 3 1L 2s 11:3
8 3 3 3 1L 3s 8:3
5 3 3 3 3 1L 4s 5:3
2 3 3 3 3 3 5L 1s 3:2 machinoid
2 2 1 2 1 2 1 2 1 2 1 6L 5s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 13\17 and 4\17 Mos Step Ratio TAMNAMS Name Temperament
13 4 1L 1s 13:4
9 4 4 1L 2s 9:4
5 4 4 4 1L 3s 5:4
1 4 4 4 4 4L 1s 4:1 manic
1 1 3 1 3 1 3 1 3 4L 5s 3:1 orwelloid
1 1 1 2 1 1 2 1 1 2 1 1 2 4L 9s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 12\17 and 5\17 Mos Step Ratio TAMNAMS Name Temperament
12 5 1L 1s 12:5
7 5 5 1L 2s 7:5
2 5 5 5 3L 1s 5:2
2 2 3 2 3 2 3 3L 4s 3:2 mosh
2 2 2 1 2 2 1 2 2 1 7L 3s 2:1 dicotonic
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 11\17 and 6\17 Mos Step Ratio TAMNAMS Name Temperament
11 6 1L 1s 11:6
5 6 6 2L 1s 6:5
5 5 1 5 1 3L 2s 5:1 antipentic
4 1 4 1 1 4 1 1 3L 5s 4:1 sensoid
3 1 1 3 1 1 1 3 1 1 1 3L 8s 3:1
2 1 1 1 2 1 1 1 1 2 1 1 1 1 3L 11s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 10\17 and 7\17 Mos Step Ratio TAMNAMS Name Temperament
10 7 1L 1s 10:7
3 7 7 2L 1s 7:3
3 3 4 3 4 2L 3s 4:3 pentic
3 3 3 1 3 3 1 5L 2s 3:1 diatonic
2 1 2 1 2 1 1 2 1 2 1 1 5L 7s 2:1 p-chromatic
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1
Steps for Generators 9\17 and 8\17 Mos Step Ratio TAMNAMS Name Temperament
9 8 1L 1s 9:8
1 8 8 2L 1s 8:1
1 1 7 1 7 2L 3s 7:1 pentic
1 1 1 6 1 1 6 2L 5s 6:1 antidiatonic
1 1 1 1 5 1 1 1 5 2L 7s 5:1 joanatonic
1 1 1 1 1 4 1 1 1 1 4 2L 9s 4:1
1 1 1 1 1 1 3 1 1 1 1 1 3 2L 11s 3:1
1 1 1 1 1 1 1 2 1 1 1 1 1 1 2 2L 13s 2:1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17edo 1

Moscalc

This is a program that finds a string representing a mos xL ys in its brightest mode, given only x and y.

Source code: https://gist.github.com/GanaramInukshuk/4f34eb7b113e8c735c266f8f8e45d865

Example output for 4-note to 13-note mosses:

4-note scales:
Lsss - 1L 3s
LsLs - 2L 2s
LLLs - 3L 1s

5-note scales:
Lssss - 1L 4s
LsLss - 2L 3s
LLsLs - 3L 2s
LLLLs - 4L 1s

6-note scales:
Lsssss - 1L 5s
LssLss - 2L 4s
LsLsLs - 3L 3s
LLsLLs - 4L 2s
LLLLLs - 5L 1s

7-note scales:
Lssssss - 1L 6s
LssLsss - 2L 5s
LsLsLss - 3L 4s
LLsLsLs - 4L 3s
LLLsLLs - 5L 2s
LLLLLLs - 6L 1s

8-note scales:
Lsssssss - 1L 7s
LsssLsss - 2L 6s
LsLssLss - 3L 5s
LsLsLsLs - 4L 4s
LLsLLsLs - 5L 3s
LLLsLLLs - 6L 2s
LLLLLLLs - 7L 1s

9-note scales:
Lssssssss - 1L 8s
LsssLssss - 2L 7s
LssLssLss - 3L 6s
LsLsLsLss - 4L 5s
LLsLsLsLs - 5L 4s
LLsLLsLLs - 6L 3s
LLLLsLLLs - 7L 2s
LLLLLLLLs - 8L 1s

10-note scales:
Lsssssssss - 1L 9s
LssssLssss - 2L 8s
LssLssLsss - 3L 7s
LsLssLsLss - 4L 6s
LsLsLsLsLs - 5L 5s
LLsLsLLsLs - 6L 4s
LLLsLLsLLs - 7L 3s
LLLLsLLLLs - 8L 2s
LLLLLLLLLs - 9L 1s

11-note scales:
Lssssssssss - 1L 10s
LssssLsssss - 2L 9s
LssLsssLsss - 3L 8s
LsLssLssLss - 4L 7s
LsLsLsLsLss - 5L 6s
LLsLsLsLsLs - 6L 5s
LLsLLsLLsLs - 7L 4s
LLLsLLLsLLs - 8L 3s
LLLLLsLLLLs - 9L 2s
LLLLLLLLLLs - 10L 1s

12-note scales:
Lsssssssssss - 1L 11s
LsssssLsssss - 2L 10s
LsssLsssLsss - 3L 9s
LssLssLssLss - 4L 8s
LsLsLssLsLss - 5L 7s
LsLsLsLsLsLs - 6L 6s
LLsLsLLsLsLs - 7L 5s
LLsLLsLLsLLs - 8L 4s
LLLsLLLsLLLs - 9L 3s
LLLLLsLLLLLs - 10L 2s
LLLLLLLLLLLs - 11L 1s

13-note scales:
Lssssssssssss - 1L 12s
LsssssLssssss - 2L 11s
LsssLsssLssss - 3L 10s
LssLssLssLsss - 4L 9s
LsLssLsLssLss - 5L 8s
LsLsLsLsLsLss - 6L 7s
LLsLsLsLsLsLs - 7L 6s
LLsLLsLsLLsLs - 8L 5s
LLLsLLsLLsLLs - 9L 4s
LLLLsLLLsLLLs - 10L 3s
LLLLLLsLLLLLs - 11L 2s
LLLLLLLLLLLLs - 12L 1s

Moscalc and modecalc (Python)

This is a Python port of the aforementioned Moscalc program written in C++. This is accompanied by a Modecalc program that finds a scale's modes, the intervals for those modes, and the scale degrees for those modes.

Source code: https://gist.github.com/GanaramInukshuk/3b09f806573ecd90745d1d7fad11abdc

Example output for 3L 4s:

Scale modes sorted by modal brightness:
----------  ---  ------  ------  ------  ------  ------  ------  ------  ------
Modestring  UDP  0-step  1-step  2-step  3-step  4-step  5-step  6-step  7-step
LsLsLss     0|6  0       L       L+s     2L+s    2L+2s   3L+2s   3L+3s   3L+4s
LsLssLs     1|5  0       L       L+s     2L+s    2L+2s   2L+3s   3L+3s   3L+4s
LssLsLs     2|4  0       L       L+s     L+2s    2L+2s   2L+3s   3L+3s   3L+4s
sLsLsLs     3|3  0       s       L+s     L+2s    2L+2s   2L+3s   3L+3s   3L+4s
sLsLssL     4|2  0       s       L+s     L+2s    2L+2s   2L+3s   2L+4s   3L+4s
sLssLsL     5|1  0       s       L+s     L+2s    L+3s    2L+3s   2L+4s   3L+4s
ssLsLsL     6|0  0       s       2s      L+2s    L+3s    2L+3s   2L+4s   3L+4s
----------  ---  ------  ------  ------  ------  ------  ------  ------  ------

Scale modes sorted by cyclic permutational order (starting at brightest mode):
----------  ---  ------  ------  ------  ------  ------  ------  ------  ------
Modestring  CPO  0-step  1-step  2-step  3-step  4-step  5-step  6-step  7-step
LsLsLss     0    0       L       L+s     2L+s    2L+2s   3L+2s   3L+3s   3L+4s
sLsLssL     1    0       s       L+s     L+2s    2L+2s   2L+3s   2L+4s   3L+4s
LsLssLs     2    0       L       L+s     2L+s    2L+2s   2L+3s   3L+3s   3L+4s
sLssLsL     3    0       s       L+s     L+2s    L+3s    2L+3s   2L+4s   3L+4s
LssLsLs     4    0       L       L+s     L+2s    2L+2s   2L+3s   3L+3s   3L+4s
ssLsLsL     5    0       s       2s      L+2s    L+3s    2L+3s   2L+4s   3L+4s
sLsLsLs     6    0       s       L+s     L+2s    2L+2s   2L+3s   3L+3s   3L+4s
----------  ---  ------  ------  ------  ------  ------  ------  ------  ------

Scale degrees for each mode (modes sorted by modal brightness):
----------  ---  -----  -----  -----  -----  -----  -----  -----  -----
Modestring  UDP  0-deg  1-deg  2-deg  3-deg  4-deg  5-deg  6-deg  7-deg
LsLsLss     0|6  0      1      1      1      1      1      1      0
LsLssLs     1|5  0      1      1      1      1      0      1      0
LssLsLs     2|4  0      1      1      0      1      0      1      0
sLsLsLs     3|3  0      0      1      0      1      0      1      0
sLsLssL     4|2  0      0      1      0      1      0      0      0
sLssLsL     5|1  0      0      1      0      0      0      0      0
ssLsLsL     6|0  0      0      0      0      0      0      0      0
----------  ---  -----  -----  -----  -----  -----  -----  -----  -----

Scale degrees for each mode (modes sorted by cyclic permutational order):
----------  ---  -----  -----  -----  -----  -----  -----  -----  -----
Modestring  CPO  0-deg  1-deg  2-deg  3-deg  4-deg  5-deg  6-deg  7-deg
LsLsLss     0    0      1      1      1      1      1      1      0
sLsLssL     1    0      0      1      0      1      0      0      0
LsLssLs     2    0      1      1      1      1      0      1      0
sLssLsL     3    0      0      1      0      0      0      0      0
LssLsLs     4    0      1      1      0      1      0      1      0
ssLsLsL     5    0      0      0      0      0      0      0      0
sLsLsLs     6    0      0      1      0      1      0      1      0
----------  ---  -----  -----  -----  -----  -----  -----  -----  -----

Instructions for how to read the output:

  • A scale's modes are rotations of a scale, represented as a string. These are sorted in two different ways: modal brightness and cyclic permutational order.
  • A scale's intervals are a substring of a mode's scalestring. Since the order of steps doesn't matter in an interval, the sum of steps is shown in the table instead.
  • Scale degrees are generally described with terms such as major, minor, augmented, diminished, and perfect. Here, they're enumerated in decreasing order based on size, where larger enumerations denote larger intervals (and therefore larger scale degrees). Perfect intervals, such as the unison and octave, always appear as one size each, and so their scale degrees are always perfect. The other scale degrees that are described as perfect come from the generating intervals (such as the perfect 5th and perfect 4th); these usually apply for moment-of-symmetry scales. A perfect 5th is described as perfect because it appears as that size in all but one mode (the locrian mode, where it's a diminished 5th instead), and a perfect 4th is described as perfect because it appears as that size in all but one mode (then lydian mode, where it's an augmented 4th instead).
  • Intervals and scale degrees are enumerated starting at 0 rather than 1.

Update (Nov 2022)

There is now an option to output a mos table as one consolidated table using the MosModecalcOnetable() function. Note that MosModecalc() can output this as two separate tables (one for mossteps and one for mosdegrees). Example output below (may be too wide on some screens).

Mode     UDP    Mode name      Rotational order  smiunison (0-smidegree)    1-smistep (1-smidegree)    2-smistep (2-smidegree)    3-smistep (3-smidegree)    4-smistep (4-smidegree)    5-smistep (5-smidegree)    6-smistep (6-smidegree)    smioctave (7-smidegree)
-------  -----  -----------  ------------------  -------------------------  -------------------------  -------------------------  -------------------------  -------------------------  -------------------------  -------------------------  -------------------------
LLsLsLs  6|0    Mode 1                        0  0 (perfect)                L (major)                  2L (augmented)             2L+s (major)               3L+s (major)               3L+2s (perfect)            4L+2s (major)              4L+3s (perfect)
LsLLsLs  5|1    Mode 2                        5  0 (perfect)                L (major)                  L+s (perfect)              2L+s (major)               3L+s (major)               3L+2s (perfect)            4L+2s (major)              4L+3s (perfect)
LsLsLLs  4|2    Mode 3                        3  0 (perfect)                L (major)                  L+s (perfect)              2L+s (major)               2L+2s (minor)              3L+2s (perfect)            4L+2s (major)              4L+3s (perfect)
LsLsLsL  3|3    Mode 4                        1  0 (perfect)                L (major)                  L+s (perfect)              2L+s (major)               2L+2s (minor)              3L+2s (perfect)            3L+3s (minor)              4L+3s (perfect)
sLLsLsL  2|4    Mode 5                        6  0 (perfect)                s (minor)                  L+s (perfect)              2L+s (major)               2L+2s (minor)              3L+2s (perfect)            3L+3s (minor)              4L+3s (perfect)
sLsLLsL  1|5    Mode 6                        4  0 (perfect)                s (minor)                  L+s (perfect)              L+2s (minor)               2L+2s (minor)              3L+2s (perfect)            3L+3s (minor)              4L+3s (perfect)
sLsLsLL  0|6    Mode 7                        2  0 (perfect)                s (minor)                  L+s (perfect)              L+2s (minor)               2L+2s (minor)              2L+3s (diminished)         3L+3s (minor)              4L+3s (perfect)

The same output can be formatted as a wikitable. Other table features (such as sorting) may require additional edits.

Modes of 4L 3s (smitonic)
Mode UDP Mode name Rotational order smiunison (0-smidegree) 1-smistep (1-smidegree) 2-smistep (2-smidegree) 3-smistep (3-smidegree) 4-smistep (4-smidegree) 5-smistep (5-smidegree) 6-smistep (6-smidegree) smioctave (7-smidegree)
LLsLsLs 6|0 nerevarine 0 0 (perfect) L (major) 2L (augmented) 2L+s (major) 3L+s (major) 3L+2s (perfect) 4L+2s (major) 4L+3s (perfect)
LsLLsLs 5|1 vivecan 5 0 (perfect) L (major) L+s (perfect) 2L+s (major) 3L+s (major) 3L+2s (perfect) 4L+2s (major) 4L+3s (perfect)
LsLsLLs 4|2 lorkhanic 3 0 (perfect) L (major) L+s (perfect) 2L+s (major) 2L+2s (minor) 3L+2s (perfect) 4L+2s (major) 4L+3s (perfect)
LsLsLsL 3|3 sothic 1 0 (perfect) L (major) L+s (perfect) 2L+s (major) 2L+2s (minor) 3L+2s (perfect) 3L+3s (minor) 4L+3s (perfect)
sLLsLsL 2|4 kagrenacan 6 0 (perfect) s (minor) L+s (perfect) 2L+s (major) 2L+2s (minor) 3L+2s (perfect) 3L+3s (minor) 4L+3s (perfect)
sLsLLsL 1|5 almalexian 4 0 (perfect) s (minor) L+s (perfect) L+2s (minor) 2L+2s (minor) 3L+2s (perfect) 3L+3s (minor) 4L+3s (perfect)
sLsLsLL 0|6 dagothic 2 0 (perfect) s (minor) L+s (perfect) L+2s (minor) 2L+2s (minor) 2L+3s (diminished) 3L+3s (minor) 4L+3s (perfect)

JIRAF (C++)

JI ratio finder, possibly reverse-engineered from other already-existing algorithms.

Source code: https://gist.github.com/GanaramInukshuk/b010ff8c29cd03c13b84f1b504efce62

Approximated ratios for 1\16 (75c):
19/18 = 93.6031
20/19 = 88.8008
Approximated ratios for 2\16 (150c):
11/10 = 165.004
12/11 = 150.637
13/12 = 138.573
Approximated ratios for 3\16 (225c):
8/7 = 231.174
17/15 = 216.687
Approximated ratios for 4\16 (300c):
6/5 = 315.641
13/11 = 289.21
19/16 = 297.513
20/17 = 281.358
Approximated ratios for 5\16 (375c):
5/4 = 386.314
16/13 = 359.472
Approximated ratios for 6\16 (450c):
9/7 = 435.084
13/10 = 454.214
17/13 = 464.428
Approximated ratios for 7\16 (525c):
15/11 = 536.951
19/14 = 528.687
Approximated ratios for 8\16 (600c):
7/5 = 582.512
10/7 = 617.488
17/12 = 603
Approximated ratios for 9\16 (675c):
19/13 = 656.985
Approximated ratios for 10\16 (750c):
14/9 = 764.916
17/11 = 753.637
20/13 = 745.786
Approximated ratios for 11\16 (825c):
8/5 = 813.686
13/8 = 840.528
Approximated ratios for 12\16 (900c):
5/3 = 884.359
17/10 = 918.642
Approximated ratios for 13\16 (975c):
7/4 = 968.826
Approximated ratios for 14\16 (1050c):
11/6 = 1049.36
20/11 = 1035
Approximated ratios for 15\16 (1125c):
19/10 = 1111.2
End of program reached.