On Tue, 20 Nov 2018, Michael Povolotskyi wrote:
> Dear Libmesh developers, > I see from the examples that the surface element is constructed as follows: > > // Declare a special finite element object for > // boundary integration. > std:: unique_ptr<FEBase> fe_face (FEBase::build(dim, fe_type)); > > Question: why the dimension is equal to the dimension of the mesh instead of > dim - 1, as you use in the quadrature rule? It's still a dim-dimensional element, even if you do some initialization for a dim-1-dimensional side. Consider the HERMITE case. With p=3 on an edge, HERMITE gives you 4 DoFs: u and du/dx on each of left/right nodes. But with p=3 on a quad, HERMITE gives you 16 DoFs, and *8* of those are on any given edge: the above four, plus du/dy and d^2u/dy^2 on left/right nodes. If you were integrating fluxes across the edge, say, then you'd need all 8 of those DoFs to get the right result. --- Roy _______________________________________________ Libmesh-users mailing list Libmesh-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-users