From the help for Tune Smithy
Skip navigation Overview Seeds etc User guide Main Window Musical note intervals Scales Midi in Analyse sound
Hide Contents


Info, Scales options window , SCALA scales , SCALA scales and modes drop lists , Sort scales or arpeggios list, Search scales or arpeggios list, Make MOS or HyperMOS scales, Superparticular scales , Notation for n-et, scale notation, Ratios options, Calculator, Special notations .



This has help for the Scales options window.

For an introduction to the notations used, tuning systems and other background information, see Musical note intervals , also Scales, modes and intonation.

Related topics: The scales and Arpeggios section in the Seeds etc window, Make new Scale , and How to save your scale.

Other pages on this topic: Setting FTS up for SCALA and vice versa, and Making Moments of Symmetry and Hyper-MOS scales.

Javascript applets: Find the closest ratios for a scale, Make a new mean tone scale.


Scales options window

Bs | Scales options

Has buttons for these windows SCALA scales , Search scales or arpeggios list , Sort scales or arpeggios list . Make MOS or Hyper-MOS, Superparticular scales ,

It also has a few buttons and tick boxes of its own.

Reset Scales list

Reset Arpeggios list

These reset the Scales and Arpeggios or modes drop down lists for the main window. You can also reset them using File | Reset Scales and File | Reset Arpeggios .

It resets them to the ones you see when you first run the program - the scales list, and the short 12 tone arpeggios list.

Reset to More Scales list This takes you to the More Scales... drop list which you find at the end of the original Scales drop list. It's the one with the Windchimes scale, David Canright's scales, and so on. This is also where the SCALA Scales list gets added and also new scales lists you may make yourself using searches in the SCALA archive.

Find all arrangements of selected scales steps - this works on the scale shown in the main window Scale box. It re-arranges the steps - e.g. the just intonation pentatonic scale has steps of: small whole tone, large whole tone, minor third, small whole tone, minor third: 10/9 9/8 6/5 10/9 6/5. This will make all the possible scales you get by arranging those five steps in any order.

This is something one may want to do when making new scales. By way of example, one might make a scale from superparticular intervals (see next section), and then try for other re-arrangements of the same intervals to maybe make a scale one likes better. This will take a while if the scale has many steps- in which case, just click this button again to stop and you will see all the re-arrangements found so far.

Find all arrangements of all scales steps - finds all the ways of re-arranging the steps of all the scales shown in the main window Scale drop list. This will take a long time unless the scale is short

Show re-arrangements as steps in description - used with the search for all re-arrangements.

You want to show the scale in some form in the Scales drop list for use when you select them. One way is to show the steps of the scale, and the other way is to show the intervals from the 1/1.

This check box only affects the way the description is made for the description field, not the way the scale itself is shown below it or in the Scale as text window etc. You change that by selecting the or unselecting Steps . in the main window - but of course when you do that it doesn't change teh description used for the scale, so that is why this check box is needed when you construct the scales in the first place, so that they get appropriate descriptions.

Show all rotations of current scale - Here an example might help:

Rotations of scale: Japanese Koto scale

16/15  4/3  64/45  16/9  2/1  
 5/4   4/3   5/3   15/8  2/1  
16/15  4/3   3/2   8/5   2/1  
 5/4  45/32  3/2   15/8  2/1  
 9/8   6/5   3/2   8/5   2/1  

There, the scale has been rotated around. In the last line it is shown in its original form. But, if instead you start with the 1/1 at the original 9/8, then the next note will be the semitone step from 9/8 to 6/5, i.e. 16/15. The 3/2 is a 4/3 above the 9/8. Continuing in this way you can see that the first row is the same scale, but starting with the original 9/8 as the new 1/1. The next one is again the same scale, but starting from the 6/5 and so on.

This way of presenting a scale is a pretty useful way of seeing at a glance what all the intervals are. So for instance, the one step intervals we can read from the first column - they are 9/8, 5/4 and 16/15. The two step intervals are 4/3, 45/32 and 6/5 - and so on.



SCALA scales

File | Scales options | SCALA scales...

You can use this window to set FTS up to work with SCALA and vice versa.

You can make a drop list of all the scales in the SCALA archive, and also drop lists of Arpeggios for all the modes in the SCALA modes list. These drop lists give you a way to access these scales and modes quickly in FTS (with kind permission from Manuel Op de Coul).

You also need to tell FTS where the SCALA program is, and tell SCALA where FTS is. This lets you move any scale from FTS into SCALA to work with it in SCALA, and vice versa.

For details, see Setting FTS up for SCALA and vice versa.

Update smithy.cmd only... This is useful if you have several versions of FTS, or the same version installed in several different folders. You can click this button to change which one gets launched from SCALA when you use the @smithy command in SCALA. It will update it to launch the version you are running when you click the button. See also More about the @smithy command.

Show current scale in SCALA Click this button to launch SCALA with the scale you see in the main window Scales box in FTS already loaded. It also shows the scale in SCALA.

This is the output for the pygmie scale

Pygmie scale
  0:          1/1               0.000 unison, perfect prime
  1:          8/7             231.174 septimal whole tone
  2:         21/16            470.781 narrow fourth
  3:          3/2             701.955 perfect fifth
  4:          7/4             968.826 harmonic seventh
  5:          2/1            1200.000 octave

The third column can show various things. The Show current scale in SCALA button sets it to show cents. If you want to change this, see how it works.

Now that you have the scale in SCALA, you can use any SCALA command - see the SCALA help for details. I will just mention a couple often used by FTS users. (NB while exploring SCALA, be sure to explore some of the fun midi instruments in SCALA in its Analyse menu :-)).

For instance, try SH OW I NTERVALS to show all intervals between pairs of notes in the scale.

(you only need to type the letters in red: SH I )

Interval class, Number of incidences, Size:
  1:  3  8/7               231.174 cents  septimal whole tone
  1:  1  147/128           239.607 cents
  1:  1  7/6               266.871 cents  septimal minor third
  2:  1  64/49             462.348 cents
  2:  2  21/16             470.781 cents  narrow fourth
  2:  2  4/3               498.045 cents  perfect fourth
  3:  2  3/2               701.955 cents  perfect fifth
  3:  2  32/21             729.219 cents  wide fifth
  3:  1  49/32             737.652 cents
  4:  1  12/7              933.129 cents  septimal major sixth
  4:  1  256/147           960.393 cents
  4:  3  7/4               968.826 cents  harmonic seventh

The interval class is the number of notes that make up the interval.

As a Windows user it is likely that at some point you will want to be able to copy information from Scala to the clipboard. Here is how to do it: you need to use @c first. Then show whatever information you want to copy, e.g. using SH I , then finally use @copy to copy it to the clipboard. It needs to be done in this order:


This will copy all the output for the SH I command - all the lines shown in SCALA between

save output to ~copy.txt


copy output to clipboard

It doesn't matter what you do in the way of highlighting in SCALA, as that is ignored here. See the open_etc_readme.txt file included with SCALA for more details - this is a temporary measure, as Gtk, which SCALA uses for its Graphical User Interface, doesn't yet have a copy to clipboard.

You can also log all output from SCALA to a text file using File | Save text output to file - then use File | Close text file when finished - browse for your new file and open it, and open copy and paste from there instead. This is just a slightly quicker way to do it in Windows.

To show the intervals ordered according to size rather than interval class, use the /TOTAL switch:


Maybe now you wonder where some of these intervals are located in the scale. You use SHOW LOCATIONS for this.:

Let's find out where the other perfect fifth is:


Locations of 3/2:
 3: 0 - 3
 3: 1 - 4  diff. -35.697
 3: 2 - 5  diff. -27.264
 3: 3 - 6  diff. -27.264
 3: 4 - 7
Total of 5

It's found the two exact ones, and also the three approximate ones.

0 - 3 means degrees 0 and 3, i.e. the first and fouth notes of the scale. So this is the obvious one, from the first note of the scale up to 3/2.

Where is the other one? It's between the fourth and the seventh degrees, but the scale only has five notes. So, this interval straddles the octave division. In fact, it's between 7/4 and 21/8.

You can play it in Scala from Analyse | Chromatic Clavier , and play using the mouse, or using letter keys.

In FTS, you can use the music keyboard icon:

music keyboard icon.

You can play in it from the PC keyboard. Key 'a' (in qwerty layout - otherwise, the left-most key of third row of keyboard) plays the 0th degree of the arpeggio, and then the other degrees are played using the remaining keys across that row of the keyboard. You can see what the degree is because it gets shown on the keyboard as you play, and also the ratio - though you can change all this using the Options button below it in the main window.

In the same way, we can now look for the septimal minor third say:

