Skip to contents

Creates a keyboard map

Usage

keyboard_map(scale_table, middle_c_octave = 4)

Arguments

scale_table

a scale table from ps_scale_table, cps_scale_table, or et_scale_table

middle_c_octave

octave number for middle C. There are varying conventions for the octave number for middle C. The default for this function is 4, but other software can use 3 or even some other number

Value

the keyboard map. This is a data.table with eight columns:

  • note_number: the MIDI note number from .NN_MIN through .NN_MAX

  • name_12edo: note name of the key in 12EDO. This is the key you'd normally press to play this note number

  • octave_12edo: the octave the key normally plays

  • note_name: the note name from the scale table

  • ratio_frac: ratio for the note as a vulgar fraction. Note that for equal tempered scales this is usually an approximation to an irrational number. The algorithm used appears to give six decimal places of accuracy.

  • degree: the scale degree of the note

  • octave: the octave number of the note

  • freq: the frequency in Hz

  • cents: cents above lowest MIDI note .NN_MIN, which has frequency .FREQ_MIN.

  • ref_keyname: some synthesizers, including the Korg Minilogue XD, let you retune a key as an offset in cents from another reference key. This column is the name of that reference key.

  • ref_octave: the octave number of the reference key

  • ref_offset: the offset in cents from the reference key

Details

The function is currently hard-coded to compute the map so that middle C with frequency .FREQ_MIDDLE_Cis mapped to MIDI note number .NN_MIDDLE_C and scale degree 0. With the current constants this is the same as it is on 12EDO with A440 on note 69. This note is 6000 cents above MIDI note number 0 in 12EDO.

Normally you would only use this to remap a keyboard to a scale with more than 12 notes per octave. For scales with 12 or fewer notes to the octave, it's easier to remap all octaves using the offsets computed with offset_matrix!

Examples


# make sure we can print a whole keyboard map
options(max.print = 2000)

