Fix flaky product and eigensolver_selfadjoint tests

libeigen/eigen!2326

Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com>
This commit is contained in:
Rasmus Munk Larsen
2026-03-20 13:44:03 -07:00
parent a72172e563
commit a0b16a7e1b
2 changed files with 39 additions and 16 deletions

View File

@@ -26,7 +26,7 @@ void selfadjointeigensolver_essential_check(const MatrixType& m) {
VERIFY_IS_EQUAL(eiSymm.info(), Success);
RealScalar scaling = m.cwiseAbs().maxCoeff();
RealScalar unitary_error_factor = RealScalar(16);
RealScalar unitary_error_factor = RealScalar(32);
if (scaling < (std::numeric_limits<RealScalar>::min)()) {
VERIFY(eiSymm.eigenvalues().cwiseAbs().maxCoeff() <= (std::numeric_limits<RealScalar>::min)());
@@ -80,7 +80,7 @@ void selfadjointeigensolver(const MatrixType& m) {
MatrixType symmA = a.adjoint() * a + a1.adjoint() * a1;
MatrixType symmC = symmA;
svd_fill_random(symmA, Symmetric);
svd_fill_random(symmA, SelfAdjoint);
symmA.template triangularView<StrictlyUpper>().setZero();
symmC.template triangularView<StrictlyUpper>().setZero();