Thanks Karl, so I guess I'll just use a temporary.
By the way, is this documented anywhere? I can't find it on boost.org. If not, probably it should be stated clearly.

Daniele

On 10/16/07, Karl Meerbergen <Karl.Meerbergen@cs.kuleuven.be> wrote:
Daniele wrote:

> Ok, in a hurry, I think I've make some mistakes, but I've tracked down
> the problem to this:
>     ublas::matrix<double> A(2, 2), B(2, 2), C(2, 2);
>     // initialize A and B ...
>     C = prod(A, ublas::matrix<double>(prod(B, A))); // C = A*B*A  this
> works
>     C = prod(A, prod(B, A)); // C = A*B*A  this doesn't work


Nested prod is not allowed I think. You should use a temporary for
storing prod(B,A).

Karl


_______________________________________________
ublas mailing list
ublas@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/ublas