From: Peter Munch Date: Fri, 30 Apr 2021 22:16:28 +0000 (+0200) Subject: Remove DEAL_II_WITH_SIMPLEX_SUPPORT X-Git-Tag: v9.3.0-rc1~158^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=21e14e371fa595b50ac8387c63b3ac06e6731386;p=dealii.git Remove DEAL_II_WITH_SIMPLEX_SUPPORT --- diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index d41a308761..6d33e88605 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -65,7 +65,6 @@ jobs: -D DEAL_II_CXX_FLAGS='-Werror' \ -D DEAL_II_EARLY_DEPRECATIONS=ON \ -D DEAL_II_WITH_MPI="ON" \ - -D DEAL_II_WITH_SIMPLEX_SUPPORT="ON" \ -D DEAL_II_WITH_TRILINOS="ON" \ -D DEAL_II_WITH_PETSC="ON" \ -D DEAL_II_WITH_METIS="ON" \ diff --git a/cmake/setup_cached_variables.cmake b/cmake/setup_cached_variables.cmake index d783ef2e65..cf8179bdb0 100644 --- a/cmake/setup_cached_variables.cmake +++ b/cmake/setup_cached_variables.cmake @@ -377,12 +377,6 @@ OPTION(DEAL_II_WITH_64BIT_INDICES ) LIST(APPEND DEAL_II_FEATURES 64BIT_INDICES) -OPTION(DEAL_II_WITH_SIMPLEX_SUPPORT - "If set to ON, triangulations with triangle and tetrahedron cells are supported in addition to quadrilateral- and hexahedra-only triangulations." - OFF - ) -LIST(APPEND DEAL_II_FEATURES SIMPLEX_SUPPORT) - OPTION(DEAL_II_WITH_COMPLEX_VALUES "If set to OFF, the classes that take a number type are not explicitly instantiated for std::complex and std::complex. This effectively disables the support for computing with complex values. If PETSc is built with complex scalar type, this option must be ON." ON diff --git a/contrib/docker/Dockerfile b/contrib/docker/Dockerfile index 1a7ec1d7ab..1b8086e800 100644 --- a/contrib/docker/Dockerfile +++ b/contrib/docker/Dockerfile @@ -11,7 +11,6 @@ RUN cd /usr/src \ -DDEAL_II_COMPILE_EXAMPLES=OFF \ -DDEAL_II_COMPONENT_PYTHON_BINDINGS=ON \ -DDEAL_II_WITH_MPI=ON \ - -DDEAL_II_WITH_SIMPLEX_SUPPORT=ON \ -DCMAKE_CXX_FLAGS="-std=c++17" \ .. \ && ninja install \ diff --git a/doc/users/cmake_user.html b/doc/users/cmake_user.html index 570aead585..628a8c19e2 100644 --- a/doc/users/cmake_user.html +++ b/doc/users/cmake_user.html @@ -877,7 +877,6 @@ DEAL_II_WITH_OPENCASCADE DEAL_II_WITH_P4EST DEAL_II_WITH_PETSC DEAL_II_WITH_SCALAPACK -DEAL_II_WITH_SIMPLEX_SUPPORT DEAL_II_WITH_SLEPC DEAL_II_WITH_SUNDIALS DEAL_II_WITH_SYMENGINE diff --git a/include/deal.II/base/config.h.in b/include/deal.II/base/config.h.in index 116697c2b6..caff7ed125 100644 --- a/include/deal.II/base/config.h.in +++ b/include/deal.II/base/config.h.in @@ -56,7 +56,6 @@ #cmakedefine DEAL_II_WITH_P4EST #cmakedefine DEAL_II_WITH_PETSC #cmakedefine DEAL_II_WITH_SCALAPACK -#cmakedefine DEAL_II_WITH_SIMPLEX_SUPPORT #cmakedefine DEAL_II_WITH_SLEPC #cmakedefine DEAL_II_WITH_SUNDIALS #cmakedefine DEAL_II_WITH_SYMENGINE diff --git a/include/deal.II/base/exceptions.h b/include/deal.II/base/exceptions.h index de5d349bf5..4a5d945223 100644 --- a/include/deal.II/base/exceptions.h +++ b/include/deal.II/base/exceptions.h @@ -1110,14 +1110,6 @@ namespace StandardExceptions "You are attempting to use functionality that is only available " "if deal.II was configured to use MPI."); - /** - * This function requires simplex support. - */ - DeclExceptionMsg( - ExcNeedsSimplexSupport, - "You are attempting to use functionality that is only available " - "if deal.II was configured with DEAL_II_WITH_SIMPLEX_SUPPORT enabled."); - /** * This function requires support for the FunctionParser library. */ diff --git a/include/deal.II/matrix_free/mapping_info.templates.h b/include/deal.II/matrix_free/mapping_info.templates.h index d9d2f84522..279f8e54d8 100644 --- a/include/deal.II/matrix_free/mapping_info.templates.h +++ b/include/deal.II/matrix_free/mapping_info.templates.h @@ -388,7 +388,6 @@ namespace internal if (flag == false) { -#ifdef DEAL_II_WITH_SIMPLEX_SUPPORT cell_data[my_q].descriptor[hpq].initialize(quad[my_q][hpq], update_default); const auto quad_face = @@ -421,9 +420,6 @@ namespace internal reference_cell_types[my_q][hpq] = face_quadrature_collection.first; -#else - Assert(false, ExcNotImplemented()); -#endif } else { @@ -1742,11 +1738,7 @@ namespace internal reference_cell == dealii::ReferenceCells::get_hypercube()) == false) { -#ifdef DEAL_II_WITH_SIMPLEX_SUPPORT return index; -#else - Assert(false, ExcNotImplemented()); -#endif } if (dim == 3) @@ -1836,11 +1828,6 @@ namespace internal for (unsigned int my_q = 0; my_q < mapping_info.face_data.size(); ++my_q) { -#ifndef DEAL_II_WITH_SIMPLEX_SUPPORT - // currently only non-hp-case... - AssertDimension(mapping_in.size(), 1); -#endif - // We assume that we have the faces sorted by the active FE // indices so that the active FE index of the interior side of the // face batch is the same as the FE index of the interior side of diff --git a/include/deal.II/matrix_free/shape_info.templates.h b/include/deal.II/matrix_free/shape_info.templates.h index c489a86041..cb1fc1ec0c 100644 --- a/include/deal.II/matrix_free/shape_info.templates.h +++ b/include/deal.II/matrix_free/shape_info.templates.h @@ -203,7 +203,6 @@ namespace internal { const FE_Poly *fe_poly_ptr = dynamic_cast *>(fe_ptr); -#ifdef DEAL_II_WITH_SIMPLEX_SUPPORT // Simplices are a special case since the polynomial family is not // indicative of their support if (dynamic_cast *>(fe_poly_ptr) || @@ -211,7 +210,6 @@ namespace internal dynamic_cast *>(fe_poly_ptr) || dynamic_cast *>(fe_poly_ptr)) return true; -#endif if (dynamic_cast *>( &fe_poly_ptr->get_poly_space()) == nullptr && @@ -243,7 +241,6 @@ namespace internal const FiniteElement &fe_in, const unsigned int base_element_number) { -#ifdef DEAL_II_WITH_SIMPLEX_SUPPORT if (quad_in.is_tensor_product() == false || dynamic_cast *>( &fe_in.base_element(base_element_number)) || @@ -433,9 +430,6 @@ namespace internal return; } -#else - Assert(quad_in.is_tensor_product(), ExcNotImplemented()); -#endif const auto quad = quad_in.get_tensor_basis()[0]; diff --git a/source/grid/grid_generator.cc b/source/grid/grid_generator.cc index 1427244d7a..9a8d0d662a 100644 --- a/source/grid/grid_generator.cc +++ b/source/grid/grid_generator.cc @@ -8263,9 +8263,6 @@ namespace GridGenerator const Point & p2, const bool colorize) { -# ifndef DEAL_II_WITH_SIMPLEX_SUPPORT - Assert(false, ExcNeedsSimplexSupport()); -# endif AssertDimension(dim, spacedim); AssertThrow(colorize == false, ExcNotImplemented()); diff --git a/source/grid/tria.cc b/source/grid/tria.cc index bb1c245eb0..a5a42d27c1 100644 --- a/source/grid/tria.cc +++ b/source/grid/tria.cc @@ -10498,10 +10498,6 @@ Triangulation::reset_policy() } else { -#ifndef DEAL_II_WITH_SIMPLEX_SUPPORT - Assert(false, ExcNeedsSimplexSupport()); -#endif - this->policy = std::make_unique result( + reduction_control.last_step(), + reduction_control.last_value(), + x.linfty_norm(), + VectorTools::compute_global_error(tria, + difference, + VectorTools::NormType::L2_norm)); + + return result; }; const auto mf_algo = [&]() { diff --git a/tests/simplex/matrix_free_02.with_simplex_support=on.output b/tests/simplex/matrix_free_02.output similarity index 100% rename from tests/simplex/matrix_free_02.with_simplex_support=on.output rename to tests/simplex/matrix_free_02.output diff --git a/tests/simplex/matrix_free_03.with_simplex_support=on.output b/tests/simplex/matrix_free_03.output similarity index 100% rename from tests/simplex/matrix_free_03.with_simplex_support=on.output rename to tests/simplex/matrix_free_03.output diff --git a/tests/simplex/matrix_free_04.with_simplex_support=on.output b/tests/simplex/matrix_free_04.output similarity index 100% rename from tests/simplex/matrix_free_04.with_simplex_support=on.output rename to tests/simplex/matrix_free_04.output diff --git a/tests/simplex/matrix_free_face_integral_01.with_simplex_support=on.output b/tests/simplex/matrix_free_face_integral_01.output similarity index 100% rename from tests/simplex/matrix_free_face_integral_01.with_simplex_support=on.output rename to tests/simplex/matrix_free_face_integral_01.output diff --git a/tests/simplex/matrix_free_shape_info_01.with_simplex_support=on.output b/tests/simplex/matrix_free_shape_info_01.output similarity index 100% rename from tests/simplex/matrix_free_shape_info_01.with_simplex_support=on.output rename to tests/simplex/matrix_free_shape_info_01.output diff --git a/tests/simplex/orientation_01.with_simplex_support=on.output b/tests/simplex/orientation_01.output similarity index 100% rename from tests/simplex/orientation_01.with_simplex_support=on.output rename to tests/simplex/orientation_01.output diff --git a/tests/simplex/orientation_02.with_simplex_support=on.output b/tests/simplex/orientation_02.output similarity index 100% rename from tests/simplex/orientation_02.with_simplex_support=on.output rename to tests/simplex/orientation_02.output diff --git a/tests/simplex/poisson_01.mpirun=1.with_trilinos=false.with_simplex_support=on.output b/tests/simplex/poisson_01.mpirun=1.with_trilinos=false.output similarity index 100% rename from tests/simplex/poisson_01.mpirun=1.with_trilinos=false.with_simplex_support=on.output rename to tests/simplex/poisson_01.mpirun=1.with_trilinos=false.output diff --git a/tests/simplex/poisson_01.mpirun=1.with_trilinos=true.with_simplex_support=on.output b/tests/simplex/poisson_01.mpirun=1.with_trilinos=true.output similarity index 100% rename from tests/simplex/poisson_01.mpirun=1.with_trilinos=true.with_simplex_support=on.output rename to tests/simplex/poisson_01.mpirun=1.with_trilinos=true.output diff --git a/tests/simplex/poisson_01.mpirun=4.with_trilinos=true.with_simplex_support=on.output b/tests/simplex/poisson_01.mpirun=4.with_trilinos=true.output similarity index 100% rename from tests/simplex/poisson_01.mpirun=4.with_trilinos=true.with_simplex_support=on.output rename to tests/simplex/poisson_01.mpirun=4.with_trilinos=true.output diff --git a/tests/simplex/poisson_02.with_simplex_support=on.output b/tests/simplex/poisson_02.output similarity index 100% rename from tests/simplex/poisson_02.with_simplex_support=on.output rename to tests/simplex/poisson_02.output diff --git a/tests/simplex/q_witherden_vincent_01.with_simplex_support=on.output b/tests/simplex/q_witherden_vincent_01.output similarity index 100% rename from tests/simplex/q_witherden_vincent_01.with_simplex_support=on.output rename to tests/simplex/q_witherden_vincent_01.output diff --git a/tests/simplex/refinement_01.with_simplex_support=on.output b/tests/simplex/refinement_01.output similarity index 100% rename from tests/simplex/refinement_01.with_simplex_support=on.output rename to tests/simplex/refinement_01.output diff --git a/tests/simplex/refinement_02.with_simplex_support=on.output b/tests/simplex/refinement_02.output similarity index 100% rename from tests/simplex/refinement_02.with_simplex_support=on.output rename to tests/simplex/refinement_02.output diff --git a/tests/simplex/refinement_03.with_simplex_support=on.output b/tests/simplex/refinement_03.output similarity index 100% rename from tests/simplex/refinement_03.with_simplex_support=on.output rename to tests/simplex/refinement_03.output diff --git a/tests/simplex/step-01.with_simplex_support=on.output b/tests/simplex/step-01.output similarity index 100% rename from tests/simplex/step-01.with_simplex_support=on.output rename to tests/simplex/step-01.output diff --git a/tests/simplex/step-02.with_simplex_support=on.output b/tests/simplex/step-02.output similarity index 100% rename from tests/simplex/step-02.with_simplex_support=on.output rename to tests/simplex/step-02.output diff --git a/tests/simplex/step-03.with_simplex_support=on.output b/tests/simplex/step-03.output similarity index 100% rename from tests/simplex/step-03.with_simplex_support=on.output rename to tests/simplex/step-03.output diff --git a/tests/simplex/step-04.with_simplex_support=on.output b/tests/simplex/step-04.output similarity index 100% rename from tests/simplex/step-04.with_simplex_support=on.output rename to tests/simplex/step-04.output diff --git a/tests/simplex/step-06.with_simplex_support=on.output b/tests/simplex/step-06.output similarity index 100% rename from tests/simplex/step-06.with_simplex_support=on.output rename to tests/simplex/step-06.output diff --git a/tests/simplex/step-07.with_simplex_support=on.output b/tests/simplex/step-07.output similarity index 100% rename from tests/simplex/step-07.with_simplex_support=on.output rename to tests/simplex/step-07.output diff --git a/tests/simplex/step-08.with_simplex_support=on.output b/tests/simplex/step-08.output similarity index 100% rename from tests/simplex/step-08.with_simplex_support=on.output rename to tests/simplex/step-08.output diff --git a/tests/simplex/step-12.with_simplex_support=on.output b/tests/simplex/step-12.output similarity index 100% rename from tests/simplex/step-12.with_simplex_support=on.output rename to tests/simplex/step-12.output diff --git a/tests/simplex/step-12a.with_simplex_support=on.output b/tests/simplex/step-12a.output similarity index 100% rename from tests/simplex/step-12a.with_simplex_support=on.output rename to tests/simplex/step-12a.output diff --git a/tests/simplex/step-12b.with_simplex_support=on.output b/tests/simplex/step-12b.output similarity index 100% rename from tests/simplex/step-12b.with_simplex_support=on.output rename to tests/simplex/step-12b.output diff --git a/tests/simplex/step-12c.cc b/tests/simplex/step-12c.cc index 086c091c54..b23b04b416 100644 --- a/tests/simplex/step-12c.cc +++ b/tests/simplex/step-12c.cc @@ -694,6 +694,43 @@ public: matrix_free.initialize_dof_vector(vec); } + Tensor<1, dim, VectorizedArray> + beta(const Point> &points) const + { + Tensor<1, dim, VectorizedArray> betas; + + for (unsigned int v = 0; v < VectorizedArray::size(); ++v) + { + Point p; + Tensor<1, dim, double> beta; + + for (int d = 0; d < dim; ++d) + p[d] = points[d][v]; + + beta[0] = -p[1]; + beta[1] = +p[0]; + + if (beta.norm() > 1e-10) + beta /= beta.norm(); + + for (int d = 0; d < dim; ++d) + betas[d][v] = beta[d]; + } + + return betas; + } + + VectorizedArray + boundary_values(const Point> &points) const + { + VectorizedArray betas; + + for (unsigned int v = 0; v < VectorizedArray::size(); ++v) + betas[v] = (points[0][v] < 0.5) ? 1.0 : 0.0; + + return betas; + } + void rhs(VectorType &vec) const { @@ -726,11 +763,11 @@ public: phi.reinit(face); for (unsigned int q = 0; q < phi.n_q_points; ++q) { - const auto beta_n = - beta(phi.quadrature_point(q)) * phi.get_normal_vector(q); + const auto beta_n = this->beta(phi.quadrature_point(q)) * + phi.get_normal_vector(q); const auto beta_n_m = (-std::abs(beta_n) + beta_n) * 0.5; - phi.submit_value(-beta_n_m * - boundary_values(phi.quadrature_point(q)), + phi.submit_value(-beta_n_m * this->boundary_values( + phi.quadrature_point(q)), q); } @@ -754,7 +791,7 @@ public: phi.reinit(cell); phi.gather_evaluate(src, true, false); for (unsigned int q = 0; q < phi.n_q_points; ++q) - phi.submit_gradient(-beta(phi.quadrature_point(q)) * + phi.submit_gradient(-this->beta(phi.quadrature_point(q)) * phi.get_value(q), q); phi.integrate_scatter(false, true, dst); @@ -772,8 +809,8 @@ public: phi_p.gather_evaluate(src, true, false); for (unsigned int q = 0; q < phi_m.n_q_points; ++q) { - const auto beta_n = - beta(phi_m.quadrature_point(q)) * phi_m.get_normal_vector(q); + const auto beta_n = this->beta(phi_m.quadrature_point(q)) * + phi_m.get_normal_vector(q); const auto u_m = phi_m.get_value(q); const auto u_p = phi_p.get_value(q); @@ -797,8 +834,8 @@ public: phi.gather_evaluate(src, true, false); for (unsigned int q = 0; q < phi.n_q_points; ++q) { - const auto beta_n = - beta(phi.quadrature_point(q)) * phi.get_normal_vector(q); + const auto beta_n = this->beta(phi.quadrature_point(q)) * + phi.get_normal_vector(q); const auto beta_n_p = (std::abs(beta_n) + beta_n) * 0.5; phi.submit_value(beta_n_p * phi.get_value(q), q); } @@ -811,43 +848,6 @@ public: true); } - Tensor<1, dim, VectorizedArray> - beta(const Point> &points) const - { - Tensor<1, dim, VectorizedArray> betas; - - for (unsigned int v = 0; v < VectorizedArray::size(); ++v) - { - Point p; - Tensor<1, dim, double> beta; - - for (int d = 0; d < dim; ++d) - p[d] = points[d][v]; - - beta[0] = -p[1]; - beta[1] = +p[0]; - - if (beta.norm() > 1e-10) - beta /= beta.norm(); - - for (int d = 0; d < dim; ++d) - betas[d][v] = beta[d]; - } - - return betas; - } - - VectorizedArray - boundary_values(const Point> &points) const - { - VectorizedArray betas; - - for (unsigned int v = 0; v < VectorizedArray::size(); ++v) - betas[v] = (points[0][v] < 0.5) ? 1.0 : 0.0; - - return betas; - } - private: const MatrixFree &matrix_free; }; diff --git a/tests/simplex/step-12c.with_simplex_support=on.output b/tests/simplex/step-12c.output similarity index 100% rename from tests/simplex/step-12c.with_simplex_support=on.output rename to tests/simplex/step-12c.output diff --git a/tests/simplex/step-18.mpirun=1.with_petsc=false.with_simplex_support=on.output b/tests/simplex/step-18.mpirun=1.with_petsc=false.output similarity index 100% rename from tests/simplex/step-18.mpirun=1.with_petsc=false.with_simplex_support=on.output rename to tests/simplex/step-18.mpirun=1.with_petsc=false.output diff --git a/tests/simplex/step-18.mpirun=1.with_petsc=true.with_simplex_support=on.output b/tests/simplex/step-18.mpirun=1.with_petsc=true.output similarity index 100% rename from tests/simplex/step-18.mpirun=1.with_petsc=true.with_simplex_support=on.output rename to tests/simplex/step-18.mpirun=1.with_petsc=true.output diff --git a/tests/simplex/step-20.with_simplex_support=on.output b/tests/simplex/step-20.output similarity index 100% rename from tests/simplex/step-20.with_simplex_support=on.output rename to tests/simplex/step-20.output diff --git a/tests/simplex/step-23.with_simplex_support=on.output b/tests/simplex/step-23.output similarity index 100% rename from tests/simplex/step-23.with_simplex_support=on.output rename to tests/simplex/step-23.output diff --git a/tests/simplex/step-31.with_simplex_support=on.with_trilinos=true.output b/tests/simplex/step-31.with_trilinos=true.output similarity index 100% rename from tests/simplex/step-31.with_simplex_support=on.with_trilinos=true.output rename to tests/simplex/step-31.with_trilinos=true.output diff --git a/tests/simplex/step-38.with_simplex_support=on.output b/tests/simplex/step-38.output similarity index 100% rename from tests/simplex/step-38.with_simplex_support=on.output rename to tests/simplex/step-38.output diff --git a/tests/simplex/step-55.mpirun=2.with_petsc=true.with_simplex_support=on.output b/tests/simplex/step-55.mpirun=2.with_petsc=true.output similarity index 100% rename from tests/simplex/step-55.mpirun=2.with_petsc=true.with_simplex_support=on.output rename to tests/simplex/step-55.mpirun=2.with_petsc=true.output diff --git a/tests/simplex/step-67.mpirun=1.with_simplex_support=on.output b/tests/simplex/step-67.mpirun=1.output similarity index 100% rename from tests/simplex/step-67.mpirun=1.with_simplex_support=on.output rename to tests/simplex/step-67.mpirun=1.output diff --git a/tests/simplex/step-67.mpirun=2.with_simplex_support=on.output b/tests/simplex/step-67.mpirun=2.output similarity index 100% rename from tests/simplex/step-67.mpirun=2.with_simplex_support=on.output rename to tests/simplex/step-67.mpirun=2.output diff --git a/tests/simplex/step-68.mpirun=1.with_simplex_support=on.output b/tests/simplex/step-68.mpirun=1.output similarity index 100% rename from tests/simplex/step-68.mpirun=1.with_simplex_support=on.output rename to tests/simplex/step-68.mpirun=1.output diff --git a/tests/simplex/step-68.mpirun=4.with_simplex_support=on.output b/tests/simplex/step-68.mpirun=4.output similarity index 100% rename from tests/simplex/step-68.mpirun=4.with_simplex_support=on.output rename to tests/simplex/step-68.mpirun=4.output diff --git a/tests/simplex/step-74.with_umfpack=on.with_simplex_support=on.output b/tests/simplex/step-74.with_umfpack=on.output similarity index 100% rename from tests/simplex/step-74.with_umfpack=on.with_simplex_support=on.output rename to tests/simplex/step-74.with_umfpack=on.output diff --git a/tests/simplex/variable_face_quadratures_03.with_simplex_support=on.output b/tests/simplex/variable_face_quadratures_03.output similarity index 100% rename from tests/simplex/variable_face_quadratures_03.with_simplex_support=on.output rename to tests/simplex/variable_face_quadratures_03.output diff --git a/tests/simplex/wedge_01.with_simplex_support=on.output b/tests/simplex/wedge_01.output similarity index 100% rename from tests/simplex/wedge_01.with_simplex_support=on.output rename to tests/simplex/wedge_01.output diff --git a/tests/simplex/write_mesh_per_processor_as_vtu_01.mpirun=3.with_simplex_support=on.output b/tests/simplex/write_mesh_per_processor_as_vtu_01.mpirun=3.output similarity index 100% rename from tests/simplex/write_mesh_per_processor_as_vtu_01.mpirun=3.with_simplex_support=on.output rename to tests/simplex/write_mesh_per_processor_as_vtu_01.mpirun=3.output