Paul E. asked me (repeatedly I'm afraid, sorry Paul :-( to clear-up my

pictures in http://www.kees.cc/tuning/lat_perbl.html

Especially the last one apparently causes confusion because of the mixed

taxicab-euclidean paradigm.

Well, it's just a (lame) attempt to visualize the metrics Paul and I use in

a Euclidean context. So it's _not_ a transformation to a Euclidean metric.

The paradox I mention is in the interpretation of the lattice picture. Equal

distances in the metric are not equal in the picture. (Because then it

_would_ be Euclidean.) So in the last picture I distort the image so that

all distances from the center to the lattice points correspond with the

Euclidean distance we actually see. But this only works for these distances

(relative to the center).

Hope this helps.

--- In tuning-math@y..., "Kees van Prooijen" <kees@d...> wrote:

> Paul E. asked me (repeatedly I'm afraid, sorry Paul :-( to clear-up

my

> pictures in http://www.kees.cc/tuning/lat_perbl.html

> Especially the last one apparently causes confusion because of the

mixed

> taxicab-euclidean paradigm.

> Well, it's just a (lame) attempt to visualize the metrics Paul and

I use in

> a Euclidean context. So it's _not_ a transformation to a Euclidean

metric.

> The paradox I mention is in the interpretation of the lattice

picture. Equal

> distances in the metric are not equal in the picture. (Because then

it

> _would_ be Euclidean.) So in the last picture I distort the image

so that

> all distances from the center to the lattice points correspond with

the

> Euclidean distance we actually see. But this only works for these

distances

> (relative to the center).

> Hope this helps.

Thanks Kees. I hope you'll be patient with me, because there's much

I'm trying to figure out.

Let's drop the Euclidean bit entirely, even from a given reference

point. I don't think it helps us at all. It's easy enough to

understand a taxicab metric, or whatever you call its triangular

generalization.

I'm trying to understand the two middle lattices you show on that

page. Although "mine" would seem to agree with your own feeling

(expressed on your main page) that an appropriate error weighting for

evaluating temperaments would be

f3 + log(3)/log(5)*f5 + log(3)/log(5)*f(5/3)

(I would love for you to explain this feeling if you could)

, there seems to be something desirable about "yours" -- for one

thing, I have a strong hope that your lattice implies some alternate

error weighting (and perhaps a nonlinear formula) that would make

my "heuristic" almost exactly perfect. My heuristic is that, if you

temper out _one_ unison vector n:d in the 5-limit, and hence end up

with a linear temperament, if you then optimize the generator

according to the "right" error function, the temperament's

(minimized) error is proportional to

(n-d)/(d*log(d))

I have found that a simple error function, an equal-weighted RMS over

the three consonant intervals, bears out the heuristic to within a

factor of 2 for an extremely wide range of unison vectors (one might

say all of them). I'm searching for the error function which will

make my heuristic almost exactly perfect -- and I

suspect "your" "taxicab" metric has a whole lot to do with it. So

far, Gene has not helped me at all -- perhaps you can help??

Thanks,

Paul

From my experience with taxis in Asia, I can tell that

the "taxicab" metric is not always identical to the

"city block" metric :-)

Manuel

> From: <manuel.op.de.coul@eon-benelux.com>

> To: <tuning-math@yahoogroups.com>

> Sent: Monday, January 14, 2002 8:33 AM

> Subject: Re: [tuning-math] Re: metric visualization

>

>

>

> From my experience with taxis in Asia, I can tell that

> the "taxicab" metric is not always identical to the

> "city block" metric :-)

Hah! That's funny.

Manuel, I noticed in your "tips.par" file that you refer

to the taxicab metric as a "Manhattan" metric. I like that.

-monz

_________________________________________________________

Do You Yahoo!?

Get your free @yahoo.com address at http://mail.yahoo.com

Hi Paul,

Just from the top of my head, try this:

Take the inverse of the last matrix I mention, so you get:

( 0.5 * sqrt(3) * log(5) -0.5 * log(5) )

( 0 log(3) )

or

( 0.91024 -0.52553 )

( 0.00000 0.57735 )

As error function, make a vector of the (signed) errors for 3 and 5,

multiply this with the constructed matrix, take the norm of the

result as error.

Curious if this will work as you expect. To be exact the non-linear

correction as resulting in the last picture should also be applied (I

think), but I doubt that will very influential.

Kees

--- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> Hi Paul,

>

> Just from the top of my head, try this:

> Take the inverse of the last matrix I mention, so you get:

>

> ( 0.5 * sqrt(3) * log(5) -0.5 * log(5) )

> ( 0 log(3) )

>

> or

>

> ( 0.91024 -0.52553 )

> ( 0.00000 0.57735 )

>

> As error function, make a vector of the (signed) errors for 3 and

5,

> multiply this with the constructed matrix, take the norm of the

> result as error.

To verify that I did this right, does the "van-Prooijen-optimal

meantone" have a generator of 695.982 cents?

> Curious if this will work as you expect.

I get 0.00576743 as the error in octaves of this meantone. Now for

the Enneadecal temperament, based on unison vector

2^14 * 3^19 * 5^-19 ,

I get 497.994 cents as the van-Prooijen-optimal generator (period

1/19 oct.), and 0.000152973 octave as the error.

Now (81-80)/(81*log(81)) = 0.00280938, and 0.00280938/0.00576743 =

0.487111

Meanwhile, (5^19 - 2^14 * 3^19)/(5^19 * log(5^19)) = 5.314056e-5, and

5.314056e-5/0.000152973 = 0.347385

So, this looks like a "no-go" . . . can you verify that my

calculations are correct?

> To be exact the non-linear

> correction as resulting in the last picture should also be applied

(I

> think), but I doubt that will very influential.

Again, I'm not seeing what the pseudo-Euclidean picture could have to

offer. Isn't the taxicab metric already "perfect" -- or am I missing

something?

Kees, when I calculate this:

>

> ( 0.5 * sqrt(3) * log(5) -0.5 * log(5) )

> ( 0 log(3) )

I don't get

> ( 0.91024 -0.52553 )

> ( 0.00000 0.57735 )

as you said -- instead I get

( 1.3938 -0.80472 )

( 0 1.0986 )

or, using base-5 logs,

( 0.86603 -0.5 )

( 0 0.68261 )

Did you have a typo somewhere?

--- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

>

> Did you have a typo somewhere?

Sorry Paul, forgot to divide by determinant in symbolic expression.

The numerics should be ok.

--- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> --- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> >

> > Did you have a typo somewhere?

>

> Sorry Paul, forgot to divide by determinant in symbolic expression.

> The numerics should be ok.

The two matrices you gave (one with formulae, one with 5-digit

numbers) do not agree, even up to a multiplicative constant. So am I

to take the matrix with 5-digit numbers? If I do, I get 695.72 cents

as the optimal meantone generator, with error 0.0036241 oct.; I get

498.02 cents as the optimal enneadecal generator, with error 9.3852e-

005 . . . now 0.0036241/0.0028094 = 1.29, and 9.3852e-5/5.3141e-5 =

1.7661 . . . so this doesn't seem to work either . . . can you verify

my numbers?

--- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> to take the matrix with 5-digit numbers? If I do, I get 695.72

cents

> as the optimal meantone generator, with error 0.0036241 oct.; I get

> 498.02 cents as the optimal enneadecal generator, with error

9.3852e-

> 005 . . . now 0.0036241/0.0028094 = 1.29, and 9.3852e-5/5.3141e-5 =

> 1.7661 . . . so this doesn't seem to work either . . . can you

verify

> my numbers?

I really shouldn't be tempted to do this from my job. I'm not

equipped with tools and time to do it right.

I don't know what went wrong, but the right numbers as far as I can

see now (cross my fingers) are:

( 0.91024 -0.52553 )

( 0.00000 0.71746 )

I will take a better look at it tonight.

Kees

--- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> I don't know what went wrong, but the right numbers as far as I can

> see now (cross my fingers) are:

> ( 0.91024 -0.52553 )

> ( 0.00000 0.71746 )

This gives the same result as your original, formulaically expressed

matrix.

> I will take a better look at it tonight.

I appreciate it greatly.

By the way, Kees, by "norm" I assume you meant the 2-norm . . . but

that would be the Euclidean norm . . . would the appropriate taxicab

norm be, instead, the maximum of the entries in the vector? Or what?

That's exactly what the nonlinear thingy is about, to correct the

result of the linear transformation and euclidean norm. I guess you

could avoid all this by just taking the conditional metric I started

with.

--- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> By the way, Kees, by "norm" I assume you meant the 2-norm . . . but

> that would be the Euclidean norm . . . would the appropriate