eikosany <- cps_scale_table(root_divisor = 33)
print(eikosany_keyboard_map <- keyboard_map(eikosany), nrows = 128)
#> Key: <note_number>
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>            <num>     <char>        <num>    <char>     <char>  <num>
#>   1:           0          C           -1    1x3x11          1      0
#>   2:           1         C#           -1     3x5x9      45/44      1
#>   3:           2          D           -1     1x5x7      35/33      2
#>   4:           3         D#           -1    3x9x11        9/8      3
#>   5:           4          E           -1    1x7x11        7/6      4
#>   6:           5          F           -1     5x7x9     105/88      5
#>   7:           6         F#           -1    3x5x11        5/4      6
#>   8:           7          G           -1     1x3x7      14/11      7
#>   9:           8         G#           -1    7x9x11      21/16      8
#>  10:           9          A           -1     1x5x9      15/11      9
#>  11:          10         A#           -1     3x7x9      63/44     10
#>  12:          11          B           -1    5x7x11      35/24     11
#>  13:          12          C            0    1x9x11        3/2     12
#>  14:          13         C#            0     3x5x7      35/22     13
#>  15:          14          D            0     1x3x9      18/11     14
#>  16:          15         D#            0    1x5x11        5/3     15
#>  17:          16          E            0    3x7x11        7/4     16
#>  18:          17          F            0     1x3x5      20/11     17
#>  19:          18         F#            0    5x9x11       15/8     18
#>  20:          19          G            0     1x7x9      21/11     19
#>  21:          20         G#            0    1x3x11          1      0
#>  22:          21          A            0     3x5x9      45/44      1
#>  23:          22         A#            0     1x5x7      35/33      2
#>  24:          23          B            0    3x9x11        9/8      3
#>  25:          24          C            1    1x7x11        7/6      4
#>  26:          25         C#            1     5x7x9     105/88      5
#>  27:          26          D            1    3x5x11        5/4      6
#>  28:          27         D#            1     1x3x7      14/11      7
#>  29:          28          E            1    7x9x11      21/16      8
#>  30:          29          F            1     1x5x9      15/11      9
#>  31:          30         F#            1     3x7x9      63/44     10
#>  32:          31          G            1    5x7x11      35/24     11
#>  33:          32         G#            1    1x9x11        3/2     12
#>  34:          33          A            1     3x5x7      35/22     13
#>  35:          34         A#            1     1x3x9      18/11     14
#>  36:          35          B            1    1x5x11        5/3     15
#>  37:          36          C            2    3x7x11        7/4     16
#>  38:          37         C#            2     1x3x5      20/11     17
#>  39:          38          D            2    5x9x11       15/8     18
#>  40:          39         D#            2     1x7x9      21/11     19
#>  41:          40          E            2    1x3x11          1      0
#>  42:          41          F            2     3x5x9      45/44      1
#>  43:          42         F#            2     1x5x7      35/33      2
#>  44:          43          G            2    3x9x11        9/8      3
#>  45:          44         G#            2    1x7x11        7/6      4
#>  46:          45          A            2     5x7x9     105/88      5
#>  47:          46         A#            2    3x5x11        5/4      6
#>  48:          47          B            2     1x3x7      14/11      7
#>  49:          48          C            3    7x9x11      21/16      8
#>  50:          49         C#            3     1x5x9      15/11      9
#>  51:          50          D            3     3x7x9      63/44     10
#>  52:          51         D#            3    5x7x11      35/24     11
#>  53:          52          E            3    1x9x11        3/2     12
#>  54:          53          F            3     3x5x7      35/22     13
#>  55:          54         F#            3     1x3x9      18/11     14
#>  56:          55          G            3    1x5x11        5/3     15
#>  57:          56         G#            3    3x7x11        7/4     16
#>  58:          57          A            3     1x3x5      20/11     17
#>  59:          58         A#            3    5x9x11       15/8     18
#>  60:          59          B            3     1x7x9      21/11     19
#>  61:          60          C            4    1x3x11          1      0
#>  62:          61         C#            4     3x5x9      45/44      1
#>  63:          62          D            4     1x5x7      35/33      2
#>  64:          63         D#            4    3x9x11        9/8      3
#>  65:          64          E            4    1x7x11        7/6      4
#>  66:          65          F            4     5x7x9     105/88      5
#>  67:          66         F#            4    3x5x11        5/4      6
#>  68:          67          G            4     1x3x7      14/11      7
#>  69:          68         G#            4    7x9x11      21/16      8
#>  70:          69          A            4     1x5x9      15/11      9
#>  71:          70         A#            4     3x7x9      63/44     10
#>  72:          71          B            4    5x7x11      35/24     11
#>  73:          72          C            5    1x9x11        3/2     12
#>  74:          73         C#            5     3x5x7      35/22     13
#>  75:          74          D            5     1x3x9      18/11     14
#>  76:          75         D#            5    1x5x11        5/3     15
#>  77:          76          E            5    3x7x11        7/4     16
#>  78:          77          F            5     1x3x5      20/11     17
#>  79:          78         F#            5    5x9x11       15/8     18
#>  80:          79          G            5     1x7x9      21/11     19
#>  81:          80         G#            5    1x3x11          1      0
#>  82:          81          A            5     3x5x9      45/44      1
#>  83:          82         A#            5     1x5x7      35/33      2
#>  84:          83          B            5    3x9x11        9/8      3
#>  85:          84          C            6    1x7x11        7/6      4
#>  86:          85         C#            6     5x7x9     105/88      5
#>  87:          86          D            6    3x5x11        5/4      6
#>  88:          87         D#            6     1x3x7      14/11      7
#>  89:          88          E            6    7x9x11      21/16      8
#>  90:          89          F            6     1x5x9      15/11      9
#>  91:          90         F#            6     3x7x9      63/44     10
#>  92:          91          G            6    5x7x11      35/24     11
#>  93:          92         G#            6    1x9x11        3/2     12
#>  94:          93          A            6     3x5x7      35/22     13
#>  95:          94         A#            6     1x3x9      18/11     14
#>  96:          95          B            6    1x5x11        5/3     15
#>  97:          96          C            7    3x7x11        7/4     16
#>  98:          97         C#            7     1x3x5      20/11     17
#>  99:          98          D            7    5x9x11       15/8     18
#> 100:          99         D#            7     1x7x9      21/11     19
#> 101:         100          E            7    1x3x11          1      0
#> 102:         101          F            7     3x5x9      45/44      1
#> 103:         102         F#            7     1x5x7      35/33      2
#> 104:         103          G            7    3x9x11        9/8      3
#> 105:         104         G#            7    1x7x11        7/6      4
#> 106:         105          A            7     5x7x9     105/88      5
#> 107:         106         A#            7    3x5x11        5/4      6
#> 108:         107          B            7     1x3x7      14/11      7
#> 109:         108          C            8    7x9x11      21/16      8
#> 110:         109         C#            8     1x5x9      15/11      9
#> 111:         110          D            8     3x7x9      63/44     10
#> 112:         111         D#            8    5x7x11      35/24     11
#> 113:         112          E            8    1x9x11        3/2     12
#> 114:         113          F            8     3x5x7      35/22     13
#> 115:         114         F#            8     1x3x9      18/11     14
#> 116:         115          G            8    1x5x11        5/3     15
#> 117:         116         G#            8    3x7x11        7/4     16
#> 118:         117          A            8     1x3x5      20/11     17
#> 119:         118         A#            8    5x9x11       15/8     18
#> 120:         119          B            8     1x7x9      21/11     19
#> 121:         120          C            9    1x3x11          1      0
#> 122:         121         C#            9     3x5x9      45/44      1
#> 123:         122          D            9     1x5x7      35/33      2
#> 124:         123         D#            9    3x9x11        9/8      3
#> 125:         124          E            9    1x7x11        7/6      4
#> 126:         125          F            9     5x7x9     105/88      5
#> 127:         126         F#            9    3x5x11        5/4      6
#> 128:         127          G            9     1x3x7      14/11      7
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>      period_number       freq     cents ref_keyname ref_octave ref_offset
#>              <num>      <num>     <num>      <char>      <num>      <num>
#>   1:            -3   32.70320  2400.000           C          2          0
#>   2:            -3   33.44645  2438.906           C          2         39
#>   3:            -3   34.68521  2501.867          C#          2          2
#>   4:            -3   36.79110  2603.910           D          2          4
#>   5:            -3   38.15373  2666.871          D#          2        -33
#>   6:            -3   39.02086  2705.777          D#          2          6
#>   7:            -3   40.87899  2786.314           E          2        -14
#>   8:            -3   41.62225  2817.508           E          2         18
#>   9:            -3   42.92294  2870.781           F          2        -29
#>  10:            -3   44.59527  2936.951           F          2         37
#>  11:            -3   46.82503  3021.418          F#          2         21
#>  12:            -3   47.69216  3053.185           G          2        -47
#>  13:            -3   49.05479  3101.955           G          2          2
#>  14:            -3   52.02781  3203.822          G#          2          4
#>  15:            -3   53.51432  3252.592           A          2        -47
#>  16:            -3   54.50533  3284.359           A          2        -16
#>  17:            -3   57.23059  3368.826          A#          2        -31
#>  18:            -3   59.46036  3434.996          A#          2         35
#>  19:            -3   61.31849  3488.269           B          2        -12
#>  20:            -3   62.43337  3519.463           B          2         19
#>  21:            -2   65.40639  3600.000           C          3          0
#>  22:            -2   66.89290  3638.906           C          3         39
#>  23:            -2   69.37042  3701.867          C#          3          2
#>  24:            -2   73.58219  3803.910           D          3          4
#>  25:            -2   76.30746  3866.871          D#          3        -33
#>  26:            -2   78.04172  3905.777          D#          3          6
#>  27:            -2   81.75799  3986.314           E          3        -14
#>  28:            -2   83.24450  4017.508           E          3         18
#>  29:            -2   85.84589  4070.781           F          3        -29
#>  30:            -2   89.19053  4136.951           F          3         37
#>  31:            -2   93.65006  4221.418          F#          3         21
#>  32:            -2   95.38432  4253.185           G          3        -47
#>  33:            -2   98.10959  4301.955           G          3          2
#>  34:            -2  104.05562  4403.822          G#          3          4
#>  35:            -2  107.02864  4452.592           A          3        -47
#>  36:            -2  109.01065  4484.359           A          3        -16
#>  37:            -2  114.46118  4568.826          A#          3        -31
#>  38:            -2  118.92071  4634.996          A#          3         35
#>  39:            -2  122.63698  4688.269           B          3        -12
#>  40:            -2  124.86675  4719.463           B          3         19
#>  41:            -1  130.81278  4800.000           C          4          0
#>  42:            -1  133.78580  4838.906           C          4         39
#>  43:            -1  138.74083  4901.867          C#          4          2
#>  44:            -1  147.16438  5003.910           D          4          4
#>  45:            -1  152.61491  5066.871          D#          4        -33
#>  46:            -1  156.08343  5105.777          D#          4          6
#>  47:            -1  163.51598  5186.314           E          4        -14
#>  48:            -1  166.48900  5217.508           E          4         18
#>  49:            -1  171.69178  5270.781           F          4        -29
#>  50:            -1  178.38107  5336.951           F          4         37
#>  51:            -1  187.30012  5421.418          F#          4         21
#>  52:            -1  190.76864  5453.185           G          4        -47
#>  53:            -1  196.21917  5501.955           G          4          2
#>  54:            -1  208.11125  5603.822          G#          4          4
#>  55:            -1  214.05728  5652.592           A          4        -47
#>  56:            -1  218.02130  5684.359           A          4        -16
#>  57:            -1  228.92237  5768.826          A#          4        -31
#>  58:            -1  237.84142  5834.996          A#          4         35
#>  59:            -1  245.27397  5888.269           B          4        -12
#>  60:            -1  249.73349  5919.463           B          4         19
#>  61:             0  261.62557  6000.000           C          5          0
#>  62:             0  267.57160  6038.906           C          5         39
#>  63:             0  277.48166  6101.867          C#          5          2
#>  64:             0  294.32876  6203.910           D          5          4
#>  65:             0  305.22983  6266.871          D#          5        -33
#>  66:             0  312.16687  6305.777          D#          5          6
#>  67:             0  327.03196  6386.314           E          5        -14
#>  68:             0  332.97799  6417.508           E          5         18
#>  69:             0  343.38355  6470.781           F          5        -29
#>  70:             0  356.76213  6536.951           F          5         37
#>  71:             0  374.60024  6621.418          F#          5         21
#>  72:             0  381.53728  6653.185           G          5        -47
#>  73:             0  392.43835  6701.955           G          5          2
#>  74:             0  416.22249  6803.822          G#          5          4
#>  75:             0  428.11456  6852.592           A          5        -47
#>  76:             0  436.04261  6884.359           A          5        -16
#>  77:             0  457.84474  6968.826          A#          5        -31
#>  78:             0  475.68285  7034.996          A#          5         35
#>  79:             0  490.54793  7088.269           B          5        -12
#>  80:             0  499.46699  7119.463           B          5         19
#>  81:             1  523.25113  7200.000           C          6          0
#>  82:             1  535.14320  7238.906           C          6         39
#>  83:             1  554.96332  7301.867          C#          6          2
#>  84:             1  588.65752  7403.910           D          6          4
#>  85:             1  610.45965  7466.871          D#          6        -33
#>  86:             1  624.33374  7505.777          D#          6          6
#>  87:             1  654.06391  7586.314           E          6        -14
#>  88:             1  665.95598  7617.508           E          6         18
#>  89:             1  686.76711  7670.781           F          6        -29
#>  90:             1  713.52427  7736.951           F          6         37
#>  91:             1  749.20048  7821.418          F#          6         21
#>  92:             1  763.07457  7853.185           G          6        -47
#>  93:             1  784.87670  7901.955           G          6          2
#>  94:             1  832.44498  8003.822          G#          6          4
#>  95:             1  856.22912  8052.592           A          6        -47
#>  96:             1  872.08522  8084.359           A          6        -16
#>  97:             1  915.68948  8168.826          A#          6        -31
#>  98:             1  951.36569  8234.996          A#          6         35
#>  99:             1  981.09587  8288.269           B          6        -12
#> 100:             1  998.93398  8319.463           B          6         19
#> 101:             2 1046.50226  8400.000           C          7          0
#> 102:             2 1070.28640  8438.906           C          7         39
#> 103:             2 1109.92664  8501.867          C#          7          2
#> 104:             2 1177.31504  8603.910           D          7          4
#> 105:             2 1220.91930  8666.871          D#          7        -33
#> 106:             2 1248.66747  8705.777          D#          7          6
#> 107:             2 1308.12783  8786.314           E          7        -14
#> 108:             2 1331.91197  8817.508           E          7         18
#> 109:             2 1373.53422  8870.781           F          7        -29
#> 110:             2 1427.04854  8936.951           F          7         37
#> 111:             2 1498.40096  9021.418          F#          7         21
#> 112:             2 1526.14913  9053.185           G          7        -47
#> 113:             2 1569.75339  9101.955           G          7          2
#> 114:             2 1664.88996  9203.822          G#          7          4
#> 115:             2 1712.45825  9252.592           A          7        -47
#> 116:             2 1744.17044  9284.359           A          7        -16
#> 117:             2 1831.37896  9368.826          A#          7        -31
#> 118:             2 1902.73138  9434.996          A#          7         35
#> 119:             2 1962.19174  9488.269           B          7        -12
#> 120:             2 1997.86795  9519.463           B          7         19
#> 121:             3 2093.00452  9600.000           C          8          0
#> 122:             3 2140.57281  9638.906           C          8         39
#> 123:             3 2219.85328  9701.867          C#          8          2
#> 124:             3 2354.63009  9803.910           D          8          4
#> 125:             3 2441.83861  9866.871          D#          8        -33
#> 126:             3 2497.33494  9905.777          D#          8          6
#> 127:             3 2616.25565  9986.314           E          8        -14
#> 128:             3 2663.82394 10017.508           E          8         18
#>      period_number       freq     cents ref_keyname ref_octave ref_offset

