Lines Matching refs:symm
29 template<typename MatrixType,template <typename,int> class CholType> void test_chol_update(const MatrixType& symm)
35 MatrixType symmLo = symm.template triangularView<Lower>();
36 MatrixType symmUp = symm.template triangularView<Upper>();
37 MatrixType symmCpy = symm;
44 VectorType vec = VectorType::Random(symm.rows());
78 SquareMatrixType symm = a0 * a0.adjoint();
83 symm += a1 * a1.adjoint();
86 SquareMatrixType symmUp = symm.template triangularView<Upper>();
87 SquareMatrixType symmLo = symm.template triangularView<Lower>();
91 //symm.template part<StrictlyLower>().setZero();
95 VERIFY_IS_APPROX(symm, chollo.reconstructedMatrix());
97 VERIFY_IS_APPROX(symm * vecX, vecB);
99 VERIFY_IS_APPROX(symm * matX, matB);
103 VERIFY_IS_APPROX(symm, cholup.reconstructedMatrix());
105 VERIFY_IS_APPROX(symm * vecX, vecB);
107 VERIFY_IS_APPROX(symm * matX, matB);
125 symm = -symm; // test a negative matrix
128 SquareMatrixType symmUp = symm.template triangularView<Upper>();
129 SquareMatrixType symmLo = symm.template triangularView<Lower>();
132 VERIFY_IS_APPROX(symm, ldltlo.reconstructedMatrix());
134 VERIFY_IS_APPROX(symm * vecX, vecB);
136 VERIFY_IS_APPROX(symm * matX, matB);
139 VERIFY_IS_APPROX(symm, ldltup.reconstructedMatrix());
141 VERIFY_IS_APPROX(symm * vecX, vecB);
143 VERIFY_IS_APPROX(symm * matX, matB);
167 symm = -symm;
186 CALL_SUBTEST(( test_chol_update<SquareMatrixType,LLT>(symm) ));
187 CALL_SUBTEST(( test_chol_update<SquareMatrixType,LDLT>(symm) ));
210 RealMatrixType symm = a0 * a0.adjoint();
215 symm += a1 * a1.adjoint();
219 RealMatrixType symmLo = symm.template triangularView<Lower>();
222 VERIFY_IS_APPROX(symm, chollo.reconstructedMatrix());
224 VERIFY_IS_APPROX(symm * vecX, vecB);
226 // VERIFY_IS_APPROX(symm * matX, matB);
235 symm = -symm; // test a negative matrix
238 RealMatrixType symmLo = symm.template triangularView<Lower>();
241 VERIFY_IS_APPROX(symm, ldltlo.reconstructedMatrix());
243 VERIFY_IS_APPROX(symm * vecX, vecB);
245 // VERIFY_IS_APPROX(symm * matX, matB);