12 template<
typename Scalar>
void
19 refMat = refMat * refMat.adjoint();
20 for (
int k=0; k<2; ++k)
23 refMat += aux * aux.adjoint();
26 for (
int j=0 ;
j<sparseMat.
cols(); ++
j)
27 for (
int i=
j ;
i<sparseMat.
rows(); ++
i)
42 std::vector<Vector2i> zeroCoords;
43 std::vector<Vector2i> nonzeroCoords;
59 m2.template triangularView<Upper>().solve(
vec3));
60 VERIFY_IS_APPROX(refMat2.conjugate().template triangularView<Upper>().solve(vec2),
61 m2.conjugate().template triangularView<Upper>().solve(
vec3));
66 VERIFY_IS_APPROX(refMat2.conjugate().template triangularView<Upper>().solve(vec2),
67 mm2.conjugate().template triangularView<Upper>().solve(
vec3));
72 VERIFY_IS_APPROX(refMat2.transpose().template triangularView<Upper>().solve(vec2),
73 m2.transpose().template triangularView<Upper>().solve(
vec3));
93 refMat2.template triangularView<Upper>().solveInPlace(refMatB);
94 m2.template triangularView<Upper>().solveInPlace(
matB);
105 refMatB.resize(0,refMatB.cols());
121 int s = internal::random<int>(1,300);