Home | History | Annotate | Download | only in test

Lines Matching refs:m1

23   ArrayType m1 = ArrayType::Random(rows, cols),
34 VERIFY_IS_APPROX(m1 + s1, s1 + m1);
35 VERIFY_IS_APPROX(m1 + s1, ArrayType::Constant(rows,cols,s1) + m1);
36 VERIFY_IS_APPROX(s1 - m1, (-m1)+s1 );
37 VERIFY_IS_APPROX(m1 - s1, m1 - ArrayType::Constant(rows,cols,s1));
38 VERIFY_IS_APPROX(s1 - m1, ArrayType::Constant(rows,cols,s1) - m1);
39 VERIFY_IS_APPROX((m1*Scalar(2)) - s2, (m1+m1) - ArrayType::Constant(rows,cols,s2) );
40 m3 = m1;
42 VERIFY_IS_APPROX(m3, m1 + s2);
43 m3 = m1;
45 VERIFY_IS_APPROX(m3, m1 - s1);
48 m3 = m1;
49 ArrayType::Map(m1.data(), m1.rows(), m1.cols()) -= ArrayType::Map(m2.data(), m2.rows(), m2.cols());
50 VERIFY_IS_APPROX(m1, m3 - m2);
52 m3 = m1;
53 ArrayType::Map(m1.data(), m1.rows(), m1.cols()) += ArrayType::Map(m2.data(), m2.rows(), m2.cols());
54 VERIFY_IS_APPROX(m1, m3 + m2);
56 m3 = m1;
57 ArrayType::Map(m1.data(), m1.rows(), m1.cols()) *= ArrayType::Map(m2.data(), m2.rows(), m2.cols());
58 VERIFY_IS_APPROX(m1, m3 * m2);
60 m3 = m1;
63 ArrayType::Map(m1.data(), m1.rows(), m1.cols()) /= ArrayType::Map(m2.data(), m2.rows(), m2.cols());
64 VERIFY_IS_APPROX(m1, m3 / m2);
67 VERIFY_IS_APPROX(m1.colwise().sum().sum(), m1.sum());
68 VERIFY_IS_APPROX(m1.rowwise().sum().sum(), m1.sum());
69 if (!internal::isApprox(m1.sum(), (m1+m2).sum(), test_precision<Scalar>()))
70 VERIFY_IS_NOT_APPROX(((m1+m2).rowwise().sum()).sum(), m1.sum());
71 VERIFY_IS_APPROX(m1.colwise().sum(), m1.colwise().redux(internal::scalar_sum_op<Scalar>()));
74 m3 = m1;
75 VERIFY_IS_APPROX(m3.colwise() += cv1, m1.colwise() + cv1);
76 m3 = m1;
77 VERIFY_IS_APPROX(m3.colwise() -= cv1, m1.colwise() - cv1);
78 m3 = m1;
79 VERIFY_IS_APPROX(m3.rowwise() += rv1, m1.rowwise() + rv1);
80 m3 = m1;
81 VERIFY_IS_APPROX(m3.rowwise() -= rv1, m1.rowwise() - rv1);
97 ArrayType m1 = ArrayType::Random(rows, cols),
101 VERIFY(((m1 + Scalar(1)) > m1).all());
102 VERIFY(((m1 - Scalar(1)) < m1).all());
105 m3 = m1;
107 VERIFY(! (m1 < m3).all() );
108 VERIFY(! (m1 > m3).all() );
112 VERIFY( (m1 != (m1(r,c)+1) ).any() );
113 VERIFY( (m1 > (m1(r,c)-1) ).any() );
114 VERIFY( (m1 < (m1(r,c)+1) ).any() );
115 VERIFY( (m1 == m1(r,c) ).any() );
118 VERIFY_IS_APPROX( (m1<m2).select(m1,m2), m1.cwiseMin(m2) );
119 VERIFY_IS_APPROX( (m1>m2).select(m1,m2), m1.cwiseMax(m2) );
120 Scalar mid = (m1.cwiseAbs().minCoeff() + m1.cwiseAbs().maxCoeff())/Scalar(2);
123 m3(i,j) = internal::abs(m1(i,j))<mid ? 0 : m1(i,j);
124 VERIFY_IS_APPROX( (m1.abs()<ArrayType::Constant(rows,cols,mid))
125 .select(ArrayType::Zero(rows,cols),m1), m3);
127 VERIFY_IS_APPROX( (m1.abs()<ArrayType::Constant(rows,cols,mid))
128 .select(0,m1), m3);
129 VERIFY_IS_APPROX( (m1.abs()>=ArrayType::Constant(rows,cols,mid))
130 .select(m1,0), m3);
132 VERIFY_IS_APPROX( (m1.abs()<mid).select(0,m1), m3);
135 VERIFY(((m1.abs()+1)>RealScalar(0.1)).count() == rows*cols);
138 VERIFY( (m1<RealScalar(0) && m1>RealScalar(0)).count() == 0);
139 VERIFY( (m1<RealScalar(0) || m1>=RealScalar(0)).count() == rows*cols);
140 RealScalar a = m1.abs().mean();
141 VERIFY( (m1<-a || m1>a).count() == (m1.abs()>a).count());
146 VERIFY_IS_APPROX(((m1.abs()+1)>RealScalar(0.1)).colwise().count(), ArrayOfIndices::Constant(cols,rows).transpose());
147 VERIFY_IS_APPROX(((m1.abs()+1)>RealScalar(0.1)).rowwise().count(), ArrayOfIndices::Constant(rows, cols));
159 ArrayType m1 = ArrayType::Random(rows, cols),
166 VERIFY_IS_APPROX(m1.sin(), std::sin(m1));
167 VERIFY_IS_APPROX(m1.sin(), internal::sin(m1));
168 VERIFY_IS_APPROX(m1.cos(), std::cos(m1));
169 VERIFY_IS_APPROX(m1.cos(), internal::cos(m1));
170 VERIFY_IS_APPROX(m1.asin(), std::asin(m1));
171 VERIFY_IS_APPROX(m1.asin(), internal::asin(m1));
172 VERIFY_IS_APPROX(m1.acos(), std::acos(m1));
173 VERIFY_IS_APPROX(m1.acos(), internal::acos(m1));
174 VERIFY_IS_APPROX(m1.tan(), std::tan(m1));
175 VERIFY_IS_APPROX(m1.tan(), internal::tan(m1));
177 VERIFY_IS_APPROX(internal::cos(m1+RealScalar(3)*m2), internal::cos((m1+RealScalar(3)*m2).eval()));
178 VERIFY_IS_APPROX(std::cos(m1+RealScalar(3)*m2), std::cos((m1+RealScalar(3)*m2).eval()));
180 VERIFY_IS_APPROX(m1.abs().sqrt(), std::sqrt(std::abs(m1)));
181 VERIFY_IS_APPROX(m1.abs().sqrt(), internal::sqrt(internal::abs(m1)));
182 VERIFY_IS_APPROX(m1.abs(), internal::sqrt(internal::abs2(m1)));
184 VERIFY_IS_APPROX(internal::abs2(internal::real(m1)) + internal::abs2(internal::imag(m1)), internal::abs2(m1));
185 VERIFY_IS_APPROX(internal::abs2(std::real(m1)) + internal::abs2(std::imag(m1)), internal::abs2(m1));
187 VERIFY_IS_APPROX(internal::real(m1), m1);
189 VERIFY_IS_APPROX(m1.abs().log(), std::log(std::abs(m1)));
190 VERIFY_IS_APPROX(m1.abs().log(), internal::log(internal::abs(m1)));
192 VERIFY_IS_APPROX(m1.exp(), std::exp(m1));
193 VERIFY_IS_APPROX(m1.exp() * m2.exp(), std::exp(m1+m2));
194 VERIFY_IS_APPROX(m1.exp(), internal::exp(m1));
195 VERIFY_IS_APPROX(m1.exp() / m2.exp(), std::exp(m1-m2));
197 VERIFY_IS_APPROX(m1.pow(2), m1.square());
198 VERIFY_IS_APPROX(std::pow(m1,2), m1.square());
201 VERIFY_IS_APPROX(std::pow(m1,exponents), m1.square());
203 m3 = m1.abs();
210 m1 += ArrayType::Constant(rows,cols,Scalar(tiny));
211 VERIFY_IS_APPROX(s1/m1, s1 * m1.inverse());
221 ArrayType m1 = ArrayType::Random(rows, cols),
226 m2(i,j) = std::sqrt(m1(i,j));
228 VERIFY_IS_APPROX(m1.sqrt(), m2);
229 VERIFY_IS_APPROX(m1.sqrt(), std::sqrt(m1));
230 VERIFY_IS_APPROX(m1.sqrt(), internal::sqrt(m1));
241 ArrayType m1 = ArrayType::Random(rows, cols);
244 Scalar maxM1 = m1.maxCoeff();
245 Scalar minM1 = m1.minCoeff();
247 VERIFY_IS_APPROX(ArrayType::Constant(rows,cols, minM1), (m1.min)(ArrayType::Constant(rows,cols, minM1)));
248 VERIFY_IS_APPROX(m1, (m1.min)(ArrayType::Constant(rows,cols, maxM1)));
250 VERIFY_IS_APPROX(ArrayType::Constant(rows,cols, maxM1), (m1.max)(ArrayType::Constant(rows,cols, maxM1)));
251 VERIFY_IS_APPROX(m1, (m1.max)(ArrayType::Constant(rows,cols, minM1)));
254 VERIFY_IS_APPROX(ArrayType::Constant(rows,cols, minM1), (m1.min)( minM1));
255 VERIFY_IS_APPROX(m1, (m1.min)( maxM1));
257 VERIFY_IS_APPROX(ArrayType::Constant(rows,cols, maxM1), (m1.max)( maxM1));
258 VERIFY_IS_APPROX(m1, (m1.max)( minM1));