@@ -35,39 +35,43 @@ TEST(ErrorTest, VanillaSDC)
3535 auto get_iter = [](const vtype x) { return get<1 >(get<0 >(x)); };
3636 auto get_error = [](const vtype x) { return get<1 >(x); };
3737
38- {
39- auto errors = run_vanilla_sdc (0.0 );
40- auto max_iter = get_iter (*std::max_element (errors.begin (), errors.end (),
41- [get_iter](const vtype p1, const vtype p2) { return get_iter (p1) < get_iter (p2); }));
42-
43- vector<double > tol = { 7e-9 , 7e-9 , 7e-9 , 7e-9 };
44- vector<double > err;
45- for (auto & x: errors) {
46- if (get_iter (x) == max_iter) {
47- err.push_back (get_error (x));
48- }
49- }
38+ auto errors = run_vanilla_sdc (0.0 );
39+ auto max_iter = get_iter (*std::max_element (errors.begin (), errors.end (),
40+ [get_iter](const vtype p1, const vtype p2) { return get_iter (p1) < get_iter (p2); }));
5041
51- EXPECT_THAT (err, testing::Pointwise (DoubleLess (), tol));
52- ASSERT_EQ (max_iter, (size_t )3 );
42+ vector<double > tol = { 7e-9 , 7e-9 , 7e-9 , 7e-9 };
43+ vector<double > err;
44+ for (auto & x: errors) {
45+ if (get_iter (x) == max_iter) {
46+ err.push_back (get_error (x));
47+ }
5348 }
5449
55- {
56- auto errors = run_vanilla_sdc (1 .e -6 );
57- auto max_iter = get_iter (*std::max_element (errors.begin (), errors.end (),
58- [get_iter](const vtype p1, const vtype p2) { return get_iter (p1) < get_iter (p2); }));
59-
60- vector<double > tol = { 5e-8 , 5e-8 , 5e-8 , 5e-8 };
61- vector<double > err;
62- for (auto & x: errors) {
63- if (get_iter (x) == max_iter) {
64- err.push_back (get_error (x));
65- }
66- }
50+ EXPECT_THAT (err, testing::Pointwise (DoubleLess (), tol));
51+ ASSERT_EQ (max_iter, (size_t ) 3 );
52+ }
53+
54+ TEST (AdaptiveErrorTest, VanillaSDC)
55+ {
56+ typedef error_map::value_type vtype;
6757
68- EXPECT_THAT (err, testing::Pointwise (DoubleLess (), tol));
69- ASSERT_EQ (max_iter, (size_t )2 );
58+ auto get_iter = [](const vtype x) { return get<1 >(get<0 >(x)); };
59+ auto get_error = [](const vtype x) { return get<1 >(x); };
60+
61+ auto errors = run_vanilla_sdc (1 .e -6 );
62+ auto max_iter = get_iter (*std::max_element (errors.begin (), errors.end (),
63+ [get_iter](const vtype p1, const vtype p2) { return get_iter (p1) < get_iter (p2); }));
64+
65+ vector<double > tol = { 5e-8 , 5e-8 , 5e-8 , 5e-8 };
66+ vector<double > err;
67+ for (auto & x: errors) {
68+ if (get_iter (x) == max_iter) {
69+ err.push_back (get_error (x));
70+ }
7071 }
72+
73+ EXPECT_THAT (err, testing::Pointwise (DoubleLess (), tol));
74+ ASSERT_EQ (max_iter, (size_t ) 2 );
7175}
7276
7377TEST (ErrorTest, SerialMLSDC)
0 commit comments