mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-06-04 18:54:00 +08:00
Use VERIFY_IS_EQUAL to compare to zeros.
This commit is contained in:
parent
13a1f25da9
commit
3460f3558e
@ -24,10 +24,10 @@ template<typename MatrixType> void array_for_matrix(const MatrixType& m)
|
|||||||
|
|
||||||
ColVectorType cv1 = ColVectorType::Random(rows);
|
ColVectorType cv1 = ColVectorType::Random(rows);
|
||||||
RowVectorType rv1 = RowVectorType::Random(cols);
|
RowVectorType rv1 = RowVectorType::Random(cols);
|
||||||
|
|
||||||
Scalar s1 = internal::random<Scalar>(),
|
Scalar s1 = internal::random<Scalar>(),
|
||||||
s2 = internal::random<Scalar>();
|
s2 = internal::random<Scalar>();
|
||||||
|
|
||||||
// scalar addition
|
// scalar addition
|
||||||
VERIFY_IS_APPROX(m1.array() + s1, s1 + m1.array());
|
VERIFY_IS_APPROX(m1.array() + s1, s1 + m1.array());
|
||||||
VERIFY_IS_APPROX((m1.array() + s1).matrix(), MatrixType::Constant(rows,cols,s1) + m1);
|
VERIFY_IS_APPROX((m1.array() + s1).matrix(), MatrixType::Constant(rows,cols,s1) + m1);
|
||||||
@ -55,18 +55,18 @@ template<typename MatrixType> void array_for_matrix(const MatrixType& m)
|
|||||||
VERIFY_IS_APPROX(m3.rowwise() += rv1, m1.rowwise() + rv1);
|
VERIFY_IS_APPROX(m3.rowwise() += rv1, m1.rowwise() + rv1);
|
||||||
m3 = m1;
|
m3 = m1;
|
||||||
VERIFY_IS_APPROX(m3.rowwise() -= rv1, m1.rowwise() - rv1);
|
VERIFY_IS_APPROX(m3.rowwise() -= rv1, m1.rowwise() - rv1);
|
||||||
|
|
||||||
// empty objects
|
|
||||||
VERIFY_IS_APPROX((m1.template block<0,Dynamic>(0,0,0,cols).colwise().sum()), RowVectorType::Zero(cols));
|
|
||||||
VERIFY_IS_APPROX((m1.template block<Dynamic,0>(0,0,rows,0).rowwise().sum()), ColVectorType::Zero(rows));
|
|
||||||
VERIFY_IS_APPROX((m1.template block<0,Dynamic>(0,0,0,cols).colwise().prod()), RowVectorType::Ones(cols));
|
|
||||||
VERIFY_IS_APPROX((m1.template block<Dynamic,0>(0,0,rows,0).rowwise().prod()), ColVectorType::Ones(rows));
|
|
||||||
|
|
||||||
VERIFY_IS_APPROX(m1.block(0,0,0,cols).colwise().sum(), RowVectorType::Zero(cols));
|
// empty objects
|
||||||
VERIFY_IS_APPROX(m1.block(0,0,rows,0).rowwise().sum(), ColVectorType::Zero(rows));
|
VERIFY_IS_EQUAL((m1.template block<0,Dynamic>(0,0,0,cols).colwise().sum()), RowVectorType::Zero(cols));
|
||||||
VERIFY_IS_APPROX(m1.block(0,0,0,cols).colwise().prod(), RowVectorType::Ones(cols));
|
VERIFY_IS_EQUAL((m1.template block<Dynamic,0>(0,0,rows,0).rowwise().sum()), ColVectorType::Zero(rows));
|
||||||
VERIFY_IS_APPROX(m1.block(0,0,rows,0).rowwise().prod(), ColVectorType::Ones(rows));
|
VERIFY_IS_EQUAL((m1.template block<0,Dynamic>(0,0,0,cols).colwise().prod()), RowVectorType::Ones(cols));
|
||||||
|
VERIFY_IS_EQUAL((m1.template block<Dynamic,0>(0,0,rows,0).rowwise().prod()), ColVectorType::Ones(rows));
|
||||||
|
|
||||||
|
VERIFY_IS_EQUAL(m1.block(0,0,0,cols).colwise().sum(), RowVectorType::Zero(cols));
|
||||||
|
VERIFY_IS_EQUAL(m1.block(0,0,rows,0).rowwise().sum(), ColVectorType::Zero(rows));
|
||||||
|
VERIFY_IS_EQUAL(m1.block(0,0,0,cols).colwise().prod(), RowVectorType::Ones(cols));
|
||||||
|
VERIFY_IS_EQUAL(m1.block(0,0,rows,0).rowwise().prod(), ColVectorType::Ones(rows));
|
||||||
|
|
||||||
// verify the const accessors exist
|
// verify the const accessors exist
|
||||||
const Scalar& ref_m1 = m.matrix().array().coeffRef(0);
|
const Scalar& ref_m1 = m.matrix().array().coeffRef(0);
|
||||||
const Scalar& ref_m2 = m.matrix().array().coeffRef(0,0);
|
const Scalar& ref_m2 = m.matrix().array().coeffRef(0,0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user