[SciPy-user] matrix mult operator
dmitrey
openopt@ukr....
Mon Jun 25 10:47:28 CDT 2007
hi all,
don't you think that numpy way of handling matrix multiplication is too
complicated:
suppose I have
F = A . (B . C)^T . D + C . ((D . B)^T * A) (last is elementwise
multiplication, '.' are matrix mult)
then I must do
def evalF(A,B,C,D)
from numpy import mdot, dot # Also, I'm not fond of writing such
lines each time
return mdot(A, dot(B, C).T, D) + dot(C, dot(D, B).T * A)
it's very long to read, especially if I have much longer lines
what about an operator, something like !* or *!
def evalF(A,B,C, D):
return A !* (B !* C).T !* D + C !* (D !* B).T * A
it's much more readable.
Of course, you can wait till Python will support unicode, but as for me
I would prefere not to wait so long.
I know that there had been already some discussions about the matrix
multiplication, but I decided to rise the question once again, because
mdot() turned out to not solve all problems. Also, I think the names
'dot'/ 'mdot' are inappropriate ones, because it is sound like 'dotwise'
multiplication.
D.
More information about the SciPy-user
mailing list