Septimal minor third:

Locations of 7/6:
 1: 0 - 1  diff.  35.697
 1: 1 - 2  diff.  27.264
 1: 2 - 3  diff.  35.697
 1: 3 - 4
 1: 4 - 5  diff.  35.697
Total of 5

And so on...

How it works:

Show current scale in SCALA saves the currently selected scale as a file called xxx.scl in the SCALA folder. It then makes a command file Show_xxx.cmd , and runs SCALA with this as its start up command file.

This is what Show_xxx.cmd is like when first saved:

! show_xxx.cmd
! Load and show scale xxx.scl
load xxx.scl
set attribute cents
! exclude channel 10 for playing midi = Non Melodic percusion channel in GM synths / soundcards
set exclude 10

So, it loads the file xxx.scl, and shows it with the third row set to cents, as for the examples given. The lines beginning with an ! are SCALA comments - they don't do anything, but are just there to tell the reader what the file does..

You can edit it and change these commands, and add any other commands you like to it.

For instance, if you want to show something else in the third column, replace the word "cents" by one of the other SCALA attributes in the line:

set attributes cents

FTS leaves Show_xxx.cmd as it is once made. So any editing you do to this file is preserved. To make it anew, delete the old version. It will get remade next time you use Show current scale in SCALA again or when you next edit it from FTS.

More about the SCALA @smithy command

The other way you can go is to transfer a scale from SCALA to FTS, which you do using File | @smithy in SCALA. When you do this, it adds your current SCALA scale to your current drop list of scales in FTS as " Saved scale from SCALA ". If you do the same thing again, rather than keep adding more entries all called ths same thing, it replaces any entry in the list with the name Saved scale from SCALA . The same thing happens if you start FTS from the command line yourself, with a scale on its command line.

Once you've shown a SCALA scale in FTS for the first time, you can move this entry around using Bs | Scales Drop List (or the Ed button below the scales drop list). Wherever you put it, that's where the scale will get added in future. You can also use the Bs | Scales Drop List window to delete it from the drop list when finished with it in FTS.



SCALA scales and modes drop lists and configure smithy.cmd

File | Scales options | SCALA scales... | SCALA scales and modes drop lists and configure smithy.cmd

You can use this window to make new Lists of Modes (LMD) files and Lists of scales (LSC) from files in the SCALA archives.

List of Modes, Updating the twelve tone modes, List of Scales, Scala cmd file to run first

Lists of Modes

All the lists of modes that come with FTS, except the short 12 tone list, are from Manuel Op de Coul's modes lists, with his kind permission. For the most up to date versions, visit modename.html , which is updated more frequently than the file in the SCALA installer.

To make the modes lists, save modename.html file in any folder. Then enter it's folder in the Location of SCALA program box or browse to find it using the Browse for SCALA app. button for that box.

You will probably want to Select Add LSC files to "More scales..." drop list on Save or Open and Auto sort modes by - see below.

If you want to order the new modes lists in exactly the same way as the ones that come with FTS, select Auto sort modes by . with n+~i in the box next to it (least notes first, smallest steps first, most of the smallest steps 1st).

This order is a useful one for exploration of the modes for the first time, and experimentation, as it puts the modes with least notes at the top of the lists - these are often the ones that are easiest to improvise in. For other sort methods, see Sort scales or modes list .

Then click Make LMD files from SCALA list of modes .

This makes the LMD files for the drop lists of Arpeggios for each scale. It also makes an LSC file of all the scales for the modescalled SCALA Modes.lsc . This gets shown in the Scales drop list so that you can get to the modes lists via Scales | More | SCALA Modes...

If you selected Add LSC files to "More scales..." drop list on Save or Open , you can now find the modes via Scales drop list | More Scales | SCALA Modes . Alternatively, use File | Open | Files of type Lists of scales (*.lsc) and open SCALA Modes.lsc , then look in the Scales drop list.

Now click on a scale in the drop list and so long as you have Sync Arp. selected, you will then find the appropriate list of modes for it in the Arpeggio drop list.

Make LMD files from SCALA list of modes will update all the modes lists that come with FTS, except the twelve note modes.

top , start of section

Updating the twelve tone modes

To update the twelve tone mode drop lists to the most recent ones from SCALA, look for the new file for them that you have just made, probably called _12_tone_modes.lmd . (File name is the same as the title for the relevant section in modename.html , with spaces changed to underlines. File names that begin with numbers are then prefixed with enough underlines to right align the numbers in the first three characters).

Open it in a text editor.

Remove the line:

0 (comment) G = Greek, M = Medieval (ecclesiastical)

Do search and replace and replace G. by Gr., and M. by Med.

(this is because in FTS, when you re-order the lists, there is no easy way to keep the comment in a suitable place to explain the abbreviations, indeed, the lines that need them could end up anywhere in the list. So instead, I use the less abbreviated version of these, as was used in earlier versions of the SCALA modename.html file.)

Open the file 12_tone.lmd in a text editor (no underline at the beginning).

If you used Auto sort modes by . with n+~i then at this stage, you can compare the two files to see if there are any changes, e.g. by using fc 12_tone.lmd _12_tone_modes.lmd from the MSDOS prompt.

If there have been changes, you will need to update 12_tone.lmd .

Paste the entire contents of _12_tone_modes.lmd to replace all the lines between

1 100 cents !Equal Temperament (M)
*:12* Preset 12 tone list...


*12_tone_-_2_to_4_notes.lmd* 2 to 4 note modes...
*12_tone_-_5_notes.lmd* 5 note modes...
*12_tone_-_6_notes.lmd* 6 note modes...
*12_tone_-_7_notes.lmd* 7 note modes...
*12_tone_-_8_or_more_notes.lmd* 8 or more note modes... 

Prefix the first entry with a + to make it the one to select when the file is opened (or prefix whichever entry for this if you prefer).

Now you need to edit the files listed at the end of 12_tone_modes.lmd in the same way.

For instance, open 12_tone_-_2_to_4_notes.lmd in a text editor. Paste into this file all the lines with 2 to 4 note modes from _12_tone_modes.lmd

Then save it.

Repeat with all the others, each time pasting the appropriate modes.

An easy way to open these files for editing is to navigate to them in the Arpeggios drop list, and use the Ed buttons, and then Edit List - see Edit lists as text, .

I could progam FTS to do update all the 12-tone LMD files automatically, but it only takes a few minutes with this method, so there seems little point!

If not sure how to do all this, you can just wait for the next update of the twelve tone modes lists in FTS, or else, use the complete list of modes via Scales drop list | More Scales | SCALA Modes .

The modes lists can be edited by hand - each line in the file corresponds to an entry in the drop list.

For details of the format:

LMD files format

You can add tags to the html file to specify preset scales for the modes lists. For details see

LMD tags for Modename.htm

top , start of section

Lists of Scales

To make the complete drop list of SCALA scales, you can use the button Make list of scales (LSC) of all SCL files in current folder . You can use this to make a drop list of scales in any folder, however for this list, you need to download the SCALA scales archive which is from the SCALA download page. This is an archive of over 2000 scales.

Once you've downloaded it and unzipped it, use browse to find the folder with the SCALA . scl files, and click the Make list of scales (LSC) of all SCL files in current folder button.

This makes a file called SCALA Scales.lsc . It will be saved in the same folder as the . scl files.

When you make SCALA Scales.lsc . FTS copies all the entries in the .SCL files to the drop list file verbatim - uses the exact text in the .SCL file - except that it needs to add 1 for the first note of the scale, and to add the word cents after all entries which have a decimal point in them.

To add the list to Scales box | More scales , select File | Scales options | SCALA scales | Add LSC files to "More scales..." drop list on Save or Open before you make it.

You can get to your new list of SCALA scales from the Scales drop list by clicking More Scales... , then SCALA Scales...

Now just click on a scale to select it.

You can also open SCALA Scales.lsc using File | Open and select files of type Lists of scales .

You can also open individual SCALA scl files from File | Open and select files of type Scales .

You can paste the lines with the notes of the scale into the Intervals box. It doesn't matter that the notes are on separate lines - the program will put them all on a single line for you. You need to add a 1 to begin the scale if it's left out, as it is for all the scales in the Scala archive.

For Show current scale in SCALA , see previous section SCALA scales.

top , start of section

Scala cmd file to run first

FTS launches SCALA with the current scale by saving it to a file first.

Save name for scale to pass to SCALA - the name to use to save the current scale in the SCALA directory, for SCALA to read - preset to xxx.scl .

Then FTS starts SCALA with a .cmd file, which tells SCALA how to configure itself when it starts. The preset version of this file loads xxx.scl , shows it, sets SCALA to show scale values in cents, and to exclude MIDI channel 10 when playing Midi (non melodic percussion channel for GM soundcards / synths).

