N2D3P9: Difference between revisions

Dave Keenan (talk | contribs)
Added 2 graphs to the Justification section
Cmloegcmluin (talk | contribs)
add link to published paper
 
(31 intermediate revisions by 4 users not shown)
Line 1: Line 1:
'''<math>\text{N2D3P9}</math>''' or Entoo-Deethree-Peenine, is a fictional character in the Star Wars franchise. In an alternative timeline, the young Anakin Skywalker assembles the droid <math>\text{N2D3P9}</math> from the parts of three other droids: R<span style="color:#FF0000">2D</span>2, C<span style="color:#FF0000">3P</span>0 and <span style="color:#FF0000">N</span>R-N9<span style="color:#FF0000">9</span>. We're only joking, but we hope this helps with remembering and pronouncing the name.
'''N2D3P9''' (Entoo-Deethree-Peenine) is a mathematical function which was developed to help in designing the [[Sagittal notation|Sagittal microtonal notation]]. Given a rational number <math>\frac{n}{d}</math> representing a pitch (relative to some tonic note), N2D3P9 estimates its rank in popularity among all rational pitches in musical use. A low value of N2D3P9 indicates that the ratio is used often, and so should have a simple accidental symbol, while a high value indicates that the ratio is used rarely and so can have a more complex symbol if necessary. It may also be useful in designing rational scales or tunings. The name "'''N2D3P9'''" is an abbreviation of key components of its formula, as described below.


