Dividing through by the common factor of the whole normalised, inverted
matrix does do the trick for my multiple-29 vectors.
I think it's the *commatic* unison vectors that mean you have to do this.
So my unison vector finder needs to be improved (surprise!)
The second column of the normalised octave-specific inverse is always the
same as the first column of the octave-invariant one, with an extra zero.
I was forgetting the extra zero before. It may be this doesn't always
work for really silly unison vectors, but it does for all the examples
I've tried.
The octave-specific column of the octave-specific matrix is important for
getting the right scale-step mapping. This may be what was going wrong
with the multiple-29 before. Whatever, it works now.
I've got a rough and ready Excel spreadsheet showing this at
<http://x31eq.com/vectors.xls>.
You need to install the Analysis ToolPack for the GCD function to work.
Matrix operations work with the standard install.
The Exchange Server at work is currently flaky, and although I have
offline folders I don't seem to be able to get at them offline. So
although I did read an e-mail from Monzo this morning, I can't reply to
it.
I think any commatic unison vector will do to get the generator mapping,
so long as it's orthogonal to the other vectors. One good way of finding
such is to try a 1 in every column until the determinant is non-zero.
I'll try to include these changes in my Python code tonight. Python with
the Numerical extensions is a good way of hacking this stuff, but the
latter had disappeared from the FTP server last I checked, so I don't
know how you'll get hold of them.
The source code to MIDI Relay should include a matrix library for C++.
Graham
--- In tuning-math@y..., graham@m... wrote:
> I think any commatic
You mean chromatic?
> unison vector will do to get the generator mapping,
> so long as it's orthogonal to
You mean linearly independent from?
> the other vectors.
Paul wrote:
> > I think any commatic
>
> You mean chromatic?
Yes.
> > unison vector will do to get the generator mapping,
> > so long as it's orthogonal to
>
> You mean linearly independent from?
I think so, but I didn't take good notes in that lecture.
> > the other vectors.
>
Graham