See How it works.

This option lets you can make three different command files, depending how you want to configure SCALA. Then before you show the current scale in SCALA, you can choose which you want to use here. Name them as you like, click the Edit button to edit the currently selected one, and the Reset button to reset to the preset version of it.

top , start of section


Sort scales or arpeggios list

Sorts any of the scales. or modes / arpeggios.

To show the scales listed alphabetically by the name, select

Which list to sort | scale descriptions , and Sort Method | a (alphabetical) .

Then click Sort Now . You will find that the main window scales list is sorted in alphabetical order.

The alpha-numeric sort can be used for either the descriptions or the definitions.

If you choose to sort the scale descriptions by any other method except alphabetical, it's assumed you want to sort the definitions by those. E.g. you could sort the scales alphabetically by the descriptions, and then according to the number of notes. Some of the sort methods refer to ratios - these of course have no meaning for arpeggio definitions, - if you sort the arpeggios by the number of superparticular intervals, or the max factor for ratios, that will be ignored.

Complete list of codes you can use:

Sort methods:

n = number of notes, i = smallest steps, s = largest superparticular intervals, t = no. of superpart. ints, a = alphabetic / numeric order for descriptions, b = alphabetic / numeric order applied to the definitions rather than the descr., r = max factor for ratios. v = sort by whether a scale has equal numbers of interval sizes in each interval class.

Options that affect the sort.

prefix - to reverse sort, + to sort normally, < to order normally, > to reverse order, ~ to apply to 2nd part of sort token pair, o to seach beyond octave for superparticular intervals.

These apply to all the options following them in the token - see examples below.

^ = skip details for some options, d = show number of step sizes.


The lists are sorted by making a sort token for each entry, then sorting those alphanumerically. Look at the Result sort tokens list to see these tokens. This can give you useful information about the results of the searches, so will be described here in some detail.

If you click on an entry in the Result sort tokens list, the corresponding scale will be selected in the main window.

A typical entry might be

n___17_ 22

That means, the sort method used was n (number of notes) , and the scale has 17 notes, and was the 22nd entry in the list before sorting.

Other sort methods are

i = smallest steps first

typical entry:

i___1.01364____5___1.05350___12_ 22

This means it had 5 intervals of size 1.01364 and 12 of size 1.05350, and was the 22nd entry before sorting. This is shown in decimal notation - where 1.5 means 3/2 - it happens to be a useful notation for making sort tokens to sort intervals by size in a drop list.

t = most superparticular intervals first.

typical entry:

t___31_ 22

That means, it had 31 superparticular intervals.

a = alphanumeric ordering of the entries.

typical entry:

a_Arabic_17-tone_Pythagorean_(M) 22

s = largest superparticular intervals first - looks for any intervals between any pairs of notes in the scale.

typical entry:

s___3.0____7___4.0___11___9.0___13_ 22

The numbers shown are the denominators.

So it had 7 3/2 s, 11 4/3 s, and 13 9/8 s

If you look at it in SCALA, you will see that it has 16 3/2 s - all except one of the fifths is pure. However the ' s ' search is only for intervals within the scale, and doesn't take account of the octave repeat.

To search beyond the octave, add an o before the s

The o only applies to entries after it.

Search: os

typical entry:

s___3.0___16___4.0___16___9.0___15_ 22

Use k if you want to switch the o option off again.


v = sort by whether a scale has equal numbers of interval sizes in each interval class; if so, order by the number of interval sizes per class.

Typical entry:

v____2___12_ 26

This means that the Arabic Pythagorean scale has 2 interval sizes for each interval class.

A scale that has two interval sizes in each class is known as Myhill. If it has three sizes, it can be called trivalent.

If the number of interval sizes in each class is the same as the number of notes in the scale, an = is added:

v_=___7___1.08110____1___1.08988____1___1.09177____1___1.09746____1___1.10063____1___1.11664____1___1.15269____1_ 19

This is the Xylophone from West Africa - there are no two intervals the same size in any of the classes.

Such scales are very common, and this is not a particularly special property of a scale. So all these scales get listed together under

Sometimes, you can make the same interval size using varying compositions in terms of the steps that make up the scale.

For these, sorts by number of duplicated intervals.

E.g. for this 6 note trivalent mode in 20-et (by Dan Stearn):

2 4 3 3 4 4

with intervals
LL LM MM LS = 8 7 6 6
LLM LLS LMM LMS = 11 10 10 9

 it is trivalent because LS = MM

This will be listed as having four duplicated intervals (the ones shown, and two other larger ones - their complements).

For the scales with an even number of notes, you can find out whether the scale includes its midpoint as an interval.

If it does, it will have m added after the first number.


^ = skip some of the details for some options. In particular, leaves out the interval size tokens.

So to take an example, if used with i , as i^ , it sorts the scales according to the number of the smallest step size for the scale. For instance, all the scales that have two steps in the smallest step size will be grouped together, whatever the actual sizes of the steps.

Amongst those with the same number of smallest steps irrespective of the size, sorts by number of next smallest step size, and so on.

d = include token for the total number of distinct step sizes before the interval results. Result is, all scales with same number of step sizes will be grouped together.

^ and d apply to t , s , and i .

Resolution used for the step sizes when counting how many there are of each size: two steps are treated as identical if when expressed in decimal format (1.25 for 5/4 etc) they differ by at most 0.00001 = between 0.0173 and 0.01 cents depending on step size.

You can change the resolution using the % sign:

% 0.001 to use coarser resolution of about 1.73 cents. As usual, applies to sort tokens that follow it in the expression.


to 0.02 cents depending on the interval size.

Reverse sort

You can use ' - ' to reverse sort. This works by subtracting all the numbers from 1000 (for ' a ', it replaces A by Z , B by Y , and so on, and ' 0 ' by ' 9 ', ' 1 ' by ' 8 ' and so on, so it reverse sorts within letters, or numbers, but keeps the numbers before the letters). It applies to all tokens that follow, until a ' + ' is encountered.

So for example -ni+a will sort by most notes first, then by largest steps first, but then because of the +a , will sort alphabetically rather than in the reversed alphabetic order.

One will most often use the alphabetical sort for the descriptions.

To sort the descriptions alphabetically, choose " Scale descriptions for the what to search box.

Since the idea of a number of notes doesn't make sense for the description, those options are always applied to the definitions of whichever list is being sorted by descriptions.

typical entry:

n__983_i_998.98636__995_998.94650__988_a_Arabic_17-tone_Pythagorean_(M) 22

The intervals, and numbers of notes have all been subtracted from 1000. For instance, the 983 is 1000-17 for the number of notes.

You can use ' ~ ' to apply what follows to the second half of the next token only.

For instance: o~-s will apply the ' - ' to the second half of the ' s ' token only, replacing an entry like s___3.0___16 with s___3.0__984

typical entry:

s___3.0__984___4.0__984___9.0__985_ 22

This o~-s is a useful option because it shows the scales with the largest superparticular intervals first, and amongst ones with the same largest superparticular interval, the ones with most instances of it first.

Combine it with ' t ' as: o-t+~-s and you have the scales with the most superparticular intervals first, then of those, the ones with the largest ones first, and amongst those, the ones with most of the largest ones first.

For the options ' s ' and ' i ', which produce lists of several numbers, you can use ' < ' or ' > ' to change the order in which they are shown.

The standard setting is ' < '

For instance: >i to show scales with smallest maximum size of step first

typical entry:

i___1.05350___12___1.01364____5_ 22

You can search the mode / arpeggio list in the same way.

Some of the modes lists, the ones linked to the original list of scales, were sorted using:


typical entry:

n____7_i___1.00__998___2.00__995_ 9

This shows least numbers of notes first, smallest steps first, and amongst those, the ones with most of the smallest steps first.

This one had 7 notes, 2 one note steps, and 5 two note steps. In fact, it was the diatonic major scale, steps 2 2 1 2 2 2 1.


Search scales or Arpeggios

File | Scales options | Search scales or arpeggios list...

This is especially useful for the SCALA modes or scales, because of the large numbers of entries in the lists.

Suppose, by way of example, that you want to find the Dorian mode. This is a mode of twelve tone scales so we need to look in the Arpeggios list for twelve tone scales. You get to the lists of twelve tone modes if you show any twelve tone scale, or use File | Reset Arpeggios drop list . .

Then choose All modes... in the Arpeggios list.

The Arpeggios list will now show the complete list of all the SCALA 12 tone modes, sorted according to number of notes, and numbers of smallest intervals.