taxicab

> norm be, instead, the maximum of the entries in the vector? Or what?

The conditional metric -- isn't this just a triangular-taxicab metric

over a suitably defined lattice?

P.S. Assuming that, and so using max instead of Euclidean norm, I

found some slight variation of your matrix last night, that seemed to

get the meantone number to agree with the enneadecal number . . . but

today, I've lost it! HELP!!

--- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> That's exactly what the nonlinear thingy is about, to correct the

> result of the linear transformation and euclidean norm. I guess you

> could avoid all this by just taking the conditional metric I

started

> with.

>

> --- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> > By the way, Kees, by "norm" I assume you meant the 2-norm . . .

but

> > that would be the Euclidean norm . . . would the appropriate

> taxicab

> > norm be, instead, the maximum of the entries in the vector? Or

what?

--- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> The conditional metric -- isn't this just a triangular-taxicab

metric

> over a suitably defined lattice?

>

> P.S. Assuming that, and so using max instead of Euclidean norm, I

> found some slight variation of your matrix last night, that seemed

to

> get the meantone number to agree with the enneadecal number . . .

but

> today, I've lost it! HELP!!

>

> --- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> > That's exactly what the nonlinear thingy is about, to correct the

> > result of the linear transformation and euclidean norm. I guess

you

> > could avoid all this by just taking the conditional metric I

> started

> > with.

> >

> > --- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> > > By the way, Kees, by "norm" I assume you meant the 2-norm . . .

> but

> > > that would be the Euclidean norm . . . would the appropriate

> > taxicab

> > > norm be, instead, the maximum of the entries in the vector? Or

> what?

Wel, isn't this yahoo interface nice. Here we go again:

I don't think MAX will work, because that's a symmetric square

metric, and we want a condition on the signs being equal or not.

I am now pretty sure the much to small generator is due to the non-

linear effects. The inverse matrix maps the hexagon to interval

space. The euclidean norm looks at circles. So I guess you first

should do the non-linear transformation circle -> hexagon.

That's getting complicated. That's why I suggested taking

the 'reversed' metric to begin with:

Let f3 and f5 be the errors.

If they are of equal sign:

error = max( |f3*log(5)|, |f5*log(3)| )

else:

error = |f3*log(5)| + |f5*log(3)|

I'm afraid I'm being much more intuitive than scientific here. In the

normal meantone case it gives regular 1/4 comma anyway as far as I

can see, so I really don't dare to say if it will be interesting in

any way, or even makes sense.

Kees

--- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> Wel, isn't this yahoo interface nice. Here we go again:

>

> I don't think MAX will work, because that's a symmetric square

> metric, and we want a condition on the signs being equal or not.

OK -- how about a MAX on the _three_ consonant intervals?

> I am now pretty sure the much to small generator is due to the non-

> linear effects. The inverse matrix maps the hexagon to interval

> space. The euclidean norm looks at circles. So I guess you first

> should do the non-linear transformation circle -> hexagon.

> That's getting complicated.

Yes, and I don't see any reason to use the euclidean norm.

> That's why I suggested taking

> the 'reversed' metric to begin with:

Did not understand that.

> Let f3 and f5 be the errors.

> If they are of equal sign:

> error = max( |f3*log(5)|, |f5*log(3)| )

> else:

> error = |f3*log(5)| + |f5*log(3)|

This is fine, but what about the geometry of _your_ triangular

lattice? _That_ would seem to be the one that would work, while here

it seems you're using _my_ triangular lattice.

> I'm afraid I'm being much more intuitive than scientific here. In

the

> normal meantone case it gives regular 1/4 comma anyway as far as I

> can see, so I really don't dare to say if it will be interesting in

> any way, or even makes sense.

I'll check it out later, as well as any other alternative based on

_your_ lattice that you might wish to present.

--- In tuning-math@y..., "keesvp" <kees@d...> wrote:

> Let f3 and f5 be the errors.

> If they are of equal sign:

> error = max( |f3*log(5)|, |f5*log(3)| )

> else:

> error = |f3*log(5)| + |f5*log(3)|

>

> I'm afraid I'm being much more intuitive than scientific here. In

the

> normal meantone case it gives regular 1/4 comma anyway as far as I

> can see

Kees, I don't think it gives 1/4-comma meantone.

In the vicinity of 1/4-comma meantone, since the errors are the same

sign,

error = max( |f3*log(5)|, |f5*log(3)| )

