back to list

Bug in Graham's scripts for non-octave temperaments?

🔗Keenan Pepper <keenanpepper@gmail.com>

9/7/2011 12:52:40 PM

If I search for temperaments in the 3.4.5 limit (including 4/1's but not octaves), I expect "double-octave meantone" (tempering out 81/80) to do quite well.

With this search:

http://x31eq.com/cgi-bin/pregular.cgi?limit=3.4.5&error=4

"double-octave meantone" is the top result, as expected.

However, this slightly different search:

http://x31eq.com/cgi-bin/pregular.cgi?limit=3.4.5&error=5

the top result looks like it should be "double-octave meantone", but the reduced mapping is all screwed up. It gives me [ <1 9 2] <0 -29 -2] > instead of the expected [ <1 1 2] <0 1 -2] >

Seems like a bug to me.

Keenan

🔗Graham Breed <gbreed@gmail.com>

9/7/2011 1:04:19 PM

"Keenan Pepper" <keenanpepper@gmail.com> wrote:

> However, this slightly different search:
>
> http://x31eq.com/cgi-bin/pregular.cgi?limit=3.4.5&error=5
>
> the top result looks like it should be "double-octave
> meantone", but the reduced mapping is all screwed up. It
> gives me [ <1 9 2] <0 -29 -2] > instead of the expected
> [ <1 1 2] <0 1 -2] >
>
> Seems like a bug to me.

It's certainly a bug because the complexities aren't
consistent. I'll look into it tomorrow.

Graham

🔗Keenan Pepper <keenanpepper@gmail.com>

9/11/2011 5:15:51 PM

--- In tuning-math@yahoogroups.com, Graham Breed <gbreed@...> wrote:
>
> "Keenan Pepper" <keenanpepper@...> wrote:
>
> > However, this slightly different search:
> >
> > http://x31eq.com/cgi-bin/pregular.cgi?limit=3.4.5&error=5
> >
> > the top result looks like it should be "double-octave
> > meantone", but the reduced mapping is all screwed up. It
> > gives me [ <1 9 2] <0 -29 -2] > instead of the expected
> > [ <1 1 2] <0 1 -2] >
> >
> > Seems like a bug to me.
>
> It's certainly a bug because the complexities aren't
> consistent. I'll look into it tomorrow.

Any news on this? I could go on a bughunt sometime if need be.

Keenan

🔗Graham Breed <gbreed@gmail.com>

9/12/2011 2:08:04 AM

"Keenan Pepper" <keenanpepper@gmail.com> wrote:
> --- In tuning-math@yahoogroups.com, Graham Breed
> <gbreed@...> wrote:
> >
> > "Keenan Pepper" <keenanpepper@...> wrote:
> > >
> > > http://x31eq.com/cgi-bin/pregular.cgi?limit=3.4.5&error=5
> > >
> > > the top result looks like it should be "double-octave
> > > meantone", but the reduced mapping is all screwed up.
> > > It gives me [ <1 9 2] <0 -29 -2] > instead of the
> > > expected [ <1 1 2] <0 1 -2] >

> Any news on this? I could go on a bughunt sometime if
> need be.

It's because 4 is in the "prime" limit, but the equal
temperaments are defined as equal divisions of the octave.
With an odd number of divisions of an octave, the 4 gets
approximated to an exact half step. So what gets written
as 3bqqc should be 3bqc.

I haven't checked the code to find where the problem is.
It'll be a case of looking at the function for producing
the names, and the one for reverse engineering them. They
should deal with halves consistently. I expect it's a
floating point rounding error, so in one case it comes out
slightly less than half and rounds down when it should
round up.

Graham

🔗Graham Breed <gbreed@gmail.com>

9/14/2011 2:07:02 AM

"Keenan Pepper" <keenanpepper@gmail.com> wrote:

> http://x31eq.com/cgi-bin/pregular.cgi?limit=3.4.5&error=5
>
> the top result looks like it should be "double-octave
> meantone", but the reduced mapping is all screwed up. It
> gives me [ <1 9 2] <0 -29 -2] > instead of the expected
> [ <1 1 2] <0 1 -2] >

This should be fixed now. Let me know if you see any more
problems or regressions.

Graham