Question: Interference of Physics package with matrix multiplication?

January 12 2014 Mac Dude 535

I am running into what looks like an interference between the Physics package and linear algebra, specifically when using the . (dot operator) to stand for matrix-vector multiplication:

I have a column vector and a matrix and need to evaluate the product matrix.vector. Usually this works fine and gives me the column vector with the result, just as expected. In this particular case (having with(Physics[Vectors]) at the top of the sheet) I get an error message:

Error, (in Typesetting:-delayDotProduct) invalid input: Physics:-Vectors:-`.` expects its 1st argument, a, to be of type Or({algebraic, procedure}, `=`), but received Matrix(3, 3, ...)

The Matrix it complains about is in fact the one I am sending it. It was created from a Physics:-Vectors object using the Component function (so it should be a regular Maple Matrix). In fact, the Matrix is the result of a LinearAlgebra:-MatrixInverse operation.

The weird thing is: This works when I am using 1-d input in Worksheet mode (which I am usually doing). In this case I am creating a sheet in Document mode using 2-d input as it is a sheet I will use in some teaching activity later this year, so I want it to look more polished. I can replace the dot with the relevant MatrixVectorMultiply function and it will work, but that is a kludge I don't think  should be necessary.

Anybody ever seen this? BTW, I am doing this on Maple 15 using the version of Physics that came with it.


Mac Dude


Please Wait...