Scythe-1.0.3
template<typename T_type = double, matrix_order ORDER = Col, matrix_style STYLE = Concrete>
template<matrix_order O, matrix_style S>
Matrix& scythe::Matrix< T_type, ORDER, STYLE >::operator*= ( const Matrix< T_type, O, S > &  M) [inline]

Multiply this Matrix by another.

This operator multiplies this Matrix by another and places the result into this Matrix. The two matrices must conform; this Matrix must have as many columns as the right hand side Matrix has rows.

Matrix multiplication always causes a Matrix to detach() from its current view, because it generally requires a resize(). Even when it is not absolutely necessary to detach() the Matrix, this function will do so to maintain consistency.

Scythe will use LAPACK/BLAS routines to multiply concrete column-major matrices of double-precision floating point numbers if LAPACK/BLAS is available and you compile your program with the SCYTHE_LAPACK flag enabled.

Parameters:
MThe Matrix to multiply this one by.
See also:
operator*=(T_type)
operator+=(const Matrix<T_type, O, S> &)
operator-=(const Matrix<T_type, O, S> &)
operator%=(const Matrix<T_type, O, S> &)
operator/=(const Matrix<T_type, O, S> &)
operator^=(const Matrix<T_type, O, S> &)
kronecker(const Matrix<T_type, O, S> &)
Exceptions:
scythe_conformation_error(Level 1)
scythe_alloc_error(Level 1)