FM & RM Calculator

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*.

Output (tab-delimited) — copy/paste into Excel
Music Notation
  • Note that Sibelius does not correctly import quartertones from MusicXML.