This Javascript calculates frequencies and 24TET pitches for Frequency Modulation or Ring Modulation algorithms. It prints the resultant frequencies in staff notation, and also will export to a MusicXML file for import into a music notation app.
Frequency pairs are generated are $f_{c}\pm nf_{m}$, where $f_{c}$ is the carrier frequency, $f_{m}$ is the modulator frequency and n is the modulator index (ring modulation will only generate one frequency pair at n=1, while frequency modulation will generate pairs from 1 to n).
How to use
Select a modulation type (either Frequency Modulation or Ring Modulation), then, if FM, the ‘modulation index’ (i.e. how many sidebands you want generated). Enter the carrier and modulator frequencies, and hit ‘Calculate’. You can then copy and paste the list of frequencies into Excel/Google Sheets for further processing, or export it out to a MusicXML file for import into MuseScore/Sibelius*.
- Note that Sibelius does not correctly import quartertones from MusicXML.