Now go to Bs | Scales options | Search Scales or modes list..

Under What to search , choose Mode / arpeggio descriptions .

Enter Dorian in the words to find, and click Search Now .

Now look in the main window Arpeggios list. You will find five entries: pentatonic Dorian, chromatic Dorian, Chromatic Dorian inverse, Greek Dorian , Medieval Dorian (ecclesiastical). Here Medieval Dorian (ecclesiastical) is the common one - the system of names for twelve tone modes got changed in medieval times from the ones used in Greek times so that the same name came to be used for a different mode from the one it got used for before.

Under each of those entries, you'll see other names listed, including ragas - these are other names for the same mode,.

To show all these versions of the Dorian mode on the screen at once, so that you can compare them, select each in turn from the arpeggio / modes drop down list, and click the Arpeggio... button for each one. When playing from the PC keyboard, if you do it using the window that shows the PC keyboard layout of keys, you can use the tab key to cycle from each to the next through all the visible Arpeggios lists.

You can use the same idea to search the SCALA archive of over 2000 scales. First you need to make the file SCALA scales.lsc as described in the previous section under List of Scales - if you have made all the SCALA related files you have it already.

Then to find it go to Scales drop down list | More Scales...

Under Bs | Scales options | Search Scales or modes list | What to search , choose Scale descriptions .

Then search for whatever you are interested in.

N.B. Since the SCALA archive is continually evolving, your results will depend on the release date of the version you are searching. These results are for the most recent release at the time of writing this (December 2002).


When doing multiple searches of a large list of scales in this way, it can help to first show a New Arpeggio window to use to keep a copy of the main window drop lists.

Then unselect Sync modes and Sync scale with m. w. Now each time you want to refresh the list of scales, just click the -> Lists button in the New Arpeggio window to get it back as it was before you did the search.


Here are some example searches.

Most equal superparticular scales : result of search for:

most equal superparticular

with Find all selected and Exact match unselected

(12 entries)

Idiophones : result of search for:

idiophone xylophone marimba

(11 entries)

Bagpipe scales : result of search for:


(13 entries)

With that one I also made a drop list of the three modes of the Scottish Bagpipe scale, and associated it with all the Scottish bagpipe scales in the list.

For all the details of how the LSC files work see: List of scales format

The Canright scales in this list are from On Piano Retuning , Pentatonics I Have Known , and Superparticular Pentatonics , and are useful to have at hand when reading those articles. They were typed by hand, using the LSC format.

If you enter several words, it looks for entries containing any of them. For instance

Slendro Pelog : show all entries with the words Slendro or Pelog .

If you have several words, and want to find entries that include them all, search for each one in turn.

For instance, to find scales with all the intervals of the Pygmie scale, search the scale definitions for each one in turn.

The Scale definitions and Arpeggio definitions are the ones you see in the Intervals , and Note numbers boxes.

The excludes option works like this:

a b c ... !z !y !x ... : all entries with any of a, b, c and with none of x, y, z.


Slendro !Pelog : show all entries with the word Slendro, and without Pelog.

!z !y !x,... : any entries with none of x, y, z (i.e. no positive terms is taken to mean select from all entries)


search scale definitions for:

!3/2 : all scales lacking a perfect fifth.

Searches are for tokens, i.e. sequences of characters separated by white space.

If all the tokens you have entered to search for are alphanumeric, the search treats any non alphanumeric characters in the descriptions such as *:@~ etc as separators, i.e., equivalent to white space.

However if any of your tokens includes a non alphanumeric character such as &*@ etc, it treats it as a non separator for the search, i.e. as part of whatever word it is in.

So for instance, to search for any of the tokens: 2 3 4 5, exact match, and with ' / ' as a non separator, you just need to add " //// " as an extra token

2 3 4 5 ////

That will find any scales with 3, 4, or 5 as entries, but will ignore entries like 3/2 or 5/4, etc. Since the search is for " //// ", this will also ignore any entries consisting of just a single ' / ' (which is used in some of the descriptions of the scales in the SCALA archive).

One can search within previous results, for instance, search for 3/2, followed by 5/4, followed by 7/6 to find all the scales that include all these intervals

To further customise the search, you can prefix any of *, ~ or #

* = any ending, ~ = any beginning, # = exact match.

Use *~ to search for any beginning as well as any ending.

The exact match tick box ONLY affects tokens without prefixes.

exact match is equivalent to #

exact match unselected is equivalent to *

Scales Options | Search Scales or Modes list | Desired number of words .

Idea of this tick box is you can look for, say, 32 words in the scale def, to find all scales with 31 notes (32 including octave), etc. Useful as one often wants to look for a scale with a particular number of notes, and maybe some particular set of intervals, say, 5/4, 6/5 and 7/6..



MOS or Hyper-MOS scales

File | Scales options | Make MOS or Hyper MOS...

Moment of Symmetry, or MOS for short, is a term coined by Erv Wilson.

Pythagorean scales are made by stacking a series of 3/2s and then reducing into the octave, and this procedure can be generalised to other types of scale. Then you find that for particular numbers of notes you get only the two step sizes.

The pythagorean pentatonic scale, by way of example, has whole tones and minor thirds, while the diatonic scale has the whole and semitone step sizes, the twelve tone pythagorean scale has two sizes of semitone, and the arabic seventeen tone scale has two step sizes too. These scales have other special properties too. Other numbers in between lead to scales with three step sizes and are less symmetrical.

To make a MOS, go to

Bs | Scales Options | Make MOS or Hyper-MOS...

Then enter the generating interval, e.g. 3/2 for a pythagorean MOS. Then also enter the desired number of notes, and then click the apply buttons to apply it to the main window or a new scale window - or copy it to the clipboard.

For options, and explanaiton of the hypermos options, see Making Moments of Symmetry and Hyper MOS scales.



Superparticular scales

File | Scales options | Superparticular scales...

Background, How to, Options


A scale is superparticular if all the steps are the likes of 3/2, 5/4, 6/5, 7/6,... or generally, (n+1)/n for some n.

Examples of supe

rparticular scales:

just intonation diatonic: 1 9/8 5/4 4/3 3/2 5/3 15/8 2 steps 9/8 10/9 16/15 9/8 10/9 9/8 16/15

pentatonic: 1 9/8 5/4 3/2 5/3 2 steps 9/8 10/9 6/5 10/9 6/5

Superparticular scales tend to sound good. If two notes are related to each other by a superparticular interval, then they belong to the same harmonic series. The result is that the two notes together with their difference tone can all sound together with without any beats (provided they are sufficiently far apart from each other).

The difference tone is the difference of the two frequencies. It isn't actually present as a separate note (won't show up on frequency analysers), but is heard as an extra low note below them, if you listen carefully. It can sometimes be rather quiet, but is often fairly loud when the notes are perfectly in tune. Try the recorder voice to hear them particularly clearly, this is because of the purity of the sound of the recorder - when playing recorder duets (esp. without vibrato), one often hears them rather strongly like an extra base part, sometimes with unwanted notes! Play a 1/1 on recorder, then the 3/2, both fairly high, and see if when you play the 3/2, you hear a somewhat quieter note enter in at the same time below both of the notes played, in fact, an octave below the 1/1. If so, that's the difference tone!

To find out what pitch the difference tone will be for two notes select Bs | Scale | Options | What to show on keyboard Pictures | Beating Partials , then select Scale | Play , and play the two notes using the top row of keys on the PC keyboard. A window will pop up showing the numbers of beats for each of the harmonics, and the difference tone. The number of beats for the higher harmonics only applies for harmonic timbres as the actual beats heard depends on the frequencies of the partials, but the difference tone is the same frequency for any timbre.

Some examples of difference tones: For a fifth, the difference tone is an octave below the lowest note. For major thirds, two octaves below. For minor thirds, it is two octaves plus a major third below the lowest note (completes them to make a major chord).

Start of section, top

How to:

Click Find all superparticular scales to find a complete list of superparticular scales using David Canright 's algorithm, as described in Superparticular Pentatonics. Now look in the main window Scales Drop list to find them. The standard setting here is to find all the 5 note scales with superparticular steps between 81/80 and 5/4 and with the steps adding together as intervals (multiplying as ratios) to give 2/1.

The steps will be shown in decreasing size, for instance:

1/1 5/4 35/24 5/3 40/21 2/1

as steps:

5/4 7/6 8/7 8/7 21/20

So, next thing one will do is to choose one that interests you and click  Bs | Scales options | Make drop list all re-arrangements of ALL scale's steps to find all ways of re-arranging the steps. See Scales options window.

In this case, 60 re-arrangements are found. Let's now look for one with a 3/2 in it. Look in the definitions in the Intervals drop list. There are two possibilities, and maybe this one catches your eye:

