From 446d14f6ada663b1e5d0a8afc37c1e9b054b1b29 Mon Sep 17 00:00:00 2001 From: Chen-Pang He Date: Sat, 22 Sep 2012 03:26:00 +0800 Subject: Implement matrix power-matrix product again --- Eigen/src/Core/NoAlias.h | 4 ++++ Eigen/src/Core/util/ForwardDeclarations.h | 1 + 2 files changed, 5 insertions(+) (limited to 'Eigen/src/Core') diff --git a/Eigen/src/Core/NoAlias.h b/Eigen/src/Core/NoAlias.h index 0112c865b..fcf2c479c 100644 --- a/Eigen/src/Core/NoAlias.h +++ b/Eigen/src/Core/NoAlias.h @@ -80,6 +80,10 @@ class NoAlias template EIGEN_STRONG_INLINE ExpressionType& operator-=(const CoeffBasedProduct& other) { return m_expression.derived() -= CoeffBasedProduct(other.lhs(), other.rhs()); } + + template + EIGEN_STRONG_INLINE ExpressionType& operator=(const MatrixPowerProductBase& other) + { other.derived().evalTo(m_expression); return m_expression; } #endif ExpressionType& expression() const diff --git a/Eigen/src/Core/util/ForwardDeclarations.h b/Eigen/src/Core/util/ForwardDeclarations.h index 30d32e2dc..1a3e14b30 100644 --- a/Eigen/src/Core/util/ForwardDeclarations.h +++ b/Eigen/src/Core/util/ForwardDeclarations.h @@ -272,6 +272,7 @@ template class MatrixFunctionReturnValue; template class MatrixSquareRootReturnValue; template class MatrixLogarithmReturnValue; template class MatrixPowerReturnValue; +template class MatrixPowerProductBase; namespace internal { template -- cgit v1.2.3