| 11 | |
| 12 | |
| 13 | template<typename MatrixType> void zeroReduction(const MatrixType& m) { |
| 14 | // Reductions that must hold for zero sized objects |
| 15 | VERIFY(m.all()); |
| 16 | VERIFY(!m.any()); |
| 17 | VERIFY(m.prod()==1); |
| 18 | VERIFY(m.sum()==0); |
| 19 | VERIFY(m.norm()==0); |
| 20 | VERIFY(m.squaredNorm()==0); |
| 21 | VERIFY(m.count()==0); |
| 22 | VERIFY(m.allFinite()); |
| 23 | VERIFY(!m.hasNaN()); |
| 24 | VERIFY_RAISES_ASSERT( m.minCoeff() ); |
| 25 | VERIFY_RAISES_ASSERT( m.maxCoeff() ); |
| 26 | Index i,j; |
| 27 | VERIFY_RAISES_ASSERT( m.minCoeff(&i,&j) ); |
| 28 | VERIFY_RAISES_ASSERT( m.maxCoeff(&i,&j) ); |
| 29 | VERIFY_RAISES_ASSERT( m.reshaped().minCoeff(&i) ); |
| 30 | VERIFY_RAISES_ASSERT( m.reshaped().maxCoeff(&i) ); |
| 31 | } |
| 32 | |
| 33 | |
| 34 | template<typename MatrixType> void zeroSizedMatrix() |