# 12-EDO for sanity check
print(vanilla_keyboard_map <- keyboard_map(et_scale_table()), nrows = 128)
#> Key: <note_number>
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>            <num>     <char>        <num>    <char>     <char>  <num>
#>   1:           0          C           -1         C          1      0
#>   2:           1         C#           -1     C#|Db  1461/1379      1
#>   3:           2          D           -1         D  1714/1527      2
#>   4:           3         D#           -1     D#|Eb  1785/1501      3
#>   5:           4          E           -1         E    635/504      4
#>   6:           5          F           -1         F  3249/2434      5
#>   7:           6         F#           -1     F#|Gb   1393/985      6
#>   8:           7          G           -1         G  2213/1477      7
#>   9:           8         G#           -1     G#|Ab   1008/635      8
#>  10:           9          A           -1         A  3002/1785      9
#>  11:          10         A#           -1     A#|Bb   1527/857     10
#>  12:          11          B           -1         B  2943/1559     11
#>  13:          12          C            0         C          1      0
#>  14:          13         C#            0     C#|Db  1461/1379      1
#>  15:          14          D            0         D  1714/1527      2
#>  16:          15         D#            0     D#|Eb  1785/1501      3
#>  17:          16          E            0         E    635/504      4
#>  18:          17          F            0         F  3249/2434      5
#>  19:          18         F#            0     F#|Gb   1393/985      6
#>  20:          19          G            0         G  2213/1477      7
#>  21:          20         G#            0     G#|Ab   1008/635      8
#>  22:          21          A            0         A  3002/1785      9
#>  23:          22         A#            0     A#|Bb   1527/857     10
#>  24:          23          B            0         B  2943/1559     11
#>  25:          24          C            1         C          1      0
#>  26:          25         C#            1     C#|Db  1461/1379      1
#>  27:          26          D            1         D  1714/1527      2
#>  28:          27         D#            1     D#|Eb  1785/1501      3
#>  29:          28          E            1         E    635/504      4
#>  30:          29          F            1         F  3249/2434      5
#>  31:          30         F#            1     F#|Gb   1393/985      6
#>  32:          31          G            1         G  2213/1477      7
#>  33:          32         G#            1     G#|Ab   1008/635      8
#>  34:          33          A            1         A  3002/1785      9
#>  35:          34         A#            1     A#|Bb   1527/857     10
#>  36:          35          B            1         B  2943/1559     11
#>  37:          36          C            2         C          1      0
#>  38:          37         C#            2     C#|Db  1461/1379      1
#>  39:          38          D            2         D  1714/1527      2
#>  40:          39         D#            2     D#|Eb  1785/1501      3
#>  41:          40          E            2         E    635/504      4
#>  42:          41          F            2         F  3249/2434      5
#>  43:          42         F#            2     F#|Gb   1393/985      6
#>  44:          43          G            2         G  2213/1477      7
#>  45:          44         G#            2     G#|Ab   1008/635      8
#>  46:          45          A            2         A  3002/1785      9
#>  47:          46         A#            2     A#|Bb   1527/857     10
#>  48:          47          B            2         B  2943/1559     11
#>  49:          48          C            3         C          1      0
#>  50:          49         C#            3     C#|Db  1461/1379      1
#>  51:          50          D            3         D  1714/1527      2
#>  52:          51         D#            3     D#|Eb  1785/1501      3
#>  53:          52          E            3         E    635/504      4
#>  54:          53          F            3         F  3249/2434      5
#>  55:          54         F#            3     F#|Gb   1393/985      6
#>  56:          55          G            3         G  2213/1477      7
#>  57:          56         G#            3     G#|Ab   1008/635      8
#>  58:          57          A            3         A  3002/1785      9
#>  59:          58         A#            3     A#|Bb   1527/857     10
#>  60:          59          B            3         B  2943/1559     11
#>  61:          60          C            4         C          1      0
#>  62:          61         C#            4     C#|Db  1461/1379      1
#>  63:          62          D            4         D  1714/1527      2
#>  64:          63         D#            4     D#|Eb  1785/1501      3
#>  65:          64          E            4         E    635/504      4
#>  66:          65          F            4         F  3249/2434      5
#>  67:          66         F#            4     F#|Gb   1393/985      6
#>  68:          67          G            4         G  2213/1477      7
#>  69:          68         G#            4     G#|Ab   1008/635      8
#>  70:          69          A            4         A  3002/1785      9
#>  71:          70         A#            4     A#|Bb   1527/857     10
#>  72:          71          B            4         B  2943/1559     11
#>  73:          72          C            5         C          1      0
#>  74:          73         C#            5     C#|Db  1461/1379      1
#>  75:          74          D            5         D  1714/1527      2
#>  76:          75         D#            5     D#|Eb  1785/1501      3
#>  77:          76          E            5         E    635/504      4
#>  78:          77          F            5         F  3249/2434      5
#>  79:          78         F#            5     F#|Gb   1393/985      6
#>  80:          79          G            5         G  2213/1477      7
#>  81:          80         G#            5     G#|Ab   1008/635      8
#>  82:          81          A            5         A  3002/1785      9
#>  83:          82         A#            5     A#|Bb   1527/857     10
#>  84:          83          B            5         B  2943/1559     11
#>  85:          84          C            6         C          1      0
#>  86:          85         C#            6     C#|Db  1461/1379      1
#>  87:          86          D            6         D  1714/1527      2
#>  88:          87         D#            6     D#|Eb  1785/1501      3
#>  89:          88          E            6         E    635/504      4
#>  90:          89          F            6         F  3249/2434      5
#>  91:          90         F#            6     F#|Gb   1393/985      6
#>  92:          91          G            6         G  2213/1477      7
#>  93:          92         G#            6     G#|Ab   1008/635      8
#>  94:          93          A            6         A  3002/1785      9
#>  95:          94         A#            6     A#|Bb   1527/857     10
#>  96:          95          B            6         B  2943/1559     11
#>  97:          96          C            7         C          1      0
#>  98:          97         C#            7     C#|Db  1461/1379      1
#>  99:          98          D            7         D  1714/1527      2
#> 100:          99         D#            7     D#|Eb  1785/1501      3
#> 101:         100          E            7         E    635/504      4
#> 102:         101          F            7         F  3249/2434      5
#> 103:         102         F#            7     F#|Gb   1393/985      6
#> 104:         103          G            7         G  2213/1477      7
#> 105:         104         G#            7     G#|Ab   1008/635      8
#> 106:         105          A            7         A  3002/1785      9
#> 107:         106         A#            7     A#|Bb   1527/857     10
#> 108:         107          B            7         B  2943/1559     11
#> 109:         108          C            8         C          1      0
#> 110:         109         C#            8     C#|Db  1461/1379      1
#> 111:         110          D            8         D  1714/1527      2
#> 112:         111         D#            8     D#|Eb  1785/1501      3
#> 113:         112          E            8         E    635/504      4
#> 114:         113          F            8         F  3249/2434      5
#> 115:         114         F#            8     F#|Gb   1393/985      6
#> 116:         115          G            8         G  2213/1477      7
#> 117:         116         G#            8     G#|Ab   1008/635      8
#> 118:         117          A            8         A  3002/1785      9
#> 119:         118         A#            8     A#|Bb   1527/857     10
#> 120:         119          B            8         B  2943/1559     11
#> 121:         120          C            9         C          1      0
#> 122:         121         C#            9     C#|Db  1461/1379      1
#> 123:         122          D            9         D  1714/1527      2
#> 124:         123         D#            9     D#|Eb  1785/1501      3
#> 125:         124          E            9         E    635/504      4
#> 126:         125          F            9         F  3249/2434      5
#> 127:         126         F#            9     F#|Gb   1393/985      6
#> 128:         127          G            9         G  2213/1477      7
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>      period_number         freq cents ref_keyname ref_octave ref_offset
#>              <num>        <num> <num>      <char>      <num>      <num>
#>   1:            -5     8.175799     0           C          0          0
#>   2:            -5     8.661957   100          C#          0          0
#>   3:            -5     9.177024   200           D          0          0
#>   4:            -5     9.722718   300          D#          0          0
#>   5:            -5    10.300861   400           E          0          0
#>   6:            -5    10.913382   500           F          0          0
#>   7:            -5    11.562326   600          F#          0          0
#>   8:            -5    12.249857   700           G          0          0
#>   9:            -5    12.978272   800          G#          0          0
#>  10:            -5    13.750000   900           A          0          0
#>  11:            -5    14.567618  1000          A#          0          0
#>  12:            -5    15.433853  1100           B          0          0
#>  13:            -4    16.351598  1200           C          1          0
#>  14:            -4    17.323914  1300          C#          1          0
#>  15:            -4    18.354048  1400           D          1          0
#>  16:            -4    19.445436  1500          D#          1          0
#>  17:            -4    20.601722  1600           E          1          0
#>  18:            -4    21.826764  1700           F          1          0
#>  19:            -4    23.124651  1800          F#          1          0
#>  20:            -4    24.499715  1900           G          1          0
#>  21:            -4    25.956544  2000          G#          1          0
#>  22:            -4    27.500000  2100           A          1          0
#>  23:            -4    29.135235  2200          A#          1          0
#>  24:            -4    30.867706  2300           B          1          0
#>  25:            -3    32.703196  2400           C          2          0
#>  26:            -3    34.647829  2500          C#          2          0
#>  27:            -3    36.708096  2600           D          2          0
#>  28:            -3    38.890873  2700          D#          2          0
#>  29:            -3    41.203445  2800           E          2          0
#>  30:            -3    43.653529  2900           F          2          0
#>  31:            -3    46.249303  3000          F#          2          0
#>  32:            -3    48.999429  3100           G          2          0
#>  33:            -3    51.913087  3200          G#          2          0
#>  34:            -3    55.000000  3300           A          2          0
#>  35:            -3    58.270470  3400          A#          2          0
#>  36:            -3    61.735413  3500           B          2          0
#>  37:            -2    65.406391  3600           C          3          0
#>  38:            -2    69.295658  3700          C#          3          0
#>  39:            -2    73.416192  3800           D          3          0
#>  40:            -2    77.781746  3900          D#          3          0
#>  41:            -2    82.406889  4000           E          3          0
#>  42:            -2    87.307058  4100           F          3          0
#>  43:            -2    92.498606  4200          F#          3          0
#>  44:            -2    97.998859  4300           G          3          0
#>  45:            -2   103.826174  4400          G#          3          0
#>  46:            -2   110.000000  4500           A          3          0
#>  47:            -2   116.540940  4600          A#          3          0
#>  48:            -2   123.470825  4700           B          3          0
#>  49:            -1   130.812783  4800           C          4          0
#>  50:            -1   138.591315  4900          C#          4          0
#>  51:            -1   146.832384  5000           D          4          0
#>  52:            -1   155.563492  5100          D#          4          0
#>  53:            -1   164.813778  5200           E          4          0
#>  54:            -1   174.614116  5300           F          4          0
#>  55:            -1   184.997211  5400          F#          4          0
#>  56:            -1   195.997718  5500           G          4          0
#>  57:            -1   207.652349  5600          G#          4          0
#>  58:            -1   220.000000  5700           A          4          0
#>  59:            -1   233.081881  5800          A#          4          0
#>  60:            -1   246.941651  5900           B          4          0
#>  61:             0   261.625565  6000           C          5          0
#>  62:             0   277.182631  6100          C#          5          0
#>  63:             0   293.664768  6200           D          5          0
#>  64:             0   311.126984  6300          D#          5          0
#>  65:             0   329.627557  6400           E          5          0
#>  66:             0   349.228231  6500           F          5          0
#>  67:             0   369.994423  6600          F#          5          0
#>  68:             0   391.995436  6700           G          5          0
#>  69:             0   415.304698  6800          G#          5          0
#>  70:             0   440.000000  6900           A          5          0
#>  71:             0   466.163762  7000          A#          5          0
#>  72:             0   493.883301  7100           B          5          0
#>  73:             1   523.251131  7200           C          6          0
#>  74:             1   554.365262  7300          C#          6          0
#>  75:             1   587.329536  7400           D          6          0
#>  76:             1   622.253967  7500          D#          6          0
#>  77:             1   659.255114  7600           E          6          0
#>  78:             1   698.456463  7700           F          6          0
#>  79:             1   739.988845  7800          F#          6          0
#>  80:             1   783.990872  7900           G          6          0
#>  81:             1   830.609395  8000          G#          6          0
#>  82:             1   880.000000  8100           A          6          0
#>  83:             1   932.327523  8200          A#          6          0
#>  84:             1   987.766603  8300           B          6          0
#>  85:             2  1046.502261  8400           C          7          0
#>  86:             2  1108.730524  8500          C#          7          0
#>  87:             2  1174.659072  8600           D          7          0
#>  88:             2  1244.507935  8700          D#          7          0
#>  89:             2  1318.510228  8800           E          7          0
#>  90:             2  1396.912926  8900           F          7          0
#>  91:             2  1479.977691  9000          F#          7          0
#>  92:             2  1567.981744  9100           G          7          0
#>  93:             2  1661.218790  9200          G#          7          0
#>  94:             2  1760.000000  9300           A          7          0
#>  95:             2  1864.655046  9400          A#          7          0
#>  96:             2  1975.533205  9500           B          7          0
#>  97:             3  2093.004522  9600           C          8          0
#>  98:             3  2217.461048  9700          C#          8          0
#>  99:             3  2349.318143  9800           D          8          0
#> 100:             3  2489.015870  9900          D#          8          0
#> 101:             3  2637.020455 10000           E          8          0
#> 102:             3  2793.825851 10100           F          8          0
#> 103:             3  2959.955382 10200          F#          8          0
#> 104:             3  3135.963488 10300           G          8          0
#> 105:             3  3322.437581 10400          G#          8          0
#> 106:             3  3520.000000 10500           A          8          0
#> 107:             3  3729.310092 10600          A#          8          0
#> 108:             3  3951.066410 10700           B          8          0
#> 109:             4  4186.009045 10800           C          9          0
#> 110:             4  4434.922096 10900          C#          9          0
#> 111:             4  4698.636287 11000           D          9          0
#> 112:             4  4978.031740 11100          D#          9          0
#> 113:             4  5274.040911 11200           E          9          0
#> 114:             4  5587.651703 11300           F          9          0
#> 115:             4  5919.910763 11400          F#          9          0
#> 116:             4  6271.926976 11500           G          9          0
#> 117:             4  6644.875161 11600          G#          9          0
#> 118:             4  7040.000000 11700           A          9          0
#> 119:             4  7458.620184 11800          A#          9          0
#> 120:             4  7902.132820 11900           B          9          0
#> 121:             5  8372.018090 12000           C         10          0
#> 122:             5  8869.844191 12100          C#         10          0
#> 123:             5  9397.272573 12200           D         10          0
#> 124:             5  9956.063479 12300          D#         10          0
#> 125:             5 10548.081821 12400           E         10          0
#> 126:             5 11175.303406 12500           F         10          0
#> 127:             5 11839.821527 12600          F#         10          0
#> 128:             5 12543.853951 12700           G         10          0
#>      period_number         freq cents ref_keyname ref_octave ref_offset

