From 3d1db6ceb4e4fd2d12ff7273d17d2ea202fccf37 Mon Sep 17 00:00:00 2001 From: Peter Munch Date: Wed, 9 Dec 2020 10:07:58 +0100 Subject: [PATCH] Fix conformity of Simplex::FE_P and Simplex::FE_WedgeP --- include/deal.II/simplex/fe_lib.h | 5 +++-- source/simplex/fe_lib.cc | 18 ++++++++++++------ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/include/deal.II/simplex/fe_lib.h b/include/deal.II/simplex/fe_lib.h index e7c45a8ed9..82be34ad4f 100644 --- a/include/deal.II/simplex/fe_lib.h +++ b/include/deal.II/simplex/fe_lib.h @@ -40,8 +40,9 @@ namespace Simplex /** * Constructor. */ - FE_Poly(const unsigned int degree, - const std::vector &dpo_vector); + FE_Poly(const unsigned int degree, + const std::vector & dpo_vector, + const typename FiniteElementData::Conformity conformity); private: /** diff --git a/source/simplex/fe_lib.cc b/source/simplex/fe_lib.cc index abd6e59042..82130045e3 100644 --- a/source/simplex/fe_lib.cc +++ b/source/simplex/fe_lib.cc @@ -120,8 +120,10 @@ namespace Simplex template - FE_Poly::FE_Poly(const unsigned int degree, - const std::vector &dpo_vector) + FE_Poly::FE_Poly( + const unsigned int degree, + const std::vector & dpo_vector, + const typename FiniteElementData::Conformity conformity) : dealii::FE_Poly( Simplex::ScalarPolynomial(degree), FiniteElementData(dpo_vector, @@ -129,7 +131,7 @@ namespace Simplex ReferenceCell::Type::Tet, 1, degree, - FiniteElementData::L2), + conformity), std::vector(FiniteElementData(dpo_vector, dim == 2 ? ReferenceCell::Type::Tri : @@ -252,7 +254,9 @@ namespace Simplex template FE_P::FE_P(const unsigned int degree) - : FE_Poly(degree, get_dpo_vector_fe_p(dim, degree)) + : FE_Poly(degree, + get_dpo_vector_fe_p(dim, degree), + FiniteElementData::H1) {} @@ -338,7 +342,9 @@ namespace Simplex template FE_DGP::FE_DGP(const unsigned int degree) - : FE_Poly(degree, get_dpo_vector_fe_dgp(dim, degree)) + : FE_Poly(degree, + get_dpo_vector_fe_dgp(dim, degree), + FiniteElementData::L2) {} @@ -414,7 +420,7 @@ namespace Simplex ReferenceCell::Type::Wedge, 1, degree, - FiniteElementData::L2), + FiniteElementData::H1), std::vector(FiniteElementData(get_dpo_vector_fe_wedge( degree), ReferenceCell::Type::Wedge, -- 2.39.5