diff --git a/src/FiniteDifference/tests/Upwind_gradient_unit_test.cpp b/src/FiniteDifference/tests/Upwind_gradient_unit_test.cpp index f0e3873f00c50f20be4f48690059b349ac635c5a..f1c068d905e9dee21c34288cf8ddaf26e717857c 100644 --- a/src/FiniteDifference/tests/Upwind_gradient_unit_test.cpp +++ b/src/FiniteDifference/tests/Upwind_gradient_unit_test.cpp @@ -76,13 +76,7 @@ BOOST_AUTO_TEST_SUITE(UpwindGradientTestSuite) LNorms<double> lNorms; lNorms.get_l_norms_grid<Error>(g_dist); - // std::cout << N << ", " << lNorms.l2 << ", " << lNorms.linf << std::endl; - lNorms.write_to_file(N, 6, "l_norms_upwindGrad_convOrder_" + std::to_string(convergence_order), "" - "./"); - // if(N==128) g_dist.write("grid_gaussian_upwindGradient_N" + std::to_string(N), FORMAT_BINARY); - - //0.389541847481952 if (N==32) BOOST_CHECK_MESSAGE(lNorms.l2 <= 0.38954184748195 + EPSILON, "Checking L2-norm upwind gradient " "order " + std::to_string (convergence_order)); @@ -147,11 +141,6 @@ BOOST_AUTO_TEST_SUITE(UpwindGradientTestSuite) LNorms<double> lNorms; lNorms.get_l_norms_grid<Error>(g_dist); -// std::cout << N << ", " << lNorms.l2 << ", " << lNorms.linf << std::endl; - -// lNorms.write_to_file(N, 6, "l_norms_upwindGrad_convOrder_" + std::to_string(convergence_order), "" -// "./"); -// if(N==128) g_dist.write("grid_gaussian_upwindGradient_N" + std::to_string(N), FORMAT_BINARY); if (N==32) BOOST_CHECK_MESSAGE(lNorms.l2 <= 0.08667855716144 + EPSILON, "Checking L2-norm upwind gradient " "order " @@ -215,12 +204,7 @@ BOOST_AUTO_TEST_SUITE(UpwindGradientTestSuite) LNorms<double> lNorms; lNorms.get_l_norms_grid<Error>(g_dist); -// std::cout << N << ", " << lNorms.l2 << ", " << lNorms.linf << std::endl; - -// lNorms.write_to_file(N, 6, "l_norms_upwindGrad_convOrder_" + std::to_string(convergence_order), "" -// "./"); -// if(N==128) g_dist.write("grid_gaussian_upwindGradient_N" + std::to_string(N), FORMAT_BINARY); - + if (N==32) BOOST_CHECK_MESSAGE(lNorms.l2 <= 0.03215172234342 + EPSILON, "Checking L2-norm upwind gradient " "order " + std::to_string(convergence_order)); @@ -282,12 +266,7 @@ BOOST_AUTO_TEST_SUITE(UpwindGradientTestSuite) LNorms<double> lNorms; lNorms.get_l_norms_grid<Error>(g_dist); -// lNorms.write_to_file(N, 6, "l_norms_upwindGrad_3D_convOrder_" + std::to_string(convergence_order) -// , "" -// "./"); -// g_dist.write("grid_gaussian_upwindGradient_N" + std::to_string(N) + "_order" + std::to_string -// (convergence_order), FORMAT_BINARY); - + if(N==32) { switch(convergence_order) diff --git a/src/level_set/redistancing_Sussman/tests/help_functions_unit_test.cpp b/src/level_set/redistancing_Sussman/tests/help_functions_unit_test.cpp index e0e7637fbd2bb52a1a155c2fba55858ba01969c2..94dedb5178af0df0d2de49367769e753dc85582d 100644 --- a/src/level_set/redistancing_Sussman/tests/help_functions_unit_test.cpp +++ b/src/level_set/redistancing_Sussman/tests/help_functions_unit_test.cpp @@ -23,18 +23,27 @@ BOOST_AUTO_TEST_SUITE(HelpFunctionsTestSuite) const size_t sz[grid_dim] = {32}; grid_type g_dist(sz, box, ghost); - double i = 3.3; + // Each processor assigns smaller_value to the first grid node in its domain + double smaller_value = 0.1; auto dom = g_dist.getDomainIterator(); + auto key_0 = dom.get(); + g_dist.template get<Field>(key_0) = smaller_value; + ++dom; + + // Afterwards we loop over the other grid nodes and assign them another bigger number + double bigger_value = 0.5; while(dom.isNext()) { - i -= 0.1; auto key = dom.get(); - g_dist.template get<Field>(key) = i; + g_dist.template get<Field>(key) = bigger_value; ++dom; } - auto correct_value = i; + + // Now we check if get_min_value returns smaller_value auto min_value = get_min_val<Field>(g_dist); - BOOST_CHECK_MESSAGE(min_value == correct_value, "Checking if minimum value stored in grid is returned."); + double tolerance = 1e-12; + BOOST_CHECK_MESSAGE(isApproxEqual(min_value, smaller_value, tolerance), "Checking if smallest value stored in grid " + "is returned."); } BOOST_AUTO_TEST_CASE(get_max_val_test) @@ -49,17 +58,27 @@ BOOST_AUTO_TEST_SUITE(HelpFunctionsTestSuite) const size_t sz[grid_dim] = {32}; grid_type g_dist(sz, box, ghost); - double i = 0.0; + // Each processor assigns smaller_value to the first grid node in its domain + double smaller_value = 0.1; auto dom = g_dist.getDomainIterator(); + auto key_0 = dom.get(); + g_dist.template get<Field>(key_0) = smaller_value; + ++dom; + + // Afterwards we loop over the other grid nodes and assign them another bigger number + double bigger_value = 0.5; while(dom.isNext()) { - i += 0.1; auto key = dom.get(); - g_dist.template get<Field>(key) = i; + g_dist.template get<Field>(key) = bigger_value; ++dom; } - auto correct_value = i; + + // Now we check if get_max_value returns bigger_value auto max_value = get_max_val<Field>(g_dist); - BOOST_CHECK_MESSAGE(max_value == correct_value, "Checking if maximum value stored in grid is returned."); + double tolerance = 1e-12; + BOOST_CHECK_MESSAGE(isApproxEqual(max_value, bigger_value, tolerance), "Checking if smallest value stored in " + "grid " + "is returned."); } BOOST_AUTO_TEST_SUITE_END() diff --git a/src/level_set/redistancing_Sussman/tests/narrowBand_unit_test.cpp b/src/level_set/redistancing_Sussman/tests/narrowBand_unit_test.cpp index 0714b4335b17691e34216f5f0d845bef7d3fc779..0561ca287e565ead1e58b92f3dd8bdd68470eb68 100644 --- a/src/level_set/redistancing_Sussman/tests/narrowBand_unit_test.cpp +++ b/src/level_set/redistancing_Sussman/tests/narrowBand_unit_test.cpp @@ -14,6 +14,7 @@ BOOST_AUTO_TEST_SUITE(NarrowBandTestSuite) BOOST_AUTO_TEST_CASE(NarrowBand_unit_sphere) { + auto & v_cl = create_vcluster(); typedef double phi_type; const size_t dims = 3; // some indices @@ -58,13 +59,14 @@ BOOST_AUTO_TEST_SUITE(NarrowBandTestSuite) size_t narrow_band_width = 8; NarrowBand<grid_in_type, phi_type> narrowBand(g_dist, narrow_band_width); // Instantiation of NarrowBand class narrowBand.get_narrow_band<SDF_exact_grid, SDF_vd, Gradient_vd, magnOfGrad_vd>(g_dist, vd_narrow_band); - - int npnt = vd_narrow_band.size_local(); - auto & v_cl = create_vcluster(); - v_cl.sum(npnt); - v_cl.execute(); - - - BOOST_CHECK(npnt == 6568); + + size_t narrow_band_size = vd_narrow_band.size_local(); + if (v_cl.size() > 1) + { + v_cl.sum(narrow_band_size); + v_cl.execute(); + } + + BOOST_CHECK(narrow_band_size == 6568); } BOOST_AUTO_TEST_SUITE_END()