# check middle C setting
print(
  eikosany_keyboard_map_c3 <-
    keyboard_map(cps_scale_table(root_divisor = 33), middle_c_octave = 3), nrows = 128)
#> Key: <note_number>
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>            <num>     <char>        <num>    <char>     <char>  <num>
#>   1:           0          C           -2    1x3x11          1      0
#>   2:           1         C#           -2     3x5x9      45/44      1
#>   3:           2          D           -2     1x5x7      35/33      2
#>   4:           3         D#           -2    3x9x11        9/8      3
#>   5:           4          E           -2    1x7x11        7/6      4
#>   6:           5          F           -2     5x7x9     105/88      5
#>   7:           6         F#           -2    3x5x11        5/4      6
#>   8:           7          G           -2     1x3x7      14/11      7
#>   9:           8         G#           -2    7x9x11      21/16      8
#>  10:           9          A           -2     1x5x9      15/11      9
#>  11:          10         A#           -2     3x7x9      63/44     10
#>  12:          11          B           -2    5x7x11      35/24     11
#>  13:          12          C           -1    1x9x11        3/2     12
#>  14:          13         C#           -1     3x5x7      35/22     13
#>  15:          14          D           -1     1x3x9      18/11     14
#>  16:          15         D#           -1    1x5x11        5/3     15
#>  17:          16          E           -1    3x7x11        7/4     16
#>  18:          17          F           -1     1x3x5      20/11     17
#>  19:          18         F#           -1    5x9x11       15/8     18
#>  20:          19          G           -1     1x7x9      21/11     19
#>  21:          20         G#           -1    1x3x11          1      0
#>  22:          21          A           -1     3x5x9      45/44      1
#>  23:          22         A#           -1     1x5x7      35/33      2
#>  24:          23          B           -1    3x9x11        9/8      3
#>  25:          24          C            0    1x7x11        7/6      4
#>  26:          25         C#            0     5x7x9     105/88      5
#>  27:          26          D            0    3x5x11        5/4      6
#>  28:          27         D#            0     1x3x7      14/11      7
#>  29:          28          E            0    7x9x11      21/16      8
#>  30:          29          F            0     1x5x9      15/11      9
#>  31:          30         F#            0     3x7x9      63/44     10
#>  32:          31          G            0    5x7x11      35/24     11
#>  33:          32         G#            0    1x9x11        3/2     12
#>  34:          33          A            0     3x5x7      35/22     13
#>  35:          34         A#            0     1x3x9      18/11     14
#>  36:          35          B            0    1x5x11        5/3     15
#>  37:          36          C            1    3x7x11        7/4     16
#>  38:          37         C#            1     1x3x5      20/11     17
#>  39:          38          D            1    5x9x11       15/8     18
#>  40:          39         D#            1     1x7x9      21/11     19
#>  41:          40          E            1    1x3x11          1      0
#>  42:          41          F            1     3x5x9      45/44      1
#>  43:          42         F#            1     1x5x7      35/33      2
#>  44:          43          G            1    3x9x11        9/8      3
#>  45:          44         G#            1    1x7x11        7/6      4
#>  46:          45          A            1     5x7x9     105/88      5
#>  47:          46         A#            1    3x5x11        5/4      6
#>  48:          47          B            1     1x3x7      14/11      7
#>  49:          48          C            2    7x9x11      21/16      8
#>  50:          49         C#            2     1x5x9      15/11      9
#>  51:          50          D            2     3x7x9      63/44     10
#>  52:          51         D#            2    5x7x11      35/24     11
#>  53:          52          E            2    1x9x11        3/2     12
#>  54:          53          F            2     3x5x7      35/22     13
#>  55:          54         F#            2     1x3x9      18/11     14
#>  56:          55          G            2    1x5x11        5/3     15
#>  57:          56         G#            2    3x7x11        7/4     16
#>  58:          57          A            2     1x3x5      20/11     17
#>  59:          58         A#            2    5x9x11       15/8     18
#>  60:          59          B            2     1x7x9      21/11     19
#>  61:          60          C            3    1x3x11          1      0
#>  62:          61         C#            3     3x5x9      45/44      1
#>  63:          62          D            3     1x5x7      35/33      2
#>  64:          63         D#            3    3x9x11        9/8      3
#>  65:          64          E            3    1x7x11        7/6      4
#>  66:          65          F            3     5x7x9     105/88      5
#>  67:          66         F#            3    3x5x11        5/4      6
#>  68:          67          G            3     1x3x7      14/11      7
#>  69:          68         G#            3    7x9x11      21/16      8
#>  70:          69          A            3     1x5x9      15/11      9
#>  71:          70         A#            3     3x7x9      63/44     10
#>  72:          71          B            3    5x7x11      35/24     11
#>  73:          72          C            4    1x9x11        3/2     12
#>  74:          73         C#            4     3x5x7      35/22     13
#>  75:          74          D            4     1x3x9      18/11     14
#>  76:          75         D#            4    1x5x11        5/3     15
#>  77:          76          E            4    3x7x11        7/4     16
#>  78:          77          F            4     1x3x5      20/11     17
#>  79:          78         F#            4    5x9x11       15/8     18
#>  80:          79          G            4     1x7x9      21/11     19
#>  81:          80         G#            4    1x3x11          1      0
#>  82:          81          A            4     3x5x9      45/44      1
#>  83:          82         A#            4     1x5x7      35/33      2
#>  84:          83          B            4    3x9x11        9/8      3
#>  85:          84          C            5    1x7x11        7/6      4
#>  86:          85         C#            5     5x7x9     105/88      5
#>  87:          86          D            5    3x5x11        5/4      6
#>  88:          87         D#            5     1x3x7      14/11      7
#>  89:          88          E            5    7x9x11      21/16      8
#>  90:          89          F            5     1x5x9      15/11      9
#>  91:          90         F#            5     3x7x9      63/44     10
#>  92:          91          G            5    5x7x11      35/24     11
#>  93:          92         G#            5    1x9x11        3/2     12
#>  94:          93          A            5     3x5x7      35/22     13
#>  95:          94         A#            5     1x3x9      18/11     14
#>  96:          95          B            5    1x5x11        5/3     15
#>  97:          96          C            6    3x7x11        7/4     16
#>  98:          97         C#            6     1x3x5      20/11     17
#>  99:          98          D            6    5x9x11       15/8     18
#> 100:          99         D#            6     1x7x9      21/11     19
#> 101:         100          E            6    1x3x11          1      0
#> 102:         101          F            6     3x5x9      45/44      1
#> 103:         102         F#            6     1x5x7      35/33      2
#> 104:         103          G            6    3x9x11        9/8      3
#> 105:         104         G#            6    1x7x11        7/6      4
#> 106:         105          A            6     5x7x9     105/88      5
#> 107:         106         A#            6    3x5x11        5/4      6
#> 108:         107          B            6     1x3x7      14/11      7
#> 109:         108          C            7    7x9x11      21/16      8
#> 110:         109         C#            7     1x5x9      15/11      9
#> 111:         110          D            7     3x7x9      63/44     10
#> 112:         111         D#            7    5x7x11      35/24     11
#> 113:         112          E            7    1x9x11        3/2     12
#> 114:         113          F            7     3x5x7      35/22     13
#> 115:         114         F#            7     1x3x9      18/11     14
#> 116:         115          G            7    1x5x11        5/3     15
#> 117:         116         G#            7    3x7x11        7/4     16
#> 118:         117          A            7     1x3x5      20/11     17
#> 119:         118         A#            7    5x9x11       15/8     18
#> 120:         119          B            7     1x7x9      21/11     19
#> 121:         120          C            8    1x3x11          1      0
#> 122:         121         C#            8     3x5x9      45/44      1
#> 123:         122          D            8     1x5x7      35/33      2
#> 124:         123         D#            8    3x9x11        9/8      3
#> 125:         124          E            8    1x7x11        7/6      4
#> 126:         125          F            8     5x7x9     105/88      5
#> 127:         126         F#            8    3x5x11        5/4      6
#> 128:         127          G            8     1x3x7      14/11      7
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>      period_number       freq     cents ref_keyname ref_octave ref_offset
#>              <num>      <num>     <num>      <char>      <num>      <num>
#>   1:            -3   32.70320  2400.000           C          2          0
#>   2:            -3   33.44645  2438.906           C          2         39
#>   3:            -3   34.68521  2501.867          C#          2          2
#>   4:            -3   36.79110  2603.910           D          2          4
#>   5:            -3   38.15373  2666.871          D#          2        -33
#>   6:            -3   39.02086  2705.777          D#          2          6
#>   7:            -3   40.87899  2786.314           E          2        -14
#>   8:            -3   41.62225  2817.508           E          2         18
#>   9:            -3   42.92294  2870.781           F          2        -29
#>  10:            -3   44.59527  2936.951           F          2         37
#>  11:            -3   46.82503  3021.418          F#          2         21
#>  12:            -3   47.69216  3053.185           G          2        -47
#>  13:            -3   49.05479  3101.955           G          2          2
#>  14:            -3   52.02781  3203.822          G#          2          4
#>  15:            -3   53.51432  3252.592           A          2        -47
#>  16:            -3   54.50533  3284.359           A          2        -16
#>  17:            -3   57.23059  3368.826          A#          2        -31
#>  18:            -3   59.46036  3434.996          A#          2         35
#>  19:            -3   61.31849  3488.269           B          2        -12
#>  20:            -3   62.43337  3519.463           B          2         19
#>  21:            -2   65.40639  3600.000           C          3          0
#>  22:            -2   66.89290  3638.906           C          3         39
#>  23:            -2   69.37042  3701.867          C#          3          2
#>  24:            -2   73.58219  3803.910           D          3          4
#>  25:            -2   76.30746  3866.871          D#          3        -33
#>  26:            -2   78.04172  3905.777          D#          3          6
#>  27:            -2   81.75799  3986.314           E          3        -14
#>  28:            -2   83.24450  4017.508           E          3         18
#>  29:            -2   85.84589  4070.781           F          3        -29
#>  30:            -2   89.19053  4136.951           F          3         37
#>  31:            -2   93.65006  4221.418          F#          3         21
#>  32:            -2   95.38432  4253.185           G          3        -47
#>  33:            -2   98.10959  4301.955           G          3          2
#>  34:            -2  104.05562  4403.822          G#          3          4
#>  35:            -2  107.02864  4452.592           A          3        -47
#>  36:            -2  109.01065  4484.359           A          3        -16
#>  37:            -2  114.46118  4568.826          A#          3        -31
#>  38:            -2  118.92071  4634.996          A#          3         35
#>  39:            -2  122.63698  4688.269           B          3        -12
#>  40:            -2  124.86675  4719.463           B          3         19
#>  41:            -1  130.81278  4800.000           C          4          0
#>  42:            -1  133.78580  4838.906           C          4         39
#>  43:            -1  138.74083  4901.867          C#          4          2
#>  44:            -1  147.16438  5003.910           D          4          4
#>  45:            -1  152.61491  5066.871          D#          4        -33
#>  46:            -1  156.08343  5105.777          D#          4          6
#>  47:            -1  163.51598  5186.314           E          4        -14
#>  48:            -1  166.48900  5217.508           E          4         18
#>  49:            -1  171.69178  5270.781           F          4        -29
#>  50:            -1  178.38107  5336.951           F          4         37
#>  51:            -1  187.30012  5421.418          F#          4         21
#>  52:            -1  190.76864  5453.185           G          4        -47
#>  53:            -1  196.21917  5501.955           G          4          2
#>  54:            -1  208.11125  5603.822          G#          4          4
#>  55:            -1  214.05728  5652.592           A          4        -47
#>  56:            -1  218.02130  5684.359           A          4        -16
#>  57:            -1  228.92237  5768.826          A#          4        -31
#>  58:            -1  237.84142  5834.996          A#          4         35
#>  59:            -1  245.27397  5888.269           B          4        -12
#>  60:            -1  249.73349  5919.463           B          4         19
#>  61:             0  261.62557  6000.000           C          5          0
#>  62:             0  267.57160  6038.906           C          5         39
#>  63:             0  277.48166  6101.867          C#          5          2
#>  64:             0  294.32876  6203.910           D          5          4
#>  65:             0  305.22983  6266.871          D#          5        -33
#>  66:             0  312.16687  6305.777          D#          5          6
#>  67:             0  327.03196  6386.314           E          5        -14
#>  68:             0  332.97799  6417.508           E          5         18
#>  69:             0  343.38355  6470.781           F          5        -29
#>  70:             0  356.76213  6536.951           F          5         37
#>  71:             0  374.60024  6621.418          F#          5         21
#>  72:             0  381.53728  6653.185           G          5        -47
#>  73:             0  392.43835  6701.955           G          5          2
#>  74:             0  416.22249  6803.822          G#          5          4
#>  75:             0  428.11456  6852.592           A          5        -47
#>  76:             0  436.04261  6884.359           A          5        -16
#>  77:             0  457.84474  6968.826          A#          5        -31
#>  78:             0  475.68285  7034.996          A#          5         35
#>  79:             0  490.54793  7088.269           B          5        -12
#>  80:             0  499.46699  7119.463           B          5         19
#>  81:             1  523.25113  7200.000           C          6          0
#>  82:             1  535.14320  7238.906           C          6         39
#>  83:             1  554.96332  7301.867          C#          6          2
#>  84:             1  588.65752  7403.910           D          6          4
#>  85:             1  610.45965  7466.871          D#          6        -33
#>  86:             1  624.33374  7505.777          D#          6          6
#>  87:             1  654.06391  7586.314           E          6        -14
#>  88:             1  665.95598  7617.508           E          6         18
#>  89:             1  686.76711  7670.781           F          6        -29
#>  90:             1  713.52427  7736.951           F          6         37
#>  91:             1  749.20048  7821.418          F#          6         21
#>  92:             1  763.07457  7853.185           G          6        -47
#>  93:             1  784.87670  7901.955           G          6          2
#>  94:             1  832.44498  8003.822          G#          6          4
#>  95:             1  856.22912  8052.592           A          6        -47
#>  96:             1  872.08522  8084.359           A          6        -16
#>  97:             1  915.68948  8168.826          A#          6        -31
#>  98:             1  951.36569  8234.996          A#          6         35
#>  99:             1  981.09587  8288.269           B          6        -12
#> 100:             1  998.93398  8319.463           B          6         19
#> 101:             2 1046.50226  8400.000           C          7          0
#> 102:             2 1070.28640  8438.906           C          7         39
#> 103:             2 1109.92664  8501.867          C#          7          2
#> 104:             2 1177.31504  8603.910           D          7          4
#> 105:             2 1220.91930  8666.871          D#          7        -33
#> 106:             2 1248.66747  8705.777          D#          7          6
#> 107:             2 1308.12783  8786.314           E          7        -14
#> 108:             2 1331.91197  8817.508           E          7         18
#> 109:             2 1373.53422  8870.781           F          7        -29
#> 110:             2 1427.04854  8936.951           F          7         37
#> 111:             2 1498.40096  9021.418          F#          7         21
#> 112:             2 1526.14913  9053.185           G          7        -47
#> 113:             2 1569.75339  9101.955           G          7          2
#> 114:             2 1664.88996  9203.822          G#          7          4
#> 115:             2 1712.45825  9252.592           A          7        -47
#> 116:             2 1744.17044  9284.359           A          7        -16
#> 117:             2 1831.37896  9368.826          A#          7        -31
#> 118:             2 1902.73138  9434.996          A#          7         35
#> 119:             2 1962.19174  9488.269           B          7        -12
#> 120:             2 1997.86795  9519.463           B          7         19
#> 121:             3 2093.00452  9600.000           C          8          0
#> 122:             3 2140.57281  9638.906           C          8         39
#> 123:             3 2219.85328  9701.867          C#          8          2
#> 124:             3 2354.63009  9803.910           D          8          4
#> 125:             3 2441.83861  9866.871          D#          8        -33
#> 126:             3 2497.33494  9905.777          D#          8          6
#> 127:             3 2616.25565  9986.314           E          8        -14
#> 128:             3 2663.82394 10017.508           E          8         18
#>      period_number       freq     cents ref_keyname ref_octave ref_offset

