From e889cffe23c9110f74f6a2303f6d8cdd906032ca Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Tue, 29 Oct 2024 08:54:39 -0700 Subject: [PATCH] Clarify in mju_boxQP test that for the synthetic test set, the average number of factorizations is expected to be 5 or less, while the worst case is expected to be 6 or less. PiperOrigin-RevId: 691037804 Change-Id: Id0bc8bedf08d623efcacbe696775f0ef0f6781b9 --- test/engine/engine_util_solve_test.cc | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/test/engine/engine_util_solve_test.cc b/test/engine/engine_util_solve_test.cc index 7d56e525..d4bea9a1 100644 --- a/test/engine/engine_util_solve_test.cc +++ b/test/engine/engine_util_solve_test.cc @@ -16,8 +16,12 @@ #include "src/engine/engine_util_solve.h" +#include +#include #include #include +#include +#include #include #include @@ -332,12 +336,21 @@ TEST_F(BoxQPTest, BoundedQPvariations) { string slog(log); string factorstr = "factorizations="; std::size_t index = slog.find(factorstr) + factorstr.length(); - factorizations += std::stoi(slog.substr(index, 3)); + int num_factor = std::stoi(slog.substr(index, 3)); + + // never more than 6 factorizations + EXPECT_LE(num_factor, 6); + + factorizations += num_factor; count++; } } } double meanfactor = ((double)factorizations) / count; + + // average of 4.5 factorizations is expected + EXPECT_LE(meanfactor, 5.0); + std::cerr << "n=" << setw(3) << n << ": average of " << meanfactor << " factorizations\n"; }