From: Wolfgang Bangerth Date: Tue, 23 Aug 2022 18:29:38 +0000 (-0600) Subject: Clarify comments about get_generalized_support_points(). X-Git-Tag: v9.5.0-rc1~1015^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6fb545e486d199217de3e9bbbbe58d8922917cdf;p=dealii.git Clarify comments about get_generalized_support_points(). --- diff --git a/include/deal.II/fe/fe.h b/include/deal.II/fe/fe.h index 9ceacd17ad..ad60ab4507 100644 --- a/include/deal.II/fe/fe.h +++ b/include/deal.II/fe/fe.h @@ -2100,7 +2100,22 @@ public: * @note The vector returned by this function is always a minimal set of * *unique* support points. This is in contrast to the behavior of * get_unit_support_points() that returns a repeated list of unit support - * points for an FESystem of numerous (Lagrangian) base elements. + * points for an FESystem of numerous (Lagrangian) base elements. As a + * consequence, it is possible to have fewer generalized support points + * than degrees of freedom in the element. An example is the + * element `FESystem(FE_Q(1), 2)`, which has two + * copies of the $Q_1$ element. In 2d, each copy has 4 degrees of + * freedom, and each copy has its support points in the + * four vertices of the cell. While the get_support_points() + * function would return a vector of size 8 in which each of the + * vertices is listed twice, this function strips + * out the duplicates and returns a vector of length 4 in which each + * vertex is listed only once. This is possible because the purpose of this + * function is to return a list of points so that it is possible to + * interpolate an arbitrary function onto the finite element + * space, and this is possible by knowing the two components of the + * function in question at the four vertices of the cell -- it is not + * necessary to ask for this information twice at each vertex. * * See the * @ref GlossGeneralizedSupport "glossary entry on generalized support points"