1/1 8/7 6/5 3/2 7/4 2/1


8/7 21/20 5/4 7/6 8/7

Then we are done.

This list is small enough so that one can scan down it by eye. However, for larger lists one could explore the use of Search scales or modes list to find particular intervals of interest in the list, such as 3/2 or 5/4 or whatever.

Another way to use this window is to make a scale into a superparticular one by adding extra steps. Let's see an example of this.

The Pygmie scale: 1 8/7 21/16 3/2 7/4 2 steps 8/7 147/128 8/7 7/6 8/7 has four superparticular steps, and one wide step which is not superparticular: 147/128

Perhaps we'd like to make the Pygmie scale into a superparticular one by adding an extra note.

Enter 147/128 into the top interval box.

Set the number of notes to 2 , and leave the smallest interval (or range) at its standard setting of 81/80 - 5/4 .

Click the Find all superparticular scales button.

There is only one solution 9/8 49/48

Pygmie scale with superparticular interpolation: 1 8/7 9/7 21/16 3/2 7/4 2 steps 8/7 9/8 49/48 8/7 7/6 8/7

Or alternatively, one could put the two steps the other way round as: 1 8/7 7/6 21/16 3/2 7/4 2/1 steps 8/7 49/48 9/8 8/7 7/6 8/7

Start of section, top


You can set the number of notes in the scale, e.g. 5. You can also set a range of numbers here, e.g. 3 - 5 to do all scales of 3, 4 or 5 notes. Then, you set the top interval for the scale, e.g. 2/1 if you want to make a scale ending in 2/1, as is most usual. This means the steps add together as inervals to give 2/1 (i.e, the ratios to multiply together to give 2/1 as they are ratios and when you add intervals you multiply ratios).

Some searches will turn up many scales, so you can set Max scales to find - prest to 1000. Also, if you let some of the intervals be as small as you like you will probably get many results, so you can set a Smallest interval (or range) , say, 81/80 (the syntonic comma) as one usually won't want any steps smaller than that. To set a range, you do it as: 81/80 - 5/4 . This means you want the scale steps to be in between the syntonic comma and the natural major third in size.

The Max extra memory to speed search can be used for slightly faster searches - preset to 100 Kb as that is enough for a small search. The message will say how much was actually used for the search. Set this higher if you have plenty of memory and want to do a large search.

Start of section



Notation for n-et

Example: for 19-et, use:

1/1 4//19

You can alternatively use n(4/19) for 4//19.

This is a notation I've invented to give an easy way of typing equal temperament scales into the various scales boxes. One can read it as degree 4 of 19-et - so it's the note you make by using 4 in the Arpeggio for 19-et.

It is short for 2 4/19 , or as one would type it in the scales boxes: 2^(4/19), four nineteenths of an octave. This is the interval that is fairly close to 7/6; one of the special points of interest of 19-et.

Another example: 1//2 is the tritone (half an octave). The closest low numbered ratio is 7/5.

To show the scales in this notation, select File | scale notation & Number Opts | Cents, Et // notation, or small ratios .

Using this notation, the major chord of the twelve tone scale in the equal temperament scale is:

1/1 4//12 7//12 2/1

Here,4//12 is four twelfths of the octave, which is the same as a third of an octave - three twelve equal major thirds span the octave. So another way of writing it is as:

1/1 1//3 7//12 2/1

So you can cancel out common factors of the top and bottom numbers in this notation, just like normal ratios.

1/1 is also 0//1 or 0//12 etc

2/1 is also 1//1 or 12//12 etc

You can also make n-et scales using Bs | Scale... To do this, you type the number of steps you want for the octave into the Equal steps box (blank originally). Then select them in the usual way by clicking on the blue dots to make your new scale.

The diatonic scale for the 31-tone system (microtonal synthesis web site) is

Arpeggio: 0 5 10 13 18 23 28 31

or in the special

1 5//31 10//31 13//31 18//31 23//31 28//31 2

For the 19-tone system (microtonal synthesis web site) , it's

notes 0 3 6 8 11 14 17 19

or in the n(..) notation:

1 3//19 6//19 8//19 11//19 14//19 17//19 2

See Microtonal scales (Microtonal synthesis home page) , 31 note system



scale notation

File | scale notation

Use this window to choose what notation to use to show the scales.

You can use any of these notations to enter values - and it doesn't matter which one you are currently using to display the scale. For instance if you show the scale in cents and ratios, you can still paste a scale in using the hertz notation, so long as you include the Hz symbol after each entry like this:

440 Hz 513.333 Hz 660 Hz 880 Hz

You can also do this at any time, whether the current notation shown is hertz or cents, or ratios or whatever. The Hz in the 440 Hz shows that it is in hertz. More generally, just copy whatever notation is used to show the scale in any of the notations to enter values in that notation, at any time.

It is probably best to show the 1/1 if you want to work with hertz, so that you can see its frequency in the main window. With other notations it's probably best not to show it. When the first value of a scale is in hertz, it is taken as being the frequency for the 1/1 whether or not you choose to show the 1/1. This lets one change the pitch of the 1/1 just by prefixing a new hertz value before the first entry of the scale.

For more about these various notations see Calculator and Special notations.

Cents or small ratios - shows a close approximation to the interval as a small ratio if possible, and otherwise, shows it in cents. It shows cents if there is no pure ratio within the resolution that can be factorised entirely into small numbers less than 30 and with the quotient less than a million . All these paramaters can be configured from the Ratio Options | Max ratios quotient window. Anyway, to summarise in brief, this option uses the mixed cents / ratios notation most usually used for musical scales, and normally one can just use it as it is - only needs to be configured in rather special situations.

n-et cents or small ratios - this shows suitable values in a special n-et notation devised for the program. n(18/31) = 18th degree of 31-et. Configured using Ratio options | Max quotient for n(5/7) etc. notation . Again it will show them as cents or small ratios if those notations are more suitable and only uses the special n-et notation for values that are extremely close to integral number of steps of n-et for some n.

Show cents - Shows all values in cents (100 cents to a semitone, and 12 semitones to an octave).

Show hertz - Show the pitch in Hertz. Since this is absolute pitch, then as you change the pitch for the 1/1 from the Pitch window, the hertz values shown for the scale will change..

Pure decimal - shows all the numbers in decimal format. This means that you use, e.g. 1.25 for 5/4. This notation is rarely used for scales - cents notation or ratios, are more commonly used as they show the position of the note in the octave (cents) or its relation to other notes (ratios). However, pure decimal notation is sometimes useful, especially for quantities that can't be expressed as ratios. To take one example, the golden ratio is of musical interest because it is as far as you can get from any small numbered ratios, and the golden ratio is usually given in decimal notation. The golden ratio is used in two ways in scale construction - sometimes a scale may be defined using a golden ratio related number of cents, or sometimes as a golden ratio in pure decimal notation and here I'm talking about the pure decimal notation version of it..

The reason decimal notation is seldom used is that e.g. 1, 1.1, 1.2 and 1.3 in decimal notation gives us the notes 1/1 11/10 6/5 13/10 which are unequally spaced in the octave - to stack musical intervals, one needs to multiply ratios or values in decimal notation rather than add them. As a mathematician would say, we hear logarithmically (i.e. with addition in the place of multiplication). You can read more about this in the section Cents and Ratios.

To see the factors of the pure ratios, tick Factorize ratios

cents per octave Normally one uses 1200 cents per octave, i.e. 100 cents per equal temperament semitone. However when working with other numbers of tones per octave, it can be useful to use other numbers per octave, e.g. 1700 centisteps per octave for 17-et or 3100 centisteps for 31-et. etc.

This field lets one vary the number of cents per octave in order to make a notation especially suitable for work with such scales.

So for example the major third in cents is 386.314 cents. It's close to the tenth degree of 31-et and in fact in 31-et cents the major third is 997.978 (just a bit short of 1000 = 10*100)..

So FTS shows that as 997.978 cents=31. Alternatively you can write it as 31=997.978 - to show it that way select Use SCALA convention decimal point for cents .

The = is a kind of shorthand notation for "equal temperament"... :-).  

You have to do it all as one word 31=997.978 so that it is clear where one entry ends and the next begins - because otherwise the 31 there would be read as 31/1. Similarly if you use the words, you need to enter it as cents31= all in one word.

Then for example, 3/2 is 1813 cents31= i.e. 13 percent of the way between 1800 cents31= and 1900 cents31=, i.e. between the 18th and 19th degrees of 31-et.

The box to the right of it will let one set the number of centisteps for a non octave interval as well, such as 3/2, 3/1 etc.

