back to list

Re: complete lists of commas and dieses

🔗Robert Walker <robertwalker@ntlworld.com>

7/29/2004 10:30:45 AM

Hi there,

I thought I'd do some complete lists of all possible commas
and dieses using a program I wrote long ago to find
xenharmonic bridges that can easily be adapted
to this task.

You can try it out - download from:
http://www.robertinventor.com/nlimits.exe

Run with no arguments for instructions on how to use.
Basically you run it from the command line with
a command such as:

(commas_etc.txt) 1 1 1000 6 30 -2 0.0 10.0 2 3 5 7

The -2 there is what gets it to search for commas
rather than successive approximations as it did before
The 0 and 10.0 after that is the range of values to test
the 2 3 5 7 are the factors, and the
1 1 1000 at the start is 1/1 and max quotient 1000
The 6 says to show results to 6 places and the 30
is a time out of 30 seconds in case it doesn't
find anything.

I wonder if any of these are new?

Here are a few examples:

command line:
(commas_etc.tx) 1 1 1e3 6 60 -2 0.0 40.0 2 3 5 7

Ratios differing from 1/1:
by a comma or diesis etc in range 0 to 40 cents
and in the form:
2^a * 3^b * 5^c * 7^d

Max quotient to look for: 1000

[4 1, 0 -2> = 48/49 = -35.6968
[6 -2, 0 -1> = 64/63 = 27.2641
[4 -4, 1 0> = 80/81 = -21.5063
[0 5, -1 -2> = 243/245 = -14.1905
[1 0, 2 -2> = 50/49 = 34.9756
[5 -2, -2 1> = 224/225 = -7.71152
[1 -3, -2 3> = 686/675 = 27.9853
[1 2, -3 1> = 126/125 = 13.7948
[5 3, -3 -1> = 864/875 = -21.902

command line:
(commas_etc.tx) 1 1 1e5 6 60 -2 0.0 1.0 2 3 5 7 11 13

Ratios differing from 1/1:
by a comma or diesis etc in range 0 to 1 cents
and in the form:
2^a * 3^b * 5^c * 7^d * 11^e * 13^f

Max quotient to look for: 100000

[12 -2, -1 -1 0, -1> = 4096/4095 = 0.422716
[1 7, -4 -1 0, 0> = 4374/4375 = -0.395756
[5 1, 2 -4 0, 0> = 2400/2401 = -0.721197
[7 1, -2 0 1, -2> = 4224/4225 = -0.409808
[5 -3, 1 -1 -1, 1> = 2080/2079 = 0.832524
[10 -3, 0 2 -1, -2> = 50176/50193 = -0.586456
[0 6, 3 -2 -1, -2> = 91125/91091 = 0.646068
[6 4, -3 -2 -1, 1> = 67392/67375 = 0.436768
[1 -3, 1 2 2, -3> = 59290/59319 = -0.846576
[4 3, -2 1 -2, 0> = 3024/3025 = -0.572403
[3 -4, 2 2 -2, 0> = 9800/9801 = -0.176648
[3 -2, 0 -1 3, -2> = 10648/10647 = 0.162595
[9 0, -1 0 -3, 1> = 6656/6655 = 0.260121

Ratios differing from 1/1:
by a comma or diesis etc in range 0 to 10 cents
and in the form:
2^a * 3^b * 5^c * 7^d

Max quotient to look for: 1000

[5 1, 2 -4> = -0.721197
[-5 2, 2 0> = 7.71152
[5 -2, -2 1> = -7.71152
[0 3, 4 -4> = 6.99033
[0 3, 4 -4> = 6.99033

command line:
(commas_etc.tx) 1 1 1e4 6 60 -2 40.0 60.0 2 3 5 7

Ratios differing from 1/1:
by a comma or diesis etc in range 40 to 60 cents
and in the form:
2^a * 3^b * 5^c * 7^d

Max quotient to look for: 10000

[12 -4, 0 -2> = 4096/3969 = 54.5282
[8 -3, 1 -2> = 1280/1323 = -57.2031
[6 -7, 1 1> = 2240/2187 = 41.4546
[2 2, -1 -1> = 36/35 = 48.7704
[3 -4, -1 2> = 392/405 = -56.4819
[9 -1, -2 -1> = 512/525 = -43.4083
[7 -5, -2 2> = 6272/6075 = 55.2494
[3 -1, 3 -3> = 1000/1029 = -49.4916
[1 -5, 3 0> = 250/243 = 49.1661
[7 0, -3 0> = 128/125 = 41.0589
[4 -2, -4 3> = 5488/5625 = -42.6871

Ratios differing from 1/1:
by a comma or diesis etc in range 0 to 10 cents
and in the form:
2^a * 3^b * 5^c

Max quotient to look for: 1e+014

[38 -2, -15> = 274877906944/274658203125 = 1.38429
[6 5, -6> = 15552/15625 = -8.10728
[23 6, -14> = 6115295232/6103515625 = 3.33801
[32 -7, -9> = 4294967296/4271484375 = 9.49157
[15 -8, -1> = 32768/32805 = -1.95372
[29 11, -20> = 95105071448064/95367431640625 = -4.76927
[9 -13, 5> = 1600000/1594323 = 6.15356
[8 14, -13> = 1224440064/1220703125 = 5.29173
[30 -16, -2> = 1073741824/1076168025 = -3.90744
[14 19, -19> = 19042491875328/19073486328125 = -2.81555
[24 -21, 4> = 10485760000/10460353203 = 4.19984
[7 -22, 12> = 31250000000/31381059609 = -7.24545
[45 -24, -3> = 35184372088832/35303692060125 = -5.86116
[1 -27, 18> = 7629394531250/7625597484987 = 0.861826

Anyway it can find many more.
With high quotient and more than 5 limit,
it comes up with hundreds of them.

For example here is a list of seven limit commas
of up to 4 cents - it found 105 of them:

command line:
(commas_etc.tx) 1 1 1e14 6 60 -2 0.0 4.0 2 3 5 7

Ratios differing from 1/1:
by a comma or diesis etc in range 0 to 4 cents
and in the form:
2^a * 3^b * 5^c * 7^d

Max quotient to look for: 1e+014

[36 -5, 0 -10> = 68719476736/68641485507 = 1.96593
[11 9, 0 -9> = 40310784/40353607 = -1.83815
[25 -14, 0 -1> = 33554432/33480783 = 3.80408
[24 -24, 0 5> = 281974669312/282429536481 = -2.79049
[21 3, 1 -10> = 283115520/282475249 = 3.91965
[20 -7, 1 -4> = 5242880/5250987 = -2.67492
[9 -16, 1 5> = 43025920/43046721 = -0.836768
[26 1, -1 -9> = 201326592/201768035 = -3.79187
[15 -8, -1 0> = 32768/32805 = -1.95372
[27 11, -1 -15> = 23776267862016/23737807549715 = 2.8027
[4 -17, -1 9> = 645657712/645700815 = -0.11557
[40 -22, -1 -1> = 1099511627776/1098337086315 = 1.85036
[2 25, -1 -14> = 3389154437772/3391115364245 = -1.00138
[5 1, 2 -4> = 2400/2401 = -0.721197
[41 -4, 2 -14> = 54975581388800/54936068900769 = 1.24473
[16 10, 2 -13> = 96745881600/96889010407 = -2.55935
[30 -13, 2 -5> = 26843545600/26795786661 = 3.08288
[29 -23, 2 1> = 93952409600/94143178827 = -3.51169
[31 -6, -2 -6> = 2147483648/2144153025 = 2.68713
[6 8, -2 -5> = 419904/420175 = -1.11695
[30 -16, -2 0> = 1073741824/1076168025 = -3.90744
[17 17, -2 -14> = 16926659444736/16955576821225 = -2.9551
[19 -25, -2 9> = 21156911906816/21182215236075 = -2.06929
[26 4, 3 -14> = 679477248000/678223072849 = 3.19845
[25 -6, 3 -8> = 4194304000/4202539929 = -3.39612
[14 -15, 3 1> = 14336000/14348907 = -1.55796
[1 18, 3 -13> = 96855122250/96889010407 = -0.605627
[3 -24, 3 10> = 282475249000/282429536481 = 0.280186
[21 0, -3 -5> = 2097152/2100875 = -3.07067
[10 -9, -3 4> = 2458624/2460375 = -1.23252
[22 10, -3 -11> = 247669456896/247165842875 = 3.5239
[46 -14, -3 -6> = 70368744177664/70338939985125 = 0.733407
[35 -23, -3 3> = 11785390260224/11767897353375 = 2.57156
[10 2, 4 -8> = 5760000/5764801 = -1.44239
[35 -12, 4 -9> = 21474836480000/21445561257687 = 2.36169
[37 2, -4 -11> = 1236950581248/1235829214375 = 1.57018
[1 7, -4 -1> = 4374/4375 = -0.395756
[26 -7, -4 -2> = 67108864/66976875 = 3.40833
[12 16, -4 -10> = 176319369216/176547030625 = -2.23391
[25 -17, -4 4> = 80564191232/80712601875 = -3.18624
[19 -14, 5 -3> = 1638400000/1640558367 = -2.27916
[8 -23, 5 6> = 94119200000/94143178827 = -0.441012
[16 -1, -5 -1> = 65536/65625 = -2.34948
[5 -10, -5 8> = 184473632/184528125 = -0.511326
[41 -15, -5 -2> = 2199023255552/2197176384375 = 1.4546
[15 3, 6 -12> = 13824000000/13841287201 = -2.16359
[4 -6, 6 -3> = 250000/250047 = -0.325441
[29 -20, 6 -4> = 8388608000000/8371769346801 = 3.47864
[32 1, -6 -7> = 12884901888/12867859375 = 2.29137
[7 15, -6 -6> = 1836660096/1838265625 = -1.51271
[20 -18, -6 8> = 6044831973376/6053445140625 = -2.46505
[25 -3, 7 -13> = 2621440000000/2616003280989 = 3.59421
[0 11, 7 -12> = 13839609375/13841287201 = -0.209871
[24 -13, 7 -7> = 1310720000000/1312993546389 = -3.00036
[13 -22, 7 2> = 31360000000/31381059609 = -1.16221
[11 -2, -7 3> = 702464/703125 = -1.62828
[22 7, -7 -6> = 9172942848/9191328125 = -3.46643
[36 -16, -7 2> = 3367254360064/3363025078125 = 2.1758
[20 4, 8 -16> = 33177600000000/33232930569601 = -2.88479
[9 -5, 8 -7> = 200000000/200120949 = -1.04664
[27 0, -8 -3> = 134217728/133984375 = 3.01257
[26 -10, -8 3> = 23018340352/23066015625 = -3.582
[2 14, -8 -2> = 19131876/19140625 = -0.791512
[5 12, 9 -16> = 33215062500000/33232930569601 = -0.931068
[18 -21, 9 -2> = 512000000000/512557306947 = -1.88341
[6 -3, -9 7> = 52706752/52734375 = -0.907082
[17 6, -9 -2> = 95551488/95703125 = -2.74523
[42 -8, -9 -3> = 4398046511104/4395357421875 = 1.05885
[18 16, -9 -8> = 11284439629824/11259376953125 = 3.84934
[14 -4, 10 -11> = 160000000000/160163466183 = -1.76784
[3 -13, 10 -2> = 78125000/78121827 = 0.0703145
[22 -1, -10 1> = 29360128/29296875 = 3.73377
[33 8, -10 -8> = 56358560858112/56296884765625 = 1.89562
[21 -11, -10 7> = 1727094849536/1729951171875 = -2.8608
[8 22, -10 -7> = 8033551259904/8042412109375 = -1.90846
[1 -4, -11 11> = 3954653486/3955078125 = -0.185885
[12 5, -11 2> = 48771072/48828125 = -2.02404
[37 -9, -11 1> = 962072674304/961083984375 = 1.78005
[23 14, -11 -7> = 40122452017152/40212060546875 = -3.86219
[8 -12, 12 -6> = 62500000000/62523502209 = -0.650883
[27 -3, -12 2> = 6576668672/6591796875 = -3.97776
[28 7, -12 -4> = 587068342272/586181640625 = 2.61681
[3 21, -12 -3> = 83682825624/83740234375 = -1.18727
[4 5, 13 -15> = 4746093750000/4747561509943 = -0.535312
[43 -1, -13 -4> = 8796093022208/8792724609375 = 0.663093
[7 4, -13 6> = 1219784832/1220703125 = -1.30284
[32 -10, -13 5> = 72185515343872/72081298828125 = 2.50124
[18 13, -13 -3> = 417942208512/418701171875 = -3.14099
[13 -11, 14 -10> = 50000000000000/50039642934603 = -1.37208
[2 -20, 14 -1> = 24414062500/24407490807 = 0.46607
[22 -4, -14 6> = 493455671296/494384765625 = -3.25656
[23 6, -14 0> = 6115295232/6103515625 = 3.33801
[38 -2, -15 0> = 274877906944/274658203125 = 1.38429
[2 3, -15 10> = 30507326892/30517578125 = -0.581641
[13 12, -15 1> = 30474952704/30517578125 = -2.41979
[7 -19, 16 -5> = 19531250000000/19534128475869 = -0.255127
[17 -5, -16 10> = 37024595836928/37078857421875 = -2.53536
[3 -2, 17 -14> = 6103515625000/6104007655641 = -0.139557
[33 -3, -17 4> = 20624432955392/20599365234375 = 2.10549
[8 11, -17 5> = 762191265024/762939453125 = -1.69859
[1 -27, 18 0> = 7629394531250/7625597484987 = 0.861826
[23 3, -18 5> = 3806658035712/3814697265625 = -3.65231
[24 13, -18 -1> = 26748301344768/26702880859375 = 2.94226
[3 10, -19 9> = 19062721117944/19073486328125 = -0.977397
[14 19, -19 0> = 19042491875328/19073486328125 = -2.81555

(224596 values tested, 105 values found)

BTW it doesn't do anything sophisticated at all,
just a brute force type search of the lattice, as
you can see by the number of values tested.
But I optimised the code a bit, so it is reasonably
fast even so.

Robert

🔗Robert Walker <robertwalker@ntlworld.com>

7/29/2004 10:35:03 AM

Hi there,

Please ignore the section in that last post
that shows the monzo and cents without the ratios
- just something I output while debugging
it before I'd finished coding it up.

Robert