diff --git a/src/asgard_time_advance_tests.cpp b/src/asgard_time_advance_tests.cpp index 268aac381..ab5044547 100644 --- a/src/asgard_time_advance_tests.cpp +++ b/src/asgard_time_advance_tests.cpp @@ -130,18 +130,22 @@ TEST_CASE("adaptive time advance") SECTION("diffusion 2 implicit") { - auto const tol_factor = get_tolerance(1000); + // the condition number for the difusion PDE is large, use double-precision only + if (std::is_same_v) + { + auto const tol_factor = get_tolerance(1000); - auto const gold_base = - time_advance_base_dir / "diffusion2_ad_implicit_sg_l3_d4_t"; + auto const gold_base = + time_advance_base_dir / "diffusion2_ad_implicit_sg_l3_d4_t"; - auto opts = make_opts("-p diffusion_2 -d 3 -l 3 -n 5 -s impl -a 0.05 -sv direct"); + auto opts = make_opts("-p diffusion_2 -d 3 -l 3 -n 5 -s impl -a 0.05 -sv direct"); - // temporarily disable test for MPI due to table elements < num ranks - if (get_num_ranks() == 1) - { - time_advance_test(opts, gold_base, tol_factor); + // temporarily disable test for MPI due to table elements < num ranks + if (get_num_ranks() == 1) + time_advance_test(opts, gold_base, tol_factor); } + else + REQUIRE(true); } SECTION("diffusion 2 explicit") {