'''<math>\text{N2D3P9}</math>''' is a mathematical function which was developed to help in designing the [https://en.xen.wiki/w/Sagittal_notation Sagittal microtonal notation]. Given a pitch ratio <math>\frac{n}{d}</math>, <math>\text{N2D3P9}</math> estimates its rank in popularity among all rational pitches in musical use. A low value of <math>\text{N2D3P9}</math> indicates that the ratio is used often, and so should have a simple accidental symbol, while a high value indicates that the ratio is used rarely and so can have a more complex symbol if necessary. The name "N2D3P9" is an abbreviation of key components of its formula, which will be described in detail later.
As a mnemonic, you can imagine the name N2D3P9 comes from a fictional character in the Star Wars franchise. In an alternative timeline, the young Anakin Skywalker assembles the droid N2D3P9 from the parts of three other droids: R<span style="color:#FF0000">2D</span>2, C<span style="color:#FF0000">3P</span>0 and <span style="color:#FF0000">N</span>R-N9<span style="color:#FF0000">9</span>.  
 
Because factors of <math>2</math> and <math>3</math> in pitch ratios are already notated by changing octaves or moving along the chain of fifths (... B♭♭ F♭ C♭ G♭ D♭ A♭ E♭ B♭ F C G D A E B F♯ C♯ G♯ D♯ A♯ E♯ B♯ Fx ...), <math>\text{N2D3P9}</math> only operates on ratios that have had their factors of <math>2</math> and <math>3</math> removed. For example, there are various numbers of factors of <math>2</math> and <math>3</math> in the following ratios: <math>\frac{16}{15}, \frac{10}{9}, \frac{6}{5}, \frac{5}{4}, \frac{27}{20}, \frac{45}{32}, \frac{64}{45}, \frac{40}{27}, \frac{8}{5}, \frac{5}{3}, \frac{9}{5}, \frac{15}{8}</math>, but when their factors of <math>2</math> and <math>3</math> are removed, they all reduce to <math>\frac{1}{5}</math> or <math>\frac{5}{1}</math>, and so they can all be notated using the same microtonal accidental, pointing either up or down, combined with different letters and sharps or flats. We say that <math>\frac{1}{5}</math> or <math>\frac{5}{1}</math> is the "2,3-reduced" or "[https://en.wikipedia.org/wiki/Rough_number 5-rough]" form of these pitch ratios.
 
Because <math>\frac{1}{5}</math> and <math>\frac{5}{1}</math> use the same accidental pointing either up or down, and because <math>\text{N2D3P9}</math> only operates on ratios whose numerator is larger than their denominator (superunison ratios), <math>\frac{5}{1}</math> can represent this entire equivalence class for the purpose of notation design.


== Formula ==
== Formula ==


Before describing how to calculate <math>\text{N2D3P9}</math>, we describe two simpler functions that are used in calculating it.
Before describing how to calculate <math>\text{N2D3P9}</math>, we define three simpler terms that are used in its formula:


# '''copfr''', which stands for "<u>C</u>ount <u>O</u>f <u>P</u>rime <u>F</u>actors with <u>R</u>epeats". It applies to any positive integer. For example <math>175</math> has the prime factorization <math>5 × 5 × 7</math>, which has 3 factors including the repeat of <math>5</math>, so <math>\text{copfr}(175) = 3</math>. <math>\text{copfr}(1) = 0</math>. <math>\text{copfr}</math> is also called the "[https://en.wikipedia.org/wiki/Prime_omega_function big omega]" function, <math>Ω</math>.
# '''2,3-free''' ratios, which are also known as "[https://en.wikipedia.org/wiki/Rough_number 5-rough]" ratios. Because factors of <math>2</math> and <math>3</math> in pitch ratios are already notated by changing octaves or moving along the chain of fifths (... B♭♭ F♭ C♭ G♭ D♭ A♭ E♭ B♭ F C G D A E B F♯ C♯ G♯ D♯ A♯ E♯ B♯ Fx ...), '''N2D3P9''' only operates on ratios that have had their factors of <math>2</math> and <math>3</math> removed. For example, there are various numbers of factors of <math>2</math> and <math>3</math> in the following ratios: <math>\frac{16}{15}, \frac{10}{9}, \frac{6}{5}, \frac{5}{4}, \frac{27}{20}, \frac{45}{32}, \frac{64}{45}, \frac{40}{27}, \frac{8}{5}, \frac{5}{3}, \frac{9}{5}, \frac{15}{8}</math>, but when their factors of <math>2</math> and <math>3</math> are removed, they all reduce to <math>\frac{1}{5}</math> or <math>\frac{5}{1}</math>, and so they can all be notated using the same microtonal accidental, pointing either up or down, combined with different letters and sharps or flats. We say that <math>\frac{1}{5}</math> or <math>\frac{5}{1}</math> is the '''2,3-removed''' or '''2,3-free''' form of these pitch ratios, and because <math>\frac{1}{5}</math> and <math>\frac{5}{1}</math> use the same accidental pointing either up or down, and because '''N2D3P9''' only operates on ratios whose numerator is larger than their denominator ([[superunison]] ratios), <math>\frac{5}{1}</math> can represent this entire '''2,3-equivalent pitch ratio class''' or '''2,3-equivalence-class''' for the purpose of notation design.
# '''prime-limit''', which is also known as <math>\text{gpf}</math>, which stands for [https://mathworld.wolfram.com/GreatestPrimeFactor.html greatest prime factor]. <math>\text{prime-limit}(175) = 7</math>. Some authors leave <math>\text{prime-limit}(1)</math> undefined; we avoid the question because we define <math>\text{N2D3P9}(\frac{1}{1})</math> ≡ <math>\text{N2D3P9}(\frac{3}{1}) = 1</math>. This is because the ratios in the equivalence class represented by the 5-rough <math>\frac{1}{1}</math> actually have a prime limit of 3.
# <span id=copfr>The '''copfr''' function, which stands for "<u>C</u>ount <u>O</u>f <u>P</u>rime <u>F</u>actors with <u>R</u>epeats". It applies to any positive integer. For example <math>175</math> has the prime factorization <math>5 × 5 × 7</math>, which has 3 factors including the repeat of <math>5</math>, so <math>\text{copfr}(175) = 3</math>. <math>\text{copfr}(1) = 0</math>. <math>\text{copfr}</math> is also called the "[https://en.wikipedia.org/wiki/Prime_omega_function big omega]" function, <math>Ω</math>.</span>
# The '''prime-limit''' function, which is also known as <math>\text{gpf}</math>, which stands for [https://mathworld.wolfram.com/GreatestPrimeFactor.html greatest prime factor]. <math>\text{prime-limit}(175) = 7</math>. Some authors leave <math>\text{prime-limit}(1)</math> undefined; we avoid the question because we define <math>\text{N2D3P9}(\frac{1}{1})</math> ≡ <math>\text{N2D3P9}(\frac{3}{1}) = 1</math>. This is because the ratios in the equivalence class represented by the 2,3-removed <math>\frac{1}{1}</math> actually have a prime limit of 3.


So the formula for <math>\text{N2D3P9}</math>(<math>\frac{n}{d}</math><nowiki>) is:
Now we can give the formula for <math>\text{N2D3P9}</math>(<math>\frac{n}{d}</math><nowiki>) as:
$$
$$
\begin{cases}
\begin{cases}
\large{\text{N2D3P9}(\frac{n}{d})=\frac{n}{2^{\text{copfr}(n)}}×\frac{d}{3^{\text{copfr}(d)}}×\frac{\text{prime-limit}(nd)}{9}}, \\
\large{\text{N2D3P9}(\frac{n}{d})=\frac{n}{2^{\text{copfr}(n)}}×\frac{d}{3^{\text{copfr}(d)}}×\frac{\text{prime-limit}(nd)}{9}}, \\
\small{\text{    where }n\text{ and }d\text{ are 5-rough positive integers and }n>d.} \\
\small{\text{    where }n\text{ and }d\text{ are 2,3-free positive integers and }n>d.} \\
\large{\text{N2D3P9}(\frac{1}{1})=1} \\
\large{\text{N2D3P9}(\frac{1}{1})=1} \\
\end{cases}
\end{cases}
Line 46: Line 43:
where </nowiki><math>nd</math> is established in music theory as a ratio's "product complexity" or [[Benedetti height]].
where </nowiki><math>nd</math> is established in music theory as a ratio's "product complexity" or [[Benedetti height]].


The division by 9 does not affect the ranking, but it has the convenient effect that <math>\text{N2D3P9}</math> values are almost the same as the ranks they produce when applied to all 5-rough superunison ratios. Putting it another way, there are approximately <math>N</math> 5-rough pitch ratios with <math>\text{N2D3P9}≤N</math>. For example, <math>\text{N2D3P9}(\frac{77}{5}) = \frac{7}{2} × \frac{11}{2} × \frac{5}{3} × \frac{11}{9} ≈ 39</math>, suggesting there are approximately 38 other 5-rough pitch ratios more popular than <math>\frac{77}{5}</math>. There are actually about 4% fewer than that on average. In this case there are 36.
The division by 9 does not affect the ranking, but it has the convenient effect that <math>\text{N2D3P9}</math> values are almost the same as the ranks they produce when applied to all 2,3-free superunison ratios. Putting it another way, there are approximately <math>N</math> 2,3-free pitch ratios with <math>\text{N2D3P9}≤N</math>. For example, <math>\text{N2D3P9}(\frac{77}{5}) = \frac{7}{2} × \frac{11}{2} × \frac{5}{3} × \frac{11}{9} ≈ 39</math>, suggesting there are approximately 38 other 2,3-free pitch ratios more popular than <math>\frac{77}{5}</math>. There are actually about 4% fewer than that on average. In this case there are 36.


== Justification ==
== Justification ==


Why do we believe that <math>\text{N2D3P9}</math> accurately ranks the popularity of 5-rough pitch classes?
Why should we believe that <math>\text{N2D3P9}</math> accurately ranks the popularity of 2,3-equivalent pitch classes?


<math>\text{N2D3P9}</math> was developed or discovered rather late in the development of Sagittal notation. So what did we use previously, to decide which ratios should get the simple symbols? We used actual data on ratio usage from [http://www.huygens-fokker.org/microtonality/scales.html the Huygens-Fokker Foundation's scale archive], kindly provided by [[Manuel Op de Coul]].
<math>\text{N2D3P9}</math> was developed (or discovered) rather late in the development of Sagittal notation. The Sagittal designers previously relied on actual ratio usage data from [http://www.huygens-fokker.org/microtonality/scales.html the Huygens-Fokker Foundation's scale archive], kindly provided by [[Manuel Op de Coul]].


All scales in the archive were treated equally, as we didn't have any information about their relative importance. Each occurrence of a pitch ratio in a scale was counted as one vote for that ratio. Then the ratios were grouped into 5-rough pitch classes and a single figure obtained for each 5-rough superunison ratio (representing the class). There were 29,403 votes, allocated to 820 5-rough ratios.
All scales in the archive were treated equally, as there was no information about their relative importance. Each occurrence of a pitch ratio in a scale was counted as one vote for that ratio. Then the ratios were grouped into 2,3-equivalent pitch classes and a single figure obtained for each 2,3-free superunison ratio (representing the class). There were 29,403 votes, allocated to 820 2,3-free ratios.


Like the frequency of use of letters in an alphabet, when sorted in order of decreasing popularity, the ratios obeyed an approximate [https://en.wikipedia.org/wiki/Zipf%27s_law Zipf's law] distribution, with the Nth most popular ratio having votes proportional to approximately <math>\frac{1}{N^{1.37}}</math>. This meant that about half the ratios had only one vote each, and three quarters of them had 3 votes or less. Such low numbers of votes meant that the data on the less popular ratios was vulnerable to "historical noise". In other words, the position of such a ratio in the list might not be a good predictor of its relative frequency of use in the future.
Like the frequency of use of letters in an alphabet, when sorted in order of decreasing popularity, the ratios obeyed an approximate [https://en.wikipedia.org/wiki/Zipf%27s_law Zipf's law] distribution, with the Nth most popular ratio having votes proportional to approximately <math>\frac{1}{N^{1.37}}</math>. This meant that about half the ratios had only one vote each, and three quarters of them had 3 votes or less. Such low numbers of votes meant that the data on the less popular ratios was vulnerable to "historical noise". In other words, the position of such a ratio in the list might not be a good predictor of its relative frequency of use in the future.
Line 62: Line 59:




In the early stages of Sagittal design, when allocating symbols for the most popular ratios, we could rely on the Scala archive data, but when we moved on to less popular ratios we needed some "less noisy" way to rank them.
In the early stages of Sagittal design, when allocating symbols for the most popular ratios, the designers could rely on the Scala archive data, but when they moved on to less popular ratios they needed some "less noisy" way to rank them.


We found that <math>\text{N2D3P9}</math> is a psychoacoustically plausible function of a ratio's prime factorizatation that:
Blumeyer and Keenan found that <math>\text{N2D3P9}</math> is a psychoacoustically plausible function of a ratio's prime factorization that:
<ol>
<ol style="list-style-type: lower-alpha">
<li value="a">ranks 10 of the 11 most popular ratios in exactly the same way as the archive data, and
<li>ranks 10 of the 11 most popular ratio classes in exactly the same way as the archive data, and</li>
<li value="b">ranks all 820 ratios in a way that has a low sum of squared errors in their ranks, relative to the archive data, and
<li>ranks all 820 ratio classes in a way that has a low sum of squared errors in their ranks, relative to the archive data, and</li>
<li value="c">is sufficiently simple, having only two parameters, that it cannot be [https://en.wikipedia.org/wiki/Overfitting overfitting] the data, and should therefore serve to average out the historical noise in the ranking of the less popular ratios, including ratios that do not occur in the archive at all.
<li>is sufficiently simple, having only two parameters, that it cannot be [https://en.wikipedia.org/wiki/Overfitting overfitting] the data, and should therefore serve to average out the historical noise in the ranking of the less popular ratios, including ratios that do not occur in the archive at all.</li>
</ol>
</ol>


Line 75: Line 72:




== Development & Discovery ==
However, their approach was not able to consider ''all'' possible psychoacoustic reasons for a ratio's popularity. For example, <math>\text{N2D3P9}</math> does not evaluate whether some member of a 2,3-equivalence-class might be very close in pitch to some member of another 2,3-equivalence-class, such as <math>\frac{65}{64}</math> being very close to <math>\frac{1}{1}</math>.


How did we come up with that particular 5-rough notational-popularity ranking function?
== Development/discovery ==


From May to August 2020, a [http://forum.sagittal.org/viewtopic.php?f=4&t=493 collaborative effort] to find such a function, was carried out by members of the [http://forum.sagittal.org/ Sagittal forum], led by Sagittal co-creator [[Dave Keenan]] and [[Douglas Blumeyer]]. Many functions besides <math>\text{N2D3P9}</math> were considered before selecting it as the best function for its purpose.
From May to August 2020, a [http://forum.sagittal.org/viewtopic.php?f=4&t=493 collaborative effort] to find such a function, was carried out by members of the [http://forum.sagittal.org/ Sagittal forum], led by Sagittal co-creator [[Dave Keenan]] and [[Douglas Blumeyer]]. Many functions besides <math>\text{N2D3P9}</math> were considered before selecting it as the best function for its purpose.
Line 83: Line 80:
Estimation of pitch ratio popularity is possible because it correlates with numeric simplicity. <math>\text{N2D3P9}</math> is most useful when comparing ranks of more complex ratios, because usage data about such ratios is sparse. By fitting a function to the statistical usage data which is available for simpler ratios, <math>\text{N2D3P9}</math> enables the extension of the patterns found in these simpler ratios.
Estimation of pitch ratio popularity is possible because it correlates with numeric simplicity. <math>\text{N2D3P9}</math> is most useful when comparing ranks of more complex ratios, because usage data about such ratios is sparse. By fitting a function to the statistical usage data which is available for simpler ratios, <math>\text{N2D3P9}</math> enables the extension of the patterns found in these simpler ratios.


Rather than attempt to fit functions to the exact counts of votes for each ratio, the functions were fit to the rank indices of each ratio; in other words, a function only needed to sort ratios the same as the actual data, and within each rank position it was unimportant how close its estimate of votes was. In technical parlance, the goal was to minimize the [https://en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient Spearman’s rank coefficient] between the estimated ranks and the actual ranks. For purposes of comparing competing functions, minimizing Spearman’s rank coefficient could be simplified to minimizing the sum of squared differences between the ranks. But because fitting to the simpler ratios which had more votes is more important, a Zipf's-law weighting was applied to the ranks by taking their reciprocals before calculating their squared differences. A [https://en.wikipedia.org/wiki/Ranking#Fractional_ranking_(%221_2.5_2.5_4%22_ranking) fractional ranking] strategy was used to ensure that stretches of the data with tied vote counts did not distort the measurement.
Rather than attempt to fit functions to the exact counts of votes for each ratio, the functions were fit to the rank indices of each ratio; in other words, a function only needed to sort ratios the same as the actual data, and within each rank position it was unimportant how close its estimate of votes was. In technical parlance, the goal was to maximize the [https://en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient Spearman’s rank coefficient] between the estimated ranks and the actual ranks. For purposes of comparing competing functions, maximizing Spearman’s rank coefficient could be simplified to minimizing the sum of squared differences between the ranks. But because fitting to the simpler ratios which had more votes is more important, a Zipf's-law weighting was applied to the ranks by taking their reciprocals before calculating their squared differences. A [https://en.wikipedia.org/wiki/Ranking#Fractional_ranking_(%221_2.5_2.5_4%22_ranking) fractional ranking] strategy was used to ensure that stretches of the data with tied vote counts did not distort the measurement.


The overall strategy, then, was to minimize this weighted rank correlation, while also minimizing the complexity of the function, to avoid overfitting. An earlier 5-rough-ratio notational popularity ranking function that had been used by the creators of Sagittal was <math>\text{sopfr}</math> ([https://mathworld.wolfram.com/SumofPrimeFactors.html sum of prime factors with repetition]), and as simple as this function is, it does a remarkably good job of estimating the rank of pitch ratios. For comparison, the weighted sum of squares that <math>\text{sopfr}</math> gives for the Scala stats is about 0.026, while the weighted sum of squares <math>\text{N2D3P9}</math> gives is about 0.010. Functions giving sums of squares as low as 0.008 were found, however, these functions were so complex that they probably were fitting to noise in the Scala stats instead of to the true nature of musical pitch. An informal “chunk” metric was devised to compare function complexity in terms of fit to the data, with considered functions ranging from one chunk (<math>\text{sopfr}</math>) to eight chunks; the winning function <math>\text{N2D3P9}</math> has five chunks.
The overall strategy, then, was to minimize this weighted rank error, while also minimizing the complexity of the function, to avoid overfitting. An earlier notational popularity ranking function for  2,3-removed-ratios, that had been used by the creators of Sagittal was <math>\text{sopfr}</math> ([https://mathworld.wolfram.com/SumofPrimeFactors.html sum of prime factors with repetition]). It does a remarkably good job of estimating the rank of pitch ratios given how simple it is. However the weighted sum of squared errors that <math>\text{sopfr}</math> gives for the Scala stats is about 0.026, while <math>\text{N2D3P9}</math> reduces that to about 0.010. Functions giving sums of squares as low as 0.008 were found, however, these functions were so complex that they probably were fitting to noise in the Scala stats instead of to the true nature of musical pitch. An informal “chunk” metric was devised to compare function complexity in terms of ability to fit to the data, with considered functions ranging from one chunk (<math>\text{sopfr}</math>) to eight chunks; the winning function <math>\text{N2D3P9}</math> has five chunks.


Several techniques were used to find and decide on <math>\text{N2D3P9}</math> as the best 5-rough ratio notational popularity rank estimation function. Initial observations about shortcomings of <math>\text{sopfr}</math>, such as its failure to differentiate balanced ratios from their imbalanced equivalents — such as <math>\frac{11}{5}</math> versus <math>\frac{55}{1}</math> — or those with different prime limits such as <math>\frac{13}{5}</math> and <math>\frac{11}{7}</math>, despite those pairs of ratios exhibiting remarkably different actual ranks in the Scala stats, formed the basis of the investigation. Psychoacoustic plausibility of functions was used as a top-down guide for experimentation. [https://en.wikipedia.org/wiki/Mathematical_optimization Optimization] tools such as [https://www.microsoft.com/en-us/microsoft-365/blog/2009/09/21/new-and-improved-solver/ Excel's Evolutionary Solver] were used to navigate toward ideal values for each parameter. A brute-force technique was also utilized whereby nearly 2 billion functions combined out of constituent "submetrics" were checked automatically. In the end, one of the functions generated from the brute-force checker was recognized as being re-writable in a much simpler form with parameter values rounded to whole numbers without doing much damage to its sum-of-squares, and thus <math>\text{N2D3P9}</math> was born.
Several techniques were used to find and decide on <math>\text{N2D3P9}</math> as the best 2,3-removed-ratio notational-popularity rank-estimation function. Initial observations about shortcomings of <math>\text{sopfr}</math>, such as its failure to differentiate balanced ratios from their imbalanced equivalents — such as <math>\frac{11}{5}</math> versus <math>\frac{55}{1}</math> — or those with different prime limits such as <math>\frac{13}{5}</math> and <math>\frac{11}{7}</math>, despite those pairs of ratios exhibiting remarkably different actual ranks in the Scala stats, formed the basis of the investigation. Psychoacoustic plausibility of functions was used as a top-down guide for experimentation. [https://en.wikipedia.org/wiki/Mathematical_optimization Optimization] tools such as [https://www.microsoft.com/en-us/microsoft-365/blog/2009/09/21/new-and-improved-solver/ Excel's Evolutionary Solver] were used to navigate toward ideal values for each parameter. The approach that was finally successful was a brute-force approach implemented by Douglas Blumeyer, whereby nearly 2 billion functions combined out of constituent "submetrics" were checked automatically. In the end, one of the functions on the short-list generated from the brute-force checker was recognized as being re-writable in a much simpler form with parameter values rounded to whole numbers without doing much damage to its sum-of-squares, and thus <math>\text{N2D3P9}</math> was born.


After deciding upon <math>\text{N2D3P9}</math>, the Sagittal forum members checked Sagittal against it, to see how well they'd been served by <math>\text{sopfr}</math>. Each symbol in Sagittal's JI notations has a default value, or primary comma, which allows it to exactly notate ratios in a 5-rough ratio equivalence class, and based on <math>\text{N2D3P9}</math>, it was found that only a couple of these commas should be changed (these were among the rarest-used symbols in Sagittal). This was as expected; <math>\text{N2D3P9}</math> was developed primarily in order to add new symbols to Sagittal, to enable it to exactly notate even rarer JI pitches than it already does.
After deciding upon <math>\text{N2D3P9}</math>, the Sagittal forum members checked the ratios for the existing Sagittal symbols against it, to see how well they'd been served by the Scala archive stats and the earlier <math>\text{sopfr}</math> metric. Each symbol in Sagittal's JI notations has a default value, or primary comma, which for our purposes is a rational number between 1 and sqrt(3¹⁹/2³⁰) ≈ 1.040404 exclusive, that by multiplication, takes us from some 3-smooth ratio (notated using standard music notation) to a nearby 5-rough ratio. This allows the symbol to exactly notate all the ratios in the corresponding 2,3-equivalence-class. For example, the most important such comma is 81/80 (the 1/5-comma), whose symbol is an upward pointing left-half-arrow ⁄|, which takes us from 2⁴/3⁴ (A♭) to 1/5 (A♭ ⁄|). Based on N2D3P9, it was found that only a couple of these commas should be changed (these were among the rarest-used symbols in Sagittal). This was as expected; <math>\text{N2D3P9}</math> was developed primarily in order to add new accent marks to Sagittal, to enable it to exactly notate even rarer JI pitches than it already does.


== Table of Top 100 (5-Rough) Ratios ==
== Table of top 100 (2,3-equivalent) pitch ratio classes by N2D3P9 ==
{| class="wikitable"
{| class="wikitable"
|+
|+
!5-rough ratio
!2,3-equivalent pitch ratio class
!N2D3P9
!N2D3P9
!estimated rank
!N2D3P9 rank
!actual rank
!Scala archive rank
!Scala archive occurrences
|-
|-
|1/1
|{1}₂,₃
|1
|1
|1  
|1
|1  
|1
|7624
|-
|-
|5/1
|{5}₂,₃
|1.39
|1.39
|2  
|2
|2  
|2
|5371
|-
|-
|7/1
|{7}₂,₃
|2.72
|2.72
|3  
|3
|3  
|3
|3016
|-
|-
|25/1
|{25}₂,₃
|3.47
|3.47
|4  
|4
|4  
|4
|1610
|-
|-
|7/5
|{7/5}₂,₃
|4.54
|4.54
|5  
|5
|5  
|5
|1318
|-
|-
|11/1
|{11}₂,₃
|6.72
|6.72
|6  
|6
|6  
|6
|1002
|-
|-
|35/1
|{35}₂,₃
|6.81
|6.81
|7  
|7
|7  
|7
|875
|-
|-
|125/1
|{125}₂,₃
|8.68
|8.68
|8  
|8
|8  
|8
|492
|-
|-
|13/1
|{13}₂,₃
|9.39
|9.39
|9  
|9
|10  
|10
|447
|-
|-
|49/1
|{49}₂,₃
|9.53
|9.53
|10  
|10
|9  
|9
|463
|-
|-
|11/5
|{11/5}₂,₃
|11.2
|11.2
|11  
|11
|11  
|11
|339
|-
|-
|25/7
|{25/7}₂,₃
|11.34
|11.34
|12  
|12
|14  
|14
|312
|-
|-
|13/5
|{13/5}₂,₃
|15.65
|15.65
|13  
|13
|16  
|16
|205
|-
|-
|11/7
|{11/7}₂,₃
|15.69
|15.69
|14  
|14
|12  
|12
|324
|-
|-
|49/5
|{49/5}₂,₃
|15.88
|15.88
|15  
|15
|15  
|15
|246
|-
|-
|17/1
|{17}₂,₃
|16.06
|16.06
|16  
|16
|13  
|13
|318
|-
|-
|55/1
|{55}₂,₃
|16.81
|16.81
|17  
|17
|24  
|24
|119
|-
|-
|175/1
|{175}₂,₃
|17.01
|17.01
|18  
|18
|17  
|17
|168
|-
|-
|19/1
|{19}₂,₃
|20.06
|20.06
|19  
|19
|18  
|18
|166
|-
|-
|625/1
|{625}₂,₃
|21.7
|21.7
|20  
|20
|21  
|21
|143
|-
|-
|13/7
|{13/7}₂,₃
|21.91
|21.91
|21  
|21
|20  
|20
|145
|-
|-
|65/1
|{65}₂,₃
|23.47
|23.47
|22  
|22
|50  
|50
|40
|-
|-
|77/1
|{77}₂,₃
|23.53
|23.53
|23  
|23
|25  
|25
|111
|-
|-
|245/1
|{245}₂,₃
|23.82
|23.82
|24  
|24
|19  
|19
|165
|-
|-
|49/25
|{49/25}₂,₃
|26.47
|26.47
|25  
|25
|23  
|23
|134
|-
|-
|17/5
|{17/5}₂,₃
|26.76
|26.76
|26  
|26
|26  
|26
|108
|-
|-
|25/11
|{25/11}₂,₃
|28.01
|28.01
|27  
|27
|47  
|47
|42
|-
|-
|125/7
|{125/7}₂,₃
|28.36
|28.36
|28  
|28
|33  
|33
|62
|-
|-
|23/1
|{23}₂,₃
|29.39
|29.39
|29  
|29
|22  
|22
|136
|-
|-
|91/1
|{91}₂,₃
|32.86
|32.86
|30  
|30
|57  
|57
|30
|-
|-
|343/1
|{343}₂,₃
|33.35
|33.35
|31  
|31
|31  
|31
|70
|-
|-
|19/5
|{19/5}₂,₃
|33.43
|33.43
|32  
|32
|27  
|27
|97
|-
|-
|13/11
|{13/11}₂,₃
|34.43
|34.43
|33  
|33
|29  
|29
|89
|-
|-
|121/1
|{121}₂,₃
|36.97
|36.97
|34  
|34
|42.5  
|42.5
|46
|-
|-
|17/7
|{17/7}₂,₃
|37.46
|37.46
|35  
|35
|40  
|40
|50
|-
|-
|25/13
|{25/13}₂,₃
|39.12
|39.12
|36  
|36
|52.5  
|52.5
|34
|-
|-
|77/5
|{77/5}₂,₃
|39.21
|39.21
|38  
|38
|28  
|28
|92
|-
|-
|55/7
|{55/7}₂,₃
|39.21
|39.21
|38  
|38
|34  
|34
|61
|-
|-
|35/11
|{35/11}₂,₃
|39.21
|39.21
|38  
|38
|35.5  
|35.5
|55
|-
|-
|85/1
|{85}₂,₃
|40.14
|40.14
|40  
|40
|78  
|78
|20
|-
|-
|275/1
|{275}₂,₃
|42.01
|42.01
|41  
|41
|147  
|147
|7
|-
|-
|875/1
|{875}₂,₃
|42.53
|42.53
|42  
|42
|76  
|76
|21
|-
|-
|29/1
|{29}₂,₃
|46.72
|46.72
|43  
|43
|32  
|32
|67
|-
|-
|19/7
|{19/7}₂,₃
|46.8
|46.8
|44  
|44
|37.5  
|37.5
|52
|-
|-
|23/5
|{23/5}₂,₃
|48.98
|48.98
|45  
|45
|44  
|44
|45
|-
|-
|95/1
|{95}₂,₃
|50.14
|50.14
|46  
|46
|72  
|72
|23
|-
|-
|143/1
|{143}₂,₃
|51.64
|51.64
|47  
|47
|66  
|66
|26
|-
|-
|31/1
|{31}₂,₃
|53.39
|53.39
|48  
|48
|30  
|30
|80
|-
|-
|3125/1
|{3125}₂,₃
|54.25
|54.25
|49  
|49
|52.5  
|52.5
|34
|-
|-
|91/5
|{91/5}₂,₃
|54.77
|54.77
|51  
|51
|68  
|68
|25
|-
|-
|65/7
|{65/7}₂,₃
|54.77
|54.77
|51  
|51
|102.5  
|102.5
|11
|-
|-
|35/13
|{35/13}₂,₃
|54.77
|54.77
|51  
|51
|102.5  
|102.5
|11
|-
|-
|49/11
|{49/11}₂,₃
|54.9
|54.9
|53  
|53
|54  
|54
|33
|-
|-
|343/5
|{343/5}₂,₃
|55.58
|55.58
|54  
|54
|55.5  
|55.5
|31
|-
|-
|119/1
|{119}₂,₃
|56.19
|56.19
|55  
|55
|252.5  
|252.5
|3
|-
|-
|325/1
|{325}₂,₃
|58.68
|58.68
|56  
|56
|604.5  
|604.5
|1
|-
|-
|385/1
|{385}₂,₃
|58.82
|58.82
|57  
|57
|37.5  
|37.5
|52
|-
|-
|17/11
|{17/11}₂,₃
|58.87
|58.87
|58  
|58
|35.5  
|35.5
|55
|-
|-
|1225/1
|{1225}₂,₃
|59.55
|59.55
|59  
|59
|41  
|41
|47
|-
|-
|169/1
|{169}₂,₃
|61.03
|61.03
|60  
|60
|86  
|86
|14
|-
|-
|121/5
|{121/5}₂,₃
|61.62
|61.62
|61  
|61
|147  
|147
|7
|-
|-
|77/25
|{77/25}₂,₃
|65.35
|65.35
|62  
|62
|63  
|63
|27
|-
|-
|125/49
|{125/49}₂,₃
|66.17
|66.17
|63  
|63
|63  
|63
|27
|-
|-
|25/17
|{25/17}₂,₃
|66.9
|66.9
|64  
|64
|134.5  
|134.5
|8
|-
|-
|23/7
|{23/7}₂,₃
|68.57
|68.57
|65  
|65
|47  
|47
|42
|-
|-
|17/13
|{17/13}₂,₃
|69.57
|69.57
|66  
|66
|47  
|47
|42
|-
|-
|125/11
|{125/11}₂,₃
|70.02
|70.02
|67  
|67
|147  
|147
|7
|-
|-
|133/1
|{133}₂,₃
|70.19
|70.19
|68  
|68
|329  
|329
|2
|-
|-
|625/7
|{625/7}₂,₃
|70.89
|70.89
|69  
|69
|113  
|113
|10
|-
|-
|115/1
|{115}₂,₃
|73.47
|73.47
|70  
|70
|604.5  
|604.5
|1
|-
|-
|19/11
|{19/11}₂,₃
|73.54
|73.54
|71  
|71
|55.5  
|55.5
|31
|-
|-
|37/1
|{37}₂,₃
|76.06
|76.06
|72  
|72
|42.5  
|42.5
|46
|-
|-
|49/13
|{49/13}₂,₃
|76.68
|76.68
|73  
|73
|147  
|147
|7
|-
|-
|29/5
|{29/5}₂,₃
|77.87
|77.87
|74  
|74
|59.5  
|59.5
|28
|-
|-
|455/1
|{455}₂,₃
|82.15
|82.15
|75  
|75
|186.5  
|186.5
|5
|-
|-
|539/1
|{539}₂,₃
|82.35
|82.35
|76  
|76
|186.5  
|186.5
|5
|-
|-
|1715/1
|{1715}₂,₃
|83.37
|83.37
|77  
|77
|76  
|76
|21
|-
|-
|25/19
|{25/19}₂,₃
|83.56
|83.56
|78  
|78
|79.5  
|79.5
|19
|-
|-
|143/5
|{143/5}₂,₃
|86.06
|86.06
|80  
|80
|217.5  
|217.5
|4
|-
|-
|65/11
|{65/11}₂,₃
|86.06
|86.06
|80  
|80
|164  
|164
|6
|-
|-
|55/13
|{55/13}₂,₃
|86.06
|86.06
|80  
|80
|90  
|90
|13
|-
|-
|121/7
|{121/7}₂,₃
|86.27
|86.27
|82  
|82
|164  
|164
|6
|-
|-
|19/13
|{19/13}₂,₃
|86.91
|86.91
|83  
|83
|45  
|45
|44
|-
|-
|187/1
|{187}₂,₃
|88.31
|88.31
|84  
|84
|217.5  
|217.5
|4
|-
|-
|31/5
|{31/5}₂,₃
|88.98
|88.98
|85  
|85
|68  
|68
|25
|-
|-
|91/25
|{91/25}₂,₃
|91.28
|91.28
|86  
|86
|329  
|329
|2
|-
|-
|55/49
|{55/49}₂,₃
|91.5
|91.5
|87  
|87
|39  
|39
|51
|-
|-
|605/1
|{605}₂,₃
|92.43
|92.43
|88  
|88
|94.5  
|94.5
|12
|-
|-
|343/25
|{343/25}₂,₃
|92.63
|92.63
|89  
|89
|68  
|68
|25
|-
|-
|41/1
|{41}₂,₃
|93.39
|93.39
|90  
|90
|72  
|72
|23
|-
|-
|119/5
|{119/5}₂,₃
|93.66
|93.66
|92  
|92
|123.5  
|123.5
|9
|-
|-
|85/7
|{85/7}₂,₃
|93.66
|93.66
|92  
|92
| -  
| -
|0
|-
|-
|35/17
|{35/17}₂,₃
|93.66
|93.66
|92  
|92
|217.5  
|217.5
|4
|-
|-
|125/13
|{125/13}₂,₃
|97.8
|97.8
|94  
|94
|604.5  
|604.5
|1
|-
|-
|275/7
|{275/7}₂,₃
|98.03
|98.03
|95.5  
|95.5
|102.5  
|102.5
|11
|-
|-
|175/11
|{175/11}₂,₃
|98.03
|98.03
|95.5  
|95.5
|147  
|147
|7
|-
|-
|425/1
|{425}₂,₃
|100.35
|100.35
|97  
|97
|329  
|329
|2
|-
|-
|169/5
|{169/5}₂,₃
|101.71
|101.71
|98  
|98
|329  
|329
|2
|-
|-
|121/25
|{121/25}₂,₃
|102.7
|102.7
|99  
|99
|217.5  
|217.5
|4
|-
|-
|43/1
|{43}₂,₃
|102.72
|102.72
|100  
|100
|58  
|58
|29
|}
|}
== See also ==
[https://link.springer.com/chapter/10.1007/978-3-031-07015-0_26 Keenan, D., Blumeyer, D. (2022). N2D3P9]. In: Montiel, M., Agustín-Aquino, O.A., Gómez, F., Kastine, J., Lluis-Puebla, E., Milam, B. (eds) Mathematics and Computation in Music. MCM 2022. Lecture Notes in Computer Science(), vol 13267. Springer, Cham.
[[Category:Just intonation]]
[[Category:Terms]]
[[Category:Math]]
[[Category:Notation]]