Here's an example

9(3/2)=495.306  9(3/2)=900.0  9(3/2)=1538.56

That is the major chord 5/4 3/2 2/1 in Wendy Carlos's alpha scale of 9 equal divisions of 3/2. As you see, you put the interval of repetition in brackets after the number that shows the number of 100 cent units - here there are 9*100 "cents" to a 3/2 so the 3/2 is shown as 9(3/2)=900.0, and the 5/4 as 9(3/2)=495.306 - i.e. 495.306 centisteps using nine equal divisions of 3/2. As you see, in this notation, the major third 495.306 is close to 500.0 so close to the fifth step of this scale system.

I got the idea of this notation from a post by Margo Schulter to the tuning list suggesting the iota as a tuning measurement - this is a particular case of centisteps where one has 1700 centisteps (iotas) to an octave. The name centisteps as a generic term for this type of notation was also suggested by Margo Schulter.

Set this notation as the one to call "cents" This let's one choose to call any of the notations plain cents.   The advantage of doing that is that you can just use the word cents when entering values, or use shortcuts such as the SCALA convention.  

You can still use the notation 12= to enter 12-et based values. For instance if you have set the notation to Wendy Carlos's alpha, you could enter the major chord in mixed notation as:   495.306 12=701.955 2/1 using the 12= value for the 3/2 as 701.955 cents.

Show cents as diffs from [ 12 ] et . - in particular case of 12, this can also be useful for finding cents values to use for synth tuning tables.

If one changes the number to say 13-et, you will see this:

n(0/13) zn(3/13)-10.05 cents zn(8/13)-36.5 cents n(13/13)

The z converts the n-et notation value to cents so that you can add or subtract the difference to / from it. It's done this way as it is then easy to see which scale degree it is a difference from. If all teh values were in cents one couldn't easily see that.

You can read zn(3/13)-10.05 cents as (3rd degree of 13-et as cents - 10.05) cents

Here one could choose to use1300 for the cents per octave box too, then you see:

0 cents13= 300-10.89 cents13= 800-39.55 cents13= 1300 cents13=

- so you see the cents diffs in the thirteen equal relative cents notation.

Use SCALA convention decimal point for cents The word cents is omitted. All values in cents are shown with decimal point: 152.0 for 152 cents. This is useful when entering scales by hand, and makes the scales easy to read too. It is the convention used for entering scales into the SCALA program by hand, so SCALA users will be particularly used to it. The other way a decimal point could be understood is as 1.5 = 3/2. However, in scale definitions, one usually uses either cents, or ratios, and the pure decimal notation is seldom used, so the SCALA convention is very convenient ..

With this option , the relative cents notation is shown as

31=1813 , 13|3=1300.0 , etc. You don't need to include the decimal point actually, as the = symbol itself is a sufficient clue that it is in relative cents notation.

You have to do it all as one token, i.e. no spaces between the 31=part and the number that follows (otherwise FTS will think the 31= part and the 1813 part are two separate notes in the scale).

You can use it in conjunction with the Show Hertz option (although that also uses decimal points, the Hz shows that the values are actually hertz rather than cents).

Use of ratios with this option :

Any formula that includes the symbol / is read as a ratio, whether it includes a decimal point or not.

You can use the pure decimal notation with this convention, if you type 1.5 as 1.5/1 .

If you have the SCALA convention selected, and want to use the symbol / to express some fraction of a value in cents:. 1200.0/7 then add the word cents: 1200.0/7 cents , or use ' or ` to show that it is in cents: '1200.0/7 .

Alternative cents notations

This is a notation for those who are reasonably comfortable with the idea of number systems with varied radixes.

In twelve tone equal, the usual convention of 100 cents to a semitone works well, with 1200 cents to an octave. However in, say 5-et, one can't immediately see how close or far away a number is from the exact division into 5 notes.

To introduce this notation, let's see the main window Slendro scale in base 5 notation:

0 cents5 44.3 cents5 142.1 cents5 243.2 cents5 341.3 cents5 1000 cents5

You can use cents5 instead of cents to show that it is to base 5.

In base 5, one counts consecutively like this:

1, 2, 3, 4, 10, 11, 12, 13, 14, 20, 21, 22, 23, 24, 30,... 44, 100, 101, ...

= (to base 10)

1, 2, 3, 4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15,... 24,  25, 26, ...

100 = 25, and 1000 = 125, and 5-et is 0 100 200 300 400 1000

So 44.3 cents5 is in the vicinity of 100 cents5 , so we see this is an approximately five equal scale, as most Slendro scales are:

0 cents5 44.3 cents5 142.1 cents5 243.2 cents5 341.3 cents5 1000 cents5
0 cents5 100 cents5  200 cents5   300 cents5   400 cents5   1000 cents5

The one that's furthest away is at 341.3 cents5, which is 3.2 cents5 away from 400 cents5, or a little under a semitone.

In fact, selecting Show cents as diffs from 5-et we see

1/1 100-0.22 cents5 200-2.34 cents5 300-1.3 cents5 400-3.2 cents5 2/1

Even in base 12, it can be interesting to use base 12 notation, with a=10, and b=11, so that you still have a semitone of 100 cents, but you use a00 instead of 1000, b00 for 1100, and 1000 for 1200.

This is just intonation

0 centsc a9.b centsc 1b0.9 centsc 2b3.7 centsc 3a9.b centsc 4b9.2 centsc 5a7.1 centsc 6b6.4 centsc 7b0.9 centsc 8a7.1 centsc 9b6.4 centsc ab0.9 centsc 1000 centsc

In base 17 one counts:

1 2 3 ... 9 a b c d e f g 10 11 ... 19 1a 1b 1c 1d 1e 1f 1g 20.. 90 ... a0... b0...  ... g0 g1 g2 ...g9 ga gb gc ge gf gg 100 etc.

The base can go up to 36, which needs all the digits and all the letters of the alphabet.

Here is quarter comma meantone to base 31. v=31, u =30, t = 29,... a = 10

0 centsv 1tr.u centsv 4ul.9 centsv 80e.i centsv 9ub.h centsv d04.r centsv eu1.q centsv huq.4 centsv jtn.4 centsv mug.d centsv q09.m centsv ru6.m centsv 1000 centsv

That's not so easy to read, however, 1tr.u is very close to 200, and 4ul.9 is even closer to 500. The u is just one less than v which is the "10" of this base. d04.r is just above d00 - so just a little over 1400 cents=31 = as the d is the fourteenth digit in this system.

I don't suppose one will use this notation regularly, but it can be useful on occasion.

You can set the octave to some other value than 2/1, e.g .3/1 for Bohlen Pierce scales.

When one has Scala convention, decimal point = cents, then you use 5"44.3 to mean 44.3 cents5 .



Ratios options

File | scale notation & Number Opts | Ratios options

You can change the highest factor to look for using the Max factor box.

Set this to 1 to look for any ratio, whatever it's factors.

If set high, or to 1, you may find that the program pauses a while when testing or factorizing large numbers. It's factorizing algorithm isn't particularly fast. If it get's held up for a while, hold down the escape key to break out from factorizing.

Tolerance in cents for pure ratios . Idea of the tolerance one is that if you enter a value like 1 cents, then it will find the closest pure ratio to the values in cents.


Gamelan from South Bali (Slendro)

1/1 235.419 cents 453.56 cents 704.786 cents 927.453 cents 2/1

Set the tolerance to 6 cents and you find that to within 6 cents it is

1/1 8/7 13/10 3/2 12/7 2/1

Set the tolerance to 1 cent and you get

1/1 55/48 13/10 918/611 41/24 2/1

(so the 13/10 is pretty close!)

You can also set a list of prime factors to search for.




File | scale notation | Calculator

Type in any expression into the Values field and you can show it as cents, ratios etc, and see what the result is - this is a straightforward text based calculator, but with special extra features useful for scales work.

Choice of ways of entering your expression:

ratios or decimal - 5/4 means the just intonation major third, and can also be written as 1.25.

cents - all numbers are in cents, e.g. 400 = twelve equal major third. Now 1.25 will mean 1.25 cents.

Same as main window scale - you can then use any of the accepted methods of entering values in the main window and other scale boxes. See scale notation for these. You can enter cents values by entering the number followed by the word cents, or you can also as a shortcut use ' or ` for cents e.g. '386 for 386 cents. Or if you use the SCALA convention (which is now the preset in FTS), just make sure you include a decimal point 386.0 and your value will be understood as cents. However you can also use the lattice notation, the alternative cents notation, the n-et notation, or hertz, or any of the notations that FTS understands for scales.

