From: Daniel Arndt Date: Tue, 11 Jul 2017 21:37:37 +0000 (+0200) Subject: Remove implementations for FE_FaceP and update documentation X-Git-Tag: v9.0.0-rc1~716^2~1^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2e754f54f92277bbc9ccf60050c633fcfc6dc9e2;p=dealii.git Remove implementations for FE_FaceP and update documentation --- diff --git a/doc/news/changes/minor/20170711Simfeld-DanielArndt b/doc/news/changes/minor/20170711Simfeld-DanielArndt new file mode 100644 index 0000000000..50600642c3 --- /dev/null +++ b/doc/news/changes/minor/20170711Simfeld-DanielArndt @@ -0,0 +1,5 @@ +New: Adding the functions FE_FaceQ::hp_vertex_dof_identities(), +FE_FaceQ::hp_line_dof_identities() and FE_FaceQ::hp_quad_dof_identities() +allows FE_FaceQ to be used in combination with a hp::DoFHandler. +
+(Simfeld, Daniel Arndt, 2017/07/11) diff --git a/include/deal.II/fe/fe_face.h b/include/deal.II/fe/fe_face.h index 4c1d42bc87..0f436a7ff7 100644 --- a/include/deal.II/fe/fe_face.h +++ b/include/deal.II/fe/fe_face.h @@ -122,8 +122,7 @@ public: * the vertex dofs of the present element, whereas the second is the * corresponding index of the other finite element. * - * This being a discontinuous element, the set of such constraints is of - * course empty. + * The set of such constraints is non-empty only for dim==1. */ virtual std::vector > @@ -133,8 +132,7 @@ public: * Same as hp_vertex_dof_indices(), except that the function treats degrees * of freedom on lines. * - * This being a discontinuous element, the set of such constraints is of - * course empty. + * The set of such constraints is non-empty only for dim==2. */ virtual std::vector > @@ -144,8 +142,7 @@ public: * Same as hp_vertex_dof_indices(), except that the function treats degrees * of freedom on quads. * - * This being a discontinuous element, the set of such constraints is of - * course empty. + * The set of such constraints is non-empty only for dim==3. */ virtual std::vector > @@ -276,8 +273,7 @@ public: * the vertex dofs of the present element, whereas the second is the * corresponding index of the other finite element. * - * This being a discontinuous element, the set of such constraints is of - * course empty. + * The set of such constraints is non-empty only for dim==1. */ virtual std::vector > @@ -287,8 +283,7 @@ public: * Same as hp_vertex_dof_indices(), except that the function treats degrees * of freedom on lines. * - * This being a discontinuous element, the set of such constraints is of - * course empty. + * The set of such constraints is non-empty only for dim==2. */ virtual std::vector > @@ -298,8 +293,7 @@ public: * Same as hp_vertex_dof_indices(), except that the function treats degrees * of freedom on quads. * - * This being a discontinuous element, the set of such constraints is of - * course empty. + * The set of such constraints is non-empty only for dim==3. */ virtual std::vector > @@ -501,50 +495,6 @@ public: */ virtual bool hp_constraints_are_implemented () const; - /** - * If, on a vertex, several finite elements are active, the hp code first - * assigns the degrees of freedom of each of these FEs different global - * indices. It then calls this function to find out which of them should get - * identical values, and consequently can receive the same global DoF index. - * This function therefore returns a list of identities between DoFs of the - * present finite element object with the DoFs of @p fe_other, which is a - * reference to a finite element object representing one of the other finite - * elements active on this particular vertex. The function computes which of - * the degrees of freedom of the two finite element objects are equivalent, - * both numbered between zero and the corresponding value of dofs_per_vertex - * of the two finite elements. The first index of each pair denotes one of - * the vertex dofs of the present element, whereas the second is the - * corresponding index of the other finite element. - * - * This being a discontinuous element, the set of such constraints is of - * course empty. - */ - virtual - std::vector > - hp_vertex_dof_identities (const FiniteElement &fe_other) const; - - /** - * Same as hp_vertex_dof_indices(), except that the function treats degrees - * of freedom on lines. - * - * This being a discontinuous element, the set of such constraints is of - * course empty. - */ - virtual - std::vector > - hp_line_dof_identities (const FiniteElement &fe_other) const; - - /** - * Same as hp_vertex_dof_indices(), except that the function treats degrees - * of freedom on quads. - * - * This being a discontinuous element, the set of such constraints is of - * course empty. - */ - virtual - std::vector > - hp_quad_dof_identities (const FiniteElement &fe_other) const; - /** * Return whether this element dominates the one given as argument when they * meet at a common face, whether it is the other way around, whether diff --git a/source/fe/fe_face.cc b/source/fe/fe_face.cc index ed73ac5a99..6106fe3826 100644 --- a/source/fe/fe_face.cc +++ b/source/fe/fe_face.cc @@ -767,7 +767,6 @@ FE_FaceP::get_dpo_vector (const unsigned int deg) - template bool FE_FaceP::hp_constraints_are_implemented () const @@ -777,51 +776,6 @@ FE_FaceP::hp_constraints_are_implemented () const -template -std::vector > -FE_FaceP:: -hp_vertex_dof_identities (const FiniteElement &/*fe_other*/) const -{ - // this element is discontinuous, so by definition there can - // be no identities between its dofs and those of any neighbor - // (of whichever type the neighbor may be -- after all, we have - // no face dofs on this side to begin with) - return - std::vector > (); -} - - - -template -std::vector > -FE_FaceP:: -hp_line_dof_identities (const FiniteElement &/*fe_other*/) const -{ - // this element is discontinuous, so by definition there can - // be no identities between its dofs and those of any neighbor - // (of whichever type the neighbor may be -- after all, we have - // no face dofs on this side to begin with) - return - std::vector > (); -} - - - -template -std::vector > -FE_FaceP:: -hp_quad_dof_identities (const FiniteElement &/*fe_other*/) const -{ - // this element is discontinuous, so by definition there can - // be no identities between its dofs and those of any neighbor - // (of whichever type the neighbor may be -- after all, we have - // no face dofs on this side to begin with) - return - std::vector > (); -} - - - template FiniteElementDomination::Domination FE_FaceP::