But f3 and f5 are equal in 1/4-comma meantone, while this error

function is actually minimized with a fifth of 698.01 cents.

However, I don't think your original formula makes much sense.

Shouldn't "if they are of equal sign" be replaced with "if they are

of opposite sign"?

In any case, if I directly use the formula you use to evaluate ETs on

http://www.kees.cc/tuning/perbl.html:

f3 + log(3)/log(5)*f5 + log(3)/log(5)*f(5/3)

intepret f3, f5, and f(5/3) as absolute values, and minimize this

sum, I do get 1/4-comma meantone. But if I take the MAX instead of

the sum of these three terms, I get a fifth of 697.1160 cents. This

is quite nice, and might belong on the table of optimal meantones.

Is this the "Kees optimal meantone" corresponding to my triangular

lattice in http://www.kees.cc/tuning/lat_perbl.html ?

If so, what error function would we use to calculate the "Kees

optimal meantone" corresponding to _your_ triangular lattice, the one

right after mine, in http://www.kees.cc/tuning/lat_perbl.html ? I'd

be pleased if you gave me a bunch of guesses -- the more I have to

try out, the better.

I wrote,

> In any case, if I directly use the formula you use to evaluate ETs

on

> http://www.kees.cc/tuning/perbl.html:

>

> f3 + log(3)/log(5)*f5 + log(3)/log(5)*f(5/3)

>

> intepret f3, f5, and f(5/3) as absolute values, and minimize this

> sum, I do get 1/4-comma meantone. But if I take the MAX instead of

> the sum of these three terms, I get a fifth of 697.1160 cents. This

> is quite nice, and might belong on the table of optimal meantones.

>

> Is this the "Kees optimal meantone" corresponding to my triangular

> lattice in http://www.kees.cc/tuning/lat_perbl.html ?

If so, it might be the one (or one) we want to consider for our paper.

But just to test how close it comes to my heuristic:

meantone: heuristic error = 0.00280938; optimized error = 0.00649007;

ratio = 0.43287

enneadecal: heuristic error = 5.31406e-5; optimized error = 1.35666e-

4; ratio = 0.39170

Still not as good as it should be.

What if I try the weights off Kees' here-posted matrix directly:

0.5 * sqrt(3) * log(5) for f3;

0.5 * log(5) for f(5/3);

log(3) for f5.

Then I get

meantone: heuristic error = 0.00280938; (optimal generator =

697.417¢;) optimized error = 0.00529287; ratio = 0.53078

enneadecal: heuristic error = 5.31406e-5; optimized error = 9.93739e-

5; ratio = 0.53475

Now that's more like it! If I use 80 instead of 81 for d in the

meantone one, I get a ratio of 0.539 instead if .531 -- so we seem to

have perfect agreement within the vagaries of the heuristic!

Now it's time to try one more example -- how about the 5-limit MAGIC

system? The UV is 3125:3072 . . .

magic: heuristic error = 0.002107568; (optimal generator = 380.791¢;)

optimized error = 0.005056214; ratio = 0.41682 :(

This is so sad! Who can fix this?

--- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> What if I try the weights off Kees' here-posted matrix directly:

>

> 0.5 * sqrt(3) * log(5) for f3;

> 0.5 * log(5) for f(5/3);

> log(3) for f5.

As that didn't work, I'll try the weights in the other matrix Kees

posted:

0.91024 for f3;

0.57735 for f5;

0.52553 for f(5/3).

I'll use the geometric mean of n and d in place of d in the

denominator of the heuristic:

|n-d|/(gm*log(gm)).

Meantone: optimal generator = 697.415¢ . . . ratio = 0.81962

Magic: opt. gen. = 380.508¢ . . . ratio = 0.760549

Back to the drawing board . . .

--- In tuning-math@y..., "paulerlich" <paul@s...> wrote:

> I wrote,

>

> > In any case, if I directly use the formula you use to evaluate

ETs

> on

> > http://www.kees.cc/tuning/perbl.html:

> >

> > f3 + log(3)/log(5)*f5 + log(3)/log(5)*f(5/3)

> >

> > intepret f3, f5, and f(5/3) as absolute values, and minimize this

> > sum, I do get 1/4-comma meantone. But if I take the MAX instead

of

> > the sum of these three terms, I get a fifth of 697.1160 cents.

A more exact calculation gives me 697.1383 cents . . .