You see the result evaluated in the Results field. This field changes instantly as you change the expression. The drop list has choice of various ways to show the result - as cents, ratios or decimal, decimal only, or in the same way as the main window scale.

Expressions used in the calculator can have spaces: 5 / 3 etc.

However, normally, in other places in FTS, particuarly ones where you have several entries such as the scale fields, the expression for each entry has to be typed without any spaces, to make it easy for the program to find out where one number ends, and the other begins (otherwise it will try and run everthing together into a single expression).

These formulae can be typed into all the places where you can enter scales for FTS, and in fact, most of the fields will accept the same expressions, even ones where it isn't particularly much needed such as the number of parts in play etc - if you wanted to you could enter the number of parts as sqrt(25)*cos(0) and it would still be understood. Obviously if the number expected is an integer, it gets converted to an integer first, so if you enter PI for the number of parts, then it will be read as 3.

Use * for multiplication and / for division. Use ^ for exponentiation, so 2^3 means 2*2*2 = 8. You can have as many brackets as you like nested to as many levels as you like.

That covers most of what one needs. .

One notation is useful for making scales based on various numbers of equally sized steps- n for n-et notation (same as the 4//19 type Notation for n-et, which you can use in its place). The way it works is that n(4/19) is the fourth scale degree of 19-et. You can read it as a fractional octave notation, so n(4/19) means four nineteenths of the way through the octave - that's to say four nineteenths of the percieved pitch distance between 1/1 and 2/1. So it isn't a pure ratio type notation - in fact, the nearest ratio is 7/6, in this case. Cents is a fractional octave type notation too, dividing the octave into 1200 parts, so you could write for instance, 386 cents as n(386/1200).. You can use decimal points in this notation so e.g. n(4.1314 / 19) or whatever is valid.

It's case insensitive: N() is the same as n() . Also, M() is the same as N() , for compatibility with very early versions of the program.

You can't normally mix this notation, or any other notation with cents.

To show how this works let's take an example. n(1/5) is 240 cents, but as a pure decimal is 1.149. Syppose you want the note 2.3 cents above n(1/5).

Ones first thought might be to write n(1/5)+2.3 cents however, that will be read as (1.49 + 2.3) cents - with the decimal value used for the n(1/5). So there you need some way to indicate that you want to use its cents value.

For mixed expressions like this, use the letter z to convert a value to cents so that you can add it to the cents value, like this:

zn(1/5)+2.3 cents - which will make a note 2.3 cents above n(1/5), i.e. 242.3 cents .


Other symbols:

Exp() = natural exponential
= natural log.

You can leave out the bracket if the symbol is followed by a number immediately, e.g. Log2 is short for log(2) ). Then, by way of example, by the rules of logarithms and exponents, 2^3 will give the same value as Exp(3*Log2), which is 8.

You can use all the usual trig functions like Sin, Cos,Acos, Sinh, Cosh etc, also you can use J0, J1 etc for Bessel functions - these are used lfor making waveforms in FTS in the option to synthesize a chord in the New Scale and New Arpeggio windows. You can also use the step function K(a.x,c) = 1 for a < x <b, otherwise 0. So for instance K(1, 1.5, 2) is 1, and pi * K(1, 1.5, 2) will be the saem as pi. That's not particularly useful in the calculator but can be very useful for making some waveforms and you can use it in the calculator if you want to investigate how the waveform values get calculated.

The trig functions expect angles in radians - this is a measure based on the amount of the circumference of a circle swept out by the angle. So the full circle sweeps out two pi radians, pi is180 degrees, and pi/2 is 90 degrees. So for instance, sin(pi/2) in radians is the same as sin(90) in degrees = 1.

Most of these can be abbreviated to just the first letter. So abbreviations recognised nclude: P (for PI), G (for PHI), R (for SQRT), L for LOG, E for EXP, C for COS, S for SIN, T for TAN, and also (running out of initial letters at this point) H for COSH, I for SINH, U for ACOS, and V for ASIN.

You can use Exp1 or E1 for e because the natural logarithm of 1 is e.

One might wonder what connections these notations have with scales. As it happens there is a lot of interest in golden ratio scales, partly because the golden ratio is in a certain sense "As far away as one can get from a pure ratio", and because of the similarity properties it has, and because it just makes very nice scales sometimes. There's also interest in using pi to define some scales. Square roots are often used as they correspond to dividing an interval exactly in two, e.g. a meantone is a square root (the square root of 5/4). I don't know of any use of cos, sine, or e to construct scales, but one never knows... They are there anyway if anyone needs them.

The calculator recogniseds a comma ' , ' as a way of listing values. So if you do a list such as 5/4, 6/5 then you can use the options there to show all the numbers in teh list multiplied together (in this case, 3/2), divided (here, 25/24), added, subtracted etc. You could do these just as well using brackets, e.g. (5/4) * (6/5), and this option to add or multiply etc a list of values has the same effect as that, but saves you a bit of typing.

The comma is just ignored in scales, treated as a way of separating the values, like spaces. So for instance, 1/1, 9/8, 5/4, ... can be used if you prefer to enter your scales like that.

In single entry fields, the comma is treated as an ' , ' alternative to a decimal point ' . '. This is because it is fairly easy to type 0,8 instead of 0.8 - the comma and full stop keys are next to each other on the standard keyboard. They also look similar when the font size is small. If it wasn't done this way, the parser would read 0,8 as 0 , which could cause some puzzling moments, for instance if it is the sustain, so that the notes are set to length 0, and you no longer hear anything.

