16 #ifndef __H2D_SPACE_H1_H
17 #define __H2D_SPACE_H1_H
19 #include "../shapeset/shapeset_h1_all.h"
34 template<
typename Scalar>
35 class HERMES_API H1Space :
public Space < Scalar >
39 H1Space(MeshSharedPtr mesh, EssentialBCs<Scalar>* boundary_conditions,
int p_init = 1,
40 Shapeset* shapeset =
nullptr);
42 H1Space(MeshSharedPtr mesh,
int p_init = 1,
43 Shapeset* shapeset =
nullptr);
47 virtual void set_shapeset(Shapeset* shapeset,
bool clone =
false);
49 virtual Scalar* get_bc_projection(SurfPos* surf_pos,
int order, EssentialBoundaryCondition<Scalar> *bc);
52 virtual void copy(SpaceSharedPtr<Scalar> space, MeshSharedPtr new_mesh);
56 virtual SpaceType
get_type()
const {
return HERMES_H1_SPACE; }
59 void init(
Shapeset* shapeset,
int p_init,
bool assign_dofs_init =
true);
61 virtual void assign_vertex_dofs();
62 virtual void assign_edge_dofs();
63 virtual void assign_bubble_dofs();
76 virtual void update_constraints();
Stores one element of a mesh.
Stores one node of a mesh.
Should be exactly the same as is the count of enum ShapesetType.
virtual SpaceType get_type() const
Internal. Return type of this space. See enum SpaceType.