]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Fix conformity of Simplex::FE_P and Simplex::FE_WedgeP 11345/head
authorPeter Munch <peterrmuench@gmail.com>
Wed, 9 Dec 2020 09:07:58 +0000 (10:07 +0100)
committerPeter Munch <peterrmuench@gmail.com>
Wed, 9 Dec 2020 09:07:58 +0000 (10:07 +0100)
include/deal.II/simplex/fe_lib.h
source/simplex/fe_lib.cc

index e7c45a8ed97a858a3ac128d307114f509ea93706..82be34ad4f6246f9cf4a20888c2c76e4e6f1bb0a 100644 (file)
@@ -40,8 +40,9 @@ namespace Simplex
     /**
      * Constructor.
      */
-    FE_Poly(const unsigned int               degree,
-            const std::vector<unsigned int> &dpo_vector);
+    FE_Poly(const unsigned int                                degree,
+            const std::vector<unsigned int> &                 dpo_vector,
+            const typename FiniteElementData<dim>::Conformity conformity);
 
   private:
     /**
index abd6e5904290d3147afa265f8ec017deb70211e4..82130045e332ddfbc111afba3375d55cb7b9bddc 100644 (file)
@@ -120,8 +120,10 @@ namespace Simplex
 
 
   template <int dim, int spacedim>
-  FE_Poly<dim, spacedim>::FE_Poly(const unsigned int               degree,
-                                  const std::vector<unsigned int> &dpo_vector)
+  FE_Poly<dim, spacedim>::FE_Poly(
+    const unsigned int                                degree,
+    const std::vector<unsigned int> &                 dpo_vector,
+    const typename FiniteElementData<dim>::Conformity conformity)
     : dealii::FE_Poly<dim, spacedim>(
         Simplex::ScalarPolynomial<dim>(degree),
         FiniteElementData<dim>(dpo_vector,
@@ -129,7 +131,7 @@ namespace Simplex
                                           ReferenceCell::Type::Tet,
                                1,
                                degree,
-                               FiniteElementData<dim>::L2),
+                               conformity),
         std::vector<bool>(FiniteElementData<dim>(dpo_vector,
                                                  dim == 2 ?
                                                    ReferenceCell::Type::Tri :
@@ -252,7 +254,9 @@ namespace Simplex
 
   template <int dim, int spacedim>
   FE_P<dim, spacedim>::FE_P(const unsigned int degree)
-    : FE_Poly<dim, spacedim>(degree, get_dpo_vector_fe_p(dim, degree))
+    : FE_Poly<dim, spacedim>(degree,
+                             get_dpo_vector_fe_p(dim, degree),
+                             FiniteElementData<dim>::H1)
   {}
 
 
@@ -338,7 +342,9 @@ namespace Simplex
 
   template <int dim, int spacedim>
   FE_DGP<dim, spacedim>::FE_DGP(const unsigned int degree)
-    : FE_Poly<dim, spacedim>(degree, get_dpo_vector_fe_dgp(dim, degree))
+    : FE_Poly<dim, spacedim>(degree,
+                             get_dpo_vector_fe_dgp(dim, degree),
+                             FiniteElementData<dim>::L2)
   {}
 
 
@@ -414,7 +420,7 @@ namespace Simplex
                                ReferenceCell::Type::Wedge,
                                1,
                                degree,
-                               FiniteElementData<dim>::L2),
+                               FiniteElementData<dim>::H1),
         std::vector<bool>(FiniteElementData<dim>(get_dpo_vector_fe_wedge(
                                                    degree),
                                                  ReferenceCell::Type::Wedge,

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.