mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-06-04 18:54:00 +08:00
updated product test to carefully test all scalar types
and fix an issue in the triangular test
This commit is contained in:
parent
45cda6704a
commit
f0eb3d2d3b
@ -95,15 +95,19 @@ void EigenTest::testProduct()
|
|||||||
{
|
{
|
||||||
for(int i = 0; i < m_repeat; i++) {
|
for(int i = 0; i < m_repeat; i++) {
|
||||||
product(Matrix<float, 1, 1>());
|
product(Matrix<float, 1, 1>());
|
||||||
|
product(Matrix<float, 3, 3>());
|
||||||
|
product(Matrix<float, 4, 2>());
|
||||||
product(Matrix4d());
|
product(Matrix4d());
|
||||||
product(MatrixXcf(3, 3));
|
|
||||||
product(MatrixXf(13, 25));
|
|
||||||
product(MatrixXi(4, 4));
|
|
||||||
product(MatrixXcd(20, 20));
|
|
||||||
}
|
}
|
||||||
|
for(int i = 0; i < m_repeat; i++) {
|
||||||
// test a large matrix only once
|
int rows = ei_random<int>(1,320);
|
||||||
product(MatrixXf(100,100));
|
int cols = ei_random<int>(1,320);
|
||||||
|
product(MatrixXf(rows, cols));
|
||||||
|
product(MatrixXd(rows, cols));
|
||||||
|
product(MatrixXi(rows, cols));
|
||||||
|
product(MatrixXcf(rows, cols));
|
||||||
|
product(MatrixXcd(rows, cols));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Eigen
|
} // namespace Eigen
|
||||||
|
@ -70,13 +70,13 @@ template<typename MatrixType> void triangular(const MatrixType& m)
|
|||||||
|
|
||||||
// test overloaded operator=
|
// test overloaded operator=
|
||||||
m1.setZero();
|
m1.setZero();
|
||||||
m1.upper() = m2.transpose() * m2;
|
m1.upper() = (m2.transpose() * m2).lazy();
|
||||||
m3 = m2.transpose() * m2;
|
m3 = m2.transpose() * m2;
|
||||||
VERIFY_IS_APPROX(m3.lower().transpose(), m1);
|
VERIFY_IS_APPROX(m3.lower().transpose(), m1);
|
||||||
|
|
||||||
// test overloaded operator=
|
// test overloaded operator=
|
||||||
m1.setZero();
|
m1.setZero();
|
||||||
m1.lower() = m2.transpose() * m2;
|
m1.lower() = (m2.transpose() * m2).lazy();
|
||||||
VERIFY_IS_APPROX(m3.lower(), m1);
|
VERIFY_IS_APPROX(m3.lower(), m1);
|
||||||
|
|
||||||
// test back and forward subsitution
|
// test back and forward subsitution
|
||||||
|
Loading…
x
Reference in New Issue
Block a user