Recognises ' (apostrophe character) as a shorthand for cent. The ' applies to the number following it . So ' 100 means 100 cents. Techy note;: ' x is short for 2 x/1200 . You can use the ` char (prob. to the left of 1 on your keyboard) as an alternative to ' .

You only need the single apostrophe before the number.

Ratios are calculated exactly in the Calculator.. It can use 64 bit numbers for both denominator and denumerator, which means that it can handle numbers exactly up to 2^63-1, which is large enough for all but a few very specialised tuning needs. Beyond that point, it will keep the ratio as a double precision floating point format number - which means that - it keeps a record of the first fourteen or fifteen decimal places of each number, and along with that, in a separate field (the mantissa) it stores another number for the position of the decimal point.

When you set it to show prime factorisations of a number, it uses a look up table of the first 1000 primes up to 7919 . That is fine for nearly all except very specialised tuning needs as most scale constructors use low number primes - but a few do use very large primes indeed. It will be able to completely factorise any number up to 62710561 (7919^2). For larger numbers, it shows all prime factors up to 7919 but may miss out higher ones.

There's a very impressive on-line factorising java applet here if you want to check the factorisation of larger numbers - - wait for the applet to load. Then enter any number into the top line into the applet. E.g. something like 1234710293478019875098170289750198275089127 or whatever - it can be a really long number. It will factorise it almost instantly.  

Earlier versions of FTS used the double precision format only in the rest of the program, and relied on converting those to ratios as needed (ratios could normaly be recognised and distinguished from cents and n-et values if they were very close to a double precision number and if they had no prime factors greater than 50)

However now most of the program can recognise 64 bit ratios just like the calculator. At present a few parts still do this conversion of double precision numbers to ratios as needed (for instance for display of chord ratios using the y notation) - gradually the whole program should get converted to the new format.



Ratio Options

You can increase the maximum quotient from File | scale notation | Ratio options .

(work in progress)



Special notations

Harmonic series - Hertz - Geometric sum Harmonic sum - Warp - Formula Product and Sum - More details for the harmonic series notation.

To experiment with these to see how they work, try showing a Bs | New Scale... window. Then you can see how the pattern of the blue dots changes as you change the notation. For the harmonic series ones you will probably want to show a much wider span in octaves - use the Width in Octaves field for this.

You can use these notations in the scale definition area - e.g. if you ener h 2/1 there then you make a harmonic series scale.

The sum, product and warp notations make a scale with many terms in it (as many as you like). You can enter the scale into the scale definition field, however, with these large scales, you may want to enter it in the scale description, which you can do using e.g.

Make Scale geometric 1/2.


Make Scale h 2/1


This works in the main window description field, or the Scale and Arpeggio as Text window - or the New Scale window - there you can enter it in the Select from field or the New Scale field.

With the

Harmonic series notation

The thing about the harmonic series is that you can't describe it as a repeating series in cents notation or ratios, so this particularly needs a special notation. As you go up the scale, the notes get closer and closer together and so there is no repeat of the whole thing. It continues without a repeat, on and on, and eventually gets beyond the range of human hearing.

You can make a harmonic series using:

h 2/1

The idea is that you enter just the one term of the series after 1/1 assumed as the previous term, here the 2/1, and this gets expanded into an entire harmonic series.

1/1 2/1 3/1 4/1 5/1 6/1 7/1 8/1 9/1 ... (as many notes as you need for the tune)

Or in hertz, suppose that one started at 440 Hz:

220 Hz   440 Hz   660 Hz   880 Hz ...

So you just keep adding 220 Hz.

Treating 220 Hz as the 1/1, it works like this:

220/220 440/220 660/220  880/220 ...
  1/1     2/1     3/1      4/1   ...

What then about notes below the 1/1, played on keyboard, or PC keyboard or as part of the fractal tune? The harmomic series starts at 1/1 so doesn't go below 1/1.

The answer is that FTS plays the subharmonic series:

. .. 1/9 1/8 1/7 1/6 1/5 1/4 1/3 1/2 1/1 2/1 3/1 4/1 5/1 6/1 7/1 8/1 9/1 ...

You can enter other numbers here in place of the 2/1

In the same notation, h 6/5 makes a harmonic series

1/1, 6/5 7/5 8/5 9/5 .,..


1/1, 1+1/5, 1+2/5, 1+3/5, ...

Since 6/5 is the ratio of the sixth to the fifth harmonic, this gives a harmonic series from the fifth harmonic upwards.

If you are used to thinking in terms of hertz, this one, starting at 220 Hz, is

220, 220+(220/5), 220+(2*220/5), 220+(3*220/5),...

So the way it works is that you keep adding 44 Hz, the difference in hertz between the 1/1 and the 6/5.

In fact, it will be the harmonic series on the note at 44 Hz, (i.e. 220/5) but missing out the first four terms.

If you enter a number less than 1, say h 1/2 , in place of the h 2/1 , this just reverses the scale, so that it goes down in pitch as it goes to the right.

There are other options you can use too with this notation. See More details for the harmonic series notation.

top , start of section

Hertz notation

You can enter a scale in hertz, using the Hz symbol, like this:

220 Hz 440 Hz 660 Hz 880 Hz

One should select Show 1/1 before using this notation, so that you can see and set the pitch for the 1/1 as well as the other notes.

Also, to see all scales in this notation, use File | scale notation | Hertz .

When you enter the scales, you can mix all the notations, e.g. mixed hertz and cents and ratios, e.g.

440 hz 5/4 3/2 2/1

That will make a major scale starting at 440 Hz, and so this method gives one an alternative way to change the pitch of the 1/1 without first showing the Pitch window.

If all the values are in hertz, you can just put a z at the beginning:

z 300 350 450 600 (Septimal minor chord in hertz, pitch for 1/1 = 300 hz)

You need to leave a space after the z.

In the same way,

n = n-et notation. n(2/7) for 2nd degree of 7-et etc.

c = cents notation

r = go back to normal mixed cents / ratios / hertz / decimal notation

You can change the notation in the middle of a scale like this:

z 300 350 r 3/2 c 1200

which again makes the septimal minor chord.:

top , start of section

Geometric sum notation

#g 1/2 or

geometric 1/2

or in the description field: Make Scale g 1/2 or Make Scale geometric 1/2

for the geometric sum (what mathematicians call a series) n(0), n(1), n(1+1/2), n(1+1/2+1/4) , ...

i.e. 0 cents 1200 cents 1800 cents 2100 cents 2250 cents 2325 cents 2362.5 cents 2381.25 cents,...

each interval half the previous one

It would be

#g 1/3 for n(0), n(1), n(1+1/3), n(1+1/3+1/9) etc, and so on, each interval a third of the previous one.

The number after the #g is the common ratio for the series.

top , start of section

Just version of the Geometric sum notation

#j 1/2


JustGeometric 1/2

for thesum (series) 1, 1 + 1/2, 1 + 1/2 + 1/4. ...

i.e. 1/1 2/1 5/2 11/4 23/8 47/16 95/32,...

This is the mathematician's use of the word "harmonic series" - not in general the same as the musicians hamonic series as you can see.

However, if you do

harmonic 1/1

that does make the musicians harmonic series.

top , start of section



warp 37.52 7 ! Seven equal with 37.52 cents sine warp.

142.094 306.278 498.006 701.994 893.722 1057.906 2/1

Divides 2/1 into 7 equal divisions, then adds a sine wave warp so that pitches get streteched away from the centre of the scale - maximum warp is by 37.52 cents. This is the scale for mobile in sine warped seven equal

The format is

warp <cents warp> <number of equal steps> <interval to divide up>

If you leave out the interval, you make it with 2/1 as the interval to divide up. If you leave out the number of notes as well, then you will make a twelve tone scale.

To make equal divisions without any warp using the same instruction, you go:

WARP 0 11 3/2

(or in the scale descritpion field, MAKE SCALE WARP 0 11 3/2)

The first number after the scale making instruction is the amount of warp, which is 0. The second is the number of divisions,and the third is the interval to divide.

Enter that as the description of your scale (just that and nothing more) and the scale will change to show:

63.814  127.628  191.442  255.256  319.07  382.885  446.699  510.513  574.327  638.141  3/2

which is eleven equal divisions of 3/2.

Now add a bit of warp

MAKE SCALE WARP 12.172 11 3/2

57.233  116.556  179.394  246.057  315.641  386.314  455.898  522.561  585.399  644.722  3/2

If all you want are equal divisions without warp then another way to do it is to enter

11 % 3/2

into the equal steps field in the New Scale window - that's a percentage sign between the number of divisions and the 3/2.

top , start of section

Formula, Product and Sum notation


formula 8 to 2/1 as 2-2/(x +1)

#f as shortcut for formula

for the scale defined by that formula:

i.e. 4/3 3/2 8/5 5/3 12/7 7/4 16/9 2/1

That one is interesting because all its steps are square / (square -1)

4/3 9/8 16/15 25/24 36/35 49/48 64/63 9/8

The notation is

formula <number of notes> to <note to stop at or append if you don't readh it> as <formula>

The variable in the formula has to be called x, and gets filled in with the numbers 1, 2, 3, etc to make the scale.

The word as can be omitted - it is just there to make it easier to read.

The to part can also be omitted in which case it just makes the specified number of notes.

Whatever value you put for the to interval gets added at the end - here it added the 2/1 at the end.

If the formula yields a 1/1 at the start or several such they just get ignored as one doesn't normally want repeated 1/1s. That happens with this example in fact, as the first term is 1. So it is an eight note scale including the 1/1. If we tried say 3/6/x we get

The formula may yield negative or zero values, e.g. -5/4. As those wouldn't sound notes whatever the choice for the 1/1, they just get skipped from the list and not shown at all. This feature is primarily designed for constructing scales so we aren't interested in negative frequencies (perhaps they might have meaning in some other context).

The sum and product are similar:

product 8 to 2/1 as x^2/(x^2-1)

makes the same scale, but makes it as

4/3, 4/3 * 9/8, 4/3 * 9//8 * 16/15, 4/3 * 9/8 * 16/15 * 25/24, ...

sum 8 to 2/1 as 2/(x(x+1))

also makes the same scale, this time as:

1+1/3, 1+1/3 + 1/6, 1 + 1/3 + 1/6 + 1/10, 1 + 1/3 + 1/6 + 1/10 + 1/15.

That's because the sum of the reciprocals of the triangle numbers is the same as the product of ratios of form square / (square - 1) and both yield 2 - 2/n. See Gene Ward Smith's post to the tuning list at Yahoogroups for 20th August 2004 subject "Pedagogical question".

Normally the product starts with 1/1 - and the sum starts from 0. But you can start them anywhere, so e.g.

sum 8 to 2/1 start 1/4 as 2/(x(x+1))

which makes

5/4 19/12 7/4 37/20 23/12 55/28 2/1

the scale for A little light jazz

and you use the same start notation to set the first value for the product.

top , start of section

More details for the harmonic series notation

Similarly, h 11/10 would give the harmonic series from the 10th harmonic upwards and the corresponding subharmonic series.

Other ratios like 5/3 or 11/9 also pick out members of the harmonic series, with gaps.

For instance 5/3 (= 1+2/3) picks out every other harmonic from the 3rd upwards.

1/1, 1+2/3 1+2/3+2/3,...


1/1 5/3 7/3 3/1 11/3 13/3 5/1 17/3 19/3 7/1 23/3 25/3 9/1, ...

and h 11/9 makes

1/1 11/9 13/9 5/3 17/9 19/9 7/3 23/9 25/9 3/1 ......

You can also use two or more terms:

h 3 4 7

will play harmonics 3, 4 and 7, then after that will repeat the spacing between them

1   3   4   7   9  10  13  15  16  19 ...
  2   1   3   2   1   3   2   1   3 ...

top , start of section