# Bohlen-Pierce (13 equal divisions of a perfect twelfth aka "tritave")
bohlen_pierce_et_scale <- et_scale_table(bohlen_pierce_et_names, period = 3)
print(bohlen_pierce_et_map <-
  keyboard_map(bohlen_pierce_et_scale), nrows = 128)
#> Key: <note_number>
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>            <num>     <char>        <num>    <char>     <char>  <num>
#>   1:           0          C           -1     F#|Gb  3691/2419      5
#>   2:           1         C#           -1         G  2645/1593      6
#>   3:           2          D           -1         H   1646/911      7
#>   4:           3         D#           -1     H#|Jb  2090/1063      8
#>   5:           4          E           -1         J   2101/982      9
#>   6:           5          F           -1         A   1355/582     10
#>   7:           6         F#           -1     A#|Bb   1135/448     11
#>   8:           7          G           -1         B  6101/2213     12
#>   9:           8         G#           -1         C          1      0
#>  10:           9          A           -1     C#|Db  1197/1100      1
#>  11:          10         A#           -1         D    881/744      2
#>  12:          11          B           -1         E  1746/1355      3
#>  13:          12          C            0         F   1025/731      4
#>  14:          13         C#            0     F#|Gb  3691/2419      5
#>  15:          14          D            0         G  2645/1593      6
#>  16:          15         D#            0         H   1646/911      7
#>  17:          16          E            0     H#|Jb  2090/1063      8
#>  18:          17          F            0         J   2101/982      9
#>  19:          18         F#            0         A   1355/582     10
#>  20:          19          G            0     A#|Bb   1135/448     11
#>  21:          20         G#            0         B  6101/2213     12
#>  22:          21          A            0         C          1      0
#>  23:          22         A#            0     C#|Db  1197/1100      1
#>  24:          23          B            0         D    881/744      2
#>  25:          24          C            1         E  1746/1355      3
#>  26:          25         C#            1         F   1025/731      4
#>  27:          26          D            1     F#|Gb  3691/2419      5
#>  28:          27         D#            1         G  2645/1593      6
#>  29:          28          E            1         H   1646/911      7
#>  30:          29          F            1     H#|Jb  2090/1063      8
#>  31:          30         F#            1         J   2101/982      9
#>  32:          31          G            1         A   1355/582     10
#>  33:          32         G#            1     A#|Bb   1135/448     11
#>  34:          33          A            1         B  6101/2213     12
#>  35:          34         A#            1         C          1      0
#>  36:          35          B            1     C#|Db  1197/1100      1
#>  37:          36          C            2         D    881/744      2
#>  38:          37         C#            2         E  1746/1355      3
#>  39:          38          D            2         F   1025/731      4
#>  40:          39         D#            2     F#|Gb  3691/2419      5
#>  41:          40          E            2         G  2645/1593      6
#>  42:          41          F            2         H   1646/911      7
#>  43:          42         F#            2     H#|Jb  2090/1063      8
#>  44:          43          G            2         J   2101/982      9
#>  45:          44         G#            2         A   1355/582     10
#>  46:          45          A            2     A#|Bb   1135/448     11
#>  47:          46         A#            2         B  6101/2213     12
#>  48:          47          B            2         C          1      0
#>  49:          48          C            3     C#|Db  1197/1100      1
#>  50:          49         C#            3         D    881/744      2
#>  51:          50          D            3         E  1746/1355      3
#>  52:          51         D#            3         F   1025/731      4
#>  53:          52          E            3     F#|Gb  3691/2419      5
#>  54:          53          F            3         G  2645/1593      6
#>  55:          54         F#            3         H   1646/911      7
#>  56:          55          G            3     H#|Jb  2090/1063      8
#>  57:          56         G#            3         J   2101/982      9
#>  58:          57          A            3         A   1355/582     10
#>  59:          58         A#            3     A#|Bb   1135/448     11
#>  60:          59          B            3         B  6101/2213     12
#>  61:          60          C            4         C          1      0
#>  62:          61         C#            4     C#|Db  1197/1100      1
#>  63:          62          D            4         D    881/744      2
#>  64:          63         D#            4         E  1746/1355      3
#>  65:          64          E            4         F   1025/731      4
#>  66:          65          F            4     F#|Gb  3691/2419      5
#>  67:          66         F#            4         G  2645/1593      6
#>  68:          67          G            4         H   1646/911      7
#>  69:          68         G#            4     H#|Jb  2090/1063      8
#>  70:          69          A            4         J   2101/982      9
#>  71:          70         A#            4         A   1355/582     10
#>  72:          71          B            4     A#|Bb   1135/448     11
#>  73:          72          C            5         B  6101/2213     12
#>  74:          73         C#            5         C          1      0
#>  75:          74          D            5     C#|Db  1197/1100      1
#>  76:          75         D#            5         D    881/744      2
#>  77:          76          E            5         E  1746/1355      3
#>  78:          77          F            5         F   1025/731      4
#>  79:          78         F#            5     F#|Gb  3691/2419      5
#>  80:          79          G            5         G  2645/1593      6
#>  81:          80         G#            5         H   1646/911      7
#>  82:          81          A            5     H#|Jb  2090/1063      8
#>  83:          82         A#            5         J   2101/982      9
#>  84:          83          B            5         A   1355/582     10
#>  85:          84          C            6     A#|Bb   1135/448     11
#>  86:          85         C#            6         B  6101/2213     12
#>  87:          86          D            6         C          1      0
#>  88:          87         D#            6     C#|Db  1197/1100      1
#>  89:          88          E            6         D    881/744      2
#>  90:          89          F            6         E  1746/1355      3
#>  91:          90         F#            6         F   1025/731      4
#>  92:          91          G            6     F#|Gb  3691/2419      5
#>  93:          92         G#            6         G  2645/1593      6
#>  94:          93          A            6         H   1646/911      7
#>  95:          94         A#            6     H#|Jb  2090/1063      8
#>  96:          95          B            6         J   2101/982      9
#>  97:          96          C            7         A   1355/582     10
#>  98:          97         C#            7     A#|Bb   1135/448     11
#>  99:          98          D            7         B  6101/2213     12
#> 100:          99         D#            7         C          1      0
#> 101:         100          E            7     C#|Db  1197/1100      1
#> 102:         101          F            7         D    881/744      2
#> 103:         102         F#            7         E  1746/1355      3
#> 104:         103          G            7         F   1025/731      4
#> 105:         104         G#            7     F#|Gb  3691/2419      5
#> 106:         105          A            7         G  2645/1593      6
#> 107:         106         A#            7         H   1646/911      7
#> 108:         107          B            7     H#|Jb  2090/1063      8
#> 109:         108          C            8         J   2101/982      9
#> 110:         109         C#            8         A   1355/582     10
#> 111:         110          D            8     A#|Bb   1135/448     11
#> 112:         111         D#            8         B  6101/2213     12
#> 113:         112          E            8         C          1      0
#> 114:         113          F            8     C#|Db  1197/1100      1
#> 115:         114         F#            8         D    881/744      2
#> 116:         115          G            8         E  1746/1355      3
#> 117:         116         G#            8         F   1025/731      4
#> 118:         117          A            8     F#|Gb  3691/2419      5
#> 119:         118         A#            8         G  2645/1593      6
#> 120:         119          B            8         H   1646/911      7
#> 121:         120          C            9     H#|Jb  2090/1063      8
#> 122:         121         C#            9         J   2101/982      9
#> 123:         122          D            9         A   1355/582     10
#> 124:         123         D#            9     A#|Bb   1135/448     11
#> 125:         124          E            9         B  6101/2213     12
#> 126:         125          F            9         C          1      0
#> 127:         126         F#            9     C#|Db  1197/1100      1
#> 128:         127          G            9         D    881/744      2
#>      note_number name_12edo octave_12edo note_name ratio_frac degree
#>      period_number         freq        cents ref_keyname ref_octave ref_offset
#>              <num>        <num>        <num>      <char>      <num>      <num>
#>   1:            -5     8.175799     0.000000          G#         -3         22
#>   2:            -5     8.175799     0.000000          A#         -3        -32
#>   3:            -5     8.175799     0.000000           B         -3         14
#>   4:            -5     8.175799     0.000000          C#         -2        -39
#>   5:            -5     8.175799     0.000000           D         -2          7
#>   6:            -5     8.175799     0.000000           E         -2        -47
#>   7:            -5     8.175799     0.000000           F         -2          0
#>   8:            -5     8.175799     0.000000          F#         -2         46
#>   9:            -4     8.175799     0.000000          G#         -2         -8
#>  10:            -4     8.175799     0.000000           A         -2         38
#>  11:            -4     8.175799     0.000000           B         -2        -15
#>  12:            -4     8.175799     0.000000           C         -1         31
#>  13:            -4     8.175799     0.000000           D         -1        -23
#>  14:            -4     8.175799     0.000000          D#         -1         24
#>  15:            -4     8.175799     0.000000           F         -1        -30
#>  16:            -4     8.175799     0.000000          F#         -1         16
#>  17:            -4     8.175799     0.000000          G#         -1        -37
#>  18:            -4     8.175799     0.000000           A         -1          9
#>  19:            -4     8.175799     0.000000           B         -1        -45
#>  20:            -4     8.183011     1.526536           C          0          2
#>  21:            -4     8.904607   147.830767          C#          0         48
#>  22:            -3     9.689836   294.134997          D#          0         -6
#>  23:            -3    10.544307   440.439228           E          0         40
#>  24:            -3    11.474128   586.743459          F#          0        -13
#>  25:            -3    12.485942   733.047690           G          0         33
#>  26:            -3    13.586981   879.351921           A          0        -21
#>  27:            -3    14.785111  1025.656152          A#          0         26
#>  28:            -3    16.088895  1171.960382           C          1        -28
#>  29:            -3    17.507650  1318.264613          C#          1         18
#>  30:            -3    19.051514  1464.568844          D#          1        -35
#>  31:            -3    20.731519  1610.873075           E          1         11
#>  32:            -3    22.559671  1757.177306          F#          1        -43
#>  33:            -3    24.549034  1903.481537           G          1          3
#>  34:            -3    26.713822  2049.785767          G#          1         50
#>  35:            -2    29.069507  2196.089998          A#          1         -4
#>  36:            -2    31.632922  2342.394229           B          1         42
#>  37:            -2    34.422384  2488.698460          C#          2        -11
#>  38:            -2    37.457827  2635.002691           D          2         35
#>  39:            -2    40.760942  2781.306922           E          2        -19
#>  40:            -2    44.355333  2927.611152           F          2         28
#>  41:            -2    48.266686  3073.915383           G          2        -26
#>  42:            -2    52.522951  3220.219614          G#          2         20
#>  43:            -2    57.154542  3366.523845          A#          2        -33
#>  44:            -2    62.194558  3512.828076           B          2         13
#>  45:            -2    67.679014  3659.132307          C#          3        -41
#>  46:            -2    73.647101  3805.436537           D          3          5
#>  47:            -2    80.141467  3951.740768           E          3        -48
#>  48:            -1    87.208522  4098.044999           F          3         -2
#>  49:            -1    94.898765  4244.349230          F#          3         44
#>  50:            -1   103.267151  4390.653461          G#          3         -9
#>  51:            -1   112.373480  4536.957692           A          3         37
#>  52:            -1   122.282825  4683.261922           B          3        -17
#>  53:            -1   133.065999  4829.566153           C          4         30
#>  54:            -1   144.800058  4975.870384           D          4        -24
#>  55:            -1   157.568852  5122.174615          D#          4         22
#>  56:            -1   171.463626  5268.478846           F          4        -32
#>  57:            -1   186.583674  5414.783077          F#          4         15
#>  58:            -1   203.037041  5561.087307          G#          4        -39
#>  59:            -1   220.941302  5707.391538           A          4          7
#>  60:            -1   240.424402  5853.695769           B          4        -46
#>  61:             0   261.625565  6000.000000           C          5          0
#>  62:             0   284.696295  6146.304231          C#          5         46
#>  63:             0   309.801453  6292.608462          D#          5         -7
#>  64:             0   337.120440  6438.912693           E          5         39
#>  65:             0   366.848476  6585.216923          F#          5        -15
#>  66:             0   399.197998  6731.521154           G          5         32
#>  67:             0   434.400173  6877.825385           A          5        -22
#>  68:             0   472.706555  7024.129616          A#          5         24
#>  69:             0   514.390879  7170.433847           C          6        -30
#>  70:             0   559.751021  7316.738078          C#          6         17
#>  71:             0   609.111122  7463.042308          D#          6        -37
#>  72:             0   662.823907  7609.346539           E          6          9
#>  73:             0   721.273206  7755.650770          F#          6        -44
#>  74:             1   784.876696  7901.955001           G          6          2
#>  75:             1   854.088884  8048.259232          G#          6         48
#>  76:             1   929.404358  8194.563463          A#          6         -5
#>  77:             1  1011.361319  8340.867693           B          6         41
#>  78:             1  1100.545429  8487.171924          C#          7        -13
#>  79:             1  1197.593994  8633.476155           D          7         33
#>  80:             1  1303.200519  8779.780386           E          7        -20
#>  81:             1  1418.119665  8926.084617           F          7         26
#>  82:             1  1543.172638  9072.388848           G          7        -28
#>  83:             1  1679.253063  9218.693078          G#          7         19
#>  84:             1  1827.333366  9364.997309          A#          7        -35
#>  85:             1  1988.471722  9511.301540           B          7         11
#>  86:             1  2163.819619  9657.605771          C#          8        -42
#>  87:             2  2354.630088  9803.910002           D          8          4
#>  88:             2  2562.266651  9950.214233          D#          8         50
#>  89:             2  2788.213073 10096.518463           F          8         -3
#>  90:             2  3034.083957 10242.822694          F#          8         43
#>  91:             2  3301.636287 10389.126925          G#          8        -11
#>  92:             2  3592.781982 10535.431156           A          8         35
#>  93:             2  3909.601558 10681.735387           B          8        -18
#>  94:             2  4254.358994 10828.039618           C          9         28
#>  95:             2  4629.517915 10974.343848           D          9        -26
#>  96:             2  5037.759190 11120.648079          D#          9         21
#>  97:             2  5482.000098 11266.952310           F          9        -33
#>  98:             2  5965.415165 11413.256541          F#          9         13
#>  99:             2  6491.458858 11559.560772          G#          9        -40
#> 100:             3  7063.890263 11705.865003           A          9          6
#> 101:             3  7686.799954 11852.169233           B          9        -48
#> 102:             3  8364.639219 11998.473464           C         10         -2
#> 103:             3  9102.251871 12144.777695          C#         10         45
#> 104:             3  9904.908862 12291.081926          D#         10         -9
#> 105:             3 10778.345947 12437.386157           E         10         37
#> 106:             3 11728.804673 12583.690388          F#         10        -16
#> 107:             3 12543.853951 12700.000000           G         10         30
#> 108:             3 12543.853951 12700.000000           A         10        -24
#> 109:             3 12543.853951 12700.000000          A#         10         23
#> 110:             3 12543.853951 12700.000000           C         11        -31
#> 111:             3 12543.853951 12700.000000          C#         11         15
#> 112:             3 12543.853951 12700.000000          D#         11        -38
#> 113:             4 12543.853951 12700.000000           E         11          8
#> 114:             4 12543.853951 12700.000000          F#         11        -46
#> 115:             4 12543.853951 12700.000000           G         11          0
#> 116:             4 12543.853951 12700.000000          G#         11         47
#> 117:             4 12543.853951 12700.000000          A#         11         -7
#> 118:             4 12543.853951 12700.000000           B         11         39
#> 119:             4 12543.853951 12700.000000          C#         12        -14
#> 120:             4 12543.853951 12700.000000           D         12         32
#> 121:             4 12543.853951 12700.000000           E         12        -22
#> 122:             4 12543.853951 12700.000000           F         12         25
#> 123:             4 12543.853951 12700.000000           G         12        -29
#> 124:             4 12543.853951 12700.000000          G#         12         17
#> 125:             4 12543.853951 12700.000000          A#         12        -37
#> 126:             5 12543.853951 12700.000000           B         12         10
#> 127:             5 12543.853951 12700.000000          C#         13        -44
#> 128:             5 12543.853951 12700.000000           D         13          2
#>      period_number         freq        cents ref_keyname ref_octave ref_offset