mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
fix a couple of compilations issues
This commit is contained in:
@@ -103,15 +103,15 @@ template<typename MatrixType> void product_notemporary(const MatrixType& m)
|
||||
VERIFY_EVALUATION_COUNT( m3.col(c0) = ((s1 * m1).adjoint().template selfadjointView<LowerTriangular>() * (-m2.row(c0)*s3).adjoint()).lazy(), 0);
|
||||
VERIFY_EVALUATION_COUNT( m3.col(c0) -= ((s1 * m1).adjoint().template selfadjointView<UpperTriangular>() * (-m2.row(c0)*s3).adjoint()).lazy(), 0);
|
||||
|
||||
VERIFY_EVALUATION_COUNT( m3.block(r0,r0,r1,r1) += ((m1.block(r0,r0,r1,r1).template selfadjointView<UpperTriangular>() * (s1*m2.block(c0,r0,c1,r1)) )).lazy(), 0);
|
||||
VERIFY_EVALUATION_COUNT( m3.block(r0,r0,r1,r1) = ((m1.block(r0,r0,r1,r1).template selfadjointView<UpperTriangular>() * m2.block(c0,r0,c1,r1) )).lazy(), 0);
|
||||
VERIFY_EVALUATION_COUNT( m3.block(r0,c0,r1,c1) += ((m1.block(r0,r0,r1,r1).template selfadjointView<UpperTriangular>() * (s1*m2.block(r0,c0,r1,c1)) )).lazy(), 0);
|
||||
VERIFY_EVALUATION_COUNT( m3.block(r0,c0,r1,c1) = ((m1.block(r0,r0,r1,r1).template selfadjointView<UpperTriangular>() * m2.block(r0,c0,r1,c1) )).lazy(), 0);
|
||||
|
||||
VERIFY_EVALUATION_COUNT( m3.template selfadjointView<LowerTriangular>().rankUpdate(m2.adjoint()), 0);
|
||||
|
||||
m3.resize(1,1);
|
||||
VERIFY_EVALUATION_COUNT( m3 = ((m1.block(r0,r0,r1,r1).template selfadjointView<LowerTriangular>() * m2.block(c0,r0,c1,r1) )).lazy(), 0);
|
||||
VERIFY_EVALUATION_COUNT( m3 = ((m1.block(r0,r0,r1,r1).template selfadjointView<LowerTriangular>() * m2.block(r0,c0,r1,c1) )).lazy(), 0);
|
||||
m3.resize(1,1);
|
||||
VERIFY_EVALUATION_COUNT( m3 = ((m1.block(r0,r0,r1,r1).template triangularView<UnitUpperTriangular>() * m2.block(c0,r0,c1,r1) )).lazy(), 0);
|
||||
VERIFY_EVALUATION_COUNT( m3 = ((m1.block(r0,r0,r1,r1).template triangularView<UnitUpperTriangular>() * m2.block(r0,c0,r1,c1) )).lazy(), 0);
|
||||
}
|
||||
|
||||
void test_product_notemporary()
|
||||
|
||||
@@ -86,7 +86,7 @@ template<typename MatrixType> void submatrices(const MatrixType& m)
|
||||
|
||||
//check row() and col()
|
||||
VERIFY_IS_APPROX(m1.col(c1).transpose(), m1.transpose().row(c1));
|
||||
VERIFY_IS_APPROX(m1.col(c1).dot(square.row(r1)), (square.lazy() * m1.conjugate())(r1,c1));
|
||||
VERIFY_IS_APPROX(m1.col(c1).dot(square.row(r1)), (square.lazy() * m1.conjugate()).eval()(r1,c1));
|
||||
//check operator(), both constant and non-constant, on row() and col()
|
||||
m1.row(r1) += s1 * m1.row(r2);
|
||||
m1.col(c1) += s1 * m1.col(c2);
|
||||
|
||||
@@ -72,13 +72,13 @@ template<typename MatrixType> void triangular(const MatrixType& m)
|
||||
|
||||
// test overloaded operator=
|
||||
m1.setZero();
|
||||
m1.template triangularView<Eigen::UpperTriangular>() = (m2.transpose() * m2).lazy();
|
||||
m3 = m2.transpose() * m2;
|
||||
m1.template triangularView<Eigen::UpperTriangular>() = m2.transpose() + m2;
|
||||
m3 = m2.transpose() + m2;
|
||||
VERIFY_IS_APPROX(m3.template triangularView<Eigen::LowerTriangular>().transpose().toDense(), m1);
|
||||
|
||||
// test overloaded operator=
|
||||
m1.setZero();
|
||||
m1.template triangularView<Eigen::LowerTriangular>() = (m2.transpose() * m2).lazy();
|
||||
m1.template triangularView<Eigen::LowerTriangular>() = m2.transpose() + m2;
|
||||
VERIFY_IS_APPROX(m3.template triangularView<Eigen::LowerTriangular>().toDense(), m1);
|
||||
|
||||
m1 = MatrixType::Random(rows, cols);
|
||||
|
||||
Reference in New Issue
Block a user