fem_utils.h¶
Note
The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.
-
std::vector<std::size_t>
dof_to_vertex_map
(const FunctionSpace &space)¶ Return a map between dof indices and vertex indices
Only works for FunctionSpace with dofs exclusively on vertices. For mixed FunctionSpaces vertex index is offset with the number of dofs per vertex.
In parallel the returned map maps both owned and unowned dofs (using local indices) thus covering all the vertices. Hence the returned map is an inversion of _vertex_to_dof_map_.
- @param space (
FunctionSpace
) - The FunctionSpace for what the dof to vertex map should be computed for
- @return std::vector<std::size_t>
- The dof to vertex map
- @param space (
-
std::vector<dolfin::la_index>
vertex_to_dof_map
(const FunctionSpace &space)¶ Return a map between vertex indices and dof indices
Only works for FunctionSpace with dofs exclusively on vertices. For mixed FunctionSpaces dof index is offset with the number of dofs per vertex.
- @param space (
FunctionSpace
) - The FunctionSpace for what the vertex to dof map should be computed for
- @return std::vector<dolfin::la_index>
- The vertex to dof map
- @param space (
-
void
set_coordinates
(MeshGeometry &geometry, const Function &position)¶ Sets mesh coordinates from function
Mesh connectivities d-0, d-1, …, d-r are built on function mesh (where d is topological dimension of the mesh and r is maximal dimension of entity associated with any coordinate node). Consider clearing unneeded connectivities when finished.
- @param geometry (
MeshGeometry
) - Mesh geometry to be set
- @param position (
Function
) - Vectorial Lagrange function with matching degree and mesh
- @param geometry (
-
void
get_coordinates
(Function &position, const MeshGeometry &geometry)¶ Stores mesh coordinates into function
Mesh connectivities d-0, d-1, …, d-r are built on function mesh (where d is topological dimension of the mesh and r is maximal dimension of entity associated with any coordinate node). Consider clearing unneeded connectivities when finished.
- @param position (
Function
) - Vectorial Lagrange function with matching degree and mesh
- @param geometry (
MeshGeometry
) - Mesh geometry to be stored
- @param position (
-
Mesh
create_mesh
(Function &coordinates)¶ Creates mesh from coordinate function
Topology is given by underlying mesh of the function space and geometry is given by function values. Hence resulting mesh geometry has a degree of the function space degree. Geometry of function mesh is ignored.
Mesh connectivities d-0, d-1, …, d-r are built on function mesh (where d is topological dimension of the mesh and r is maximal dimension of entity associated with any coordinate node). Consider clearing unneeded connectivities when finished.
@param coordinates (
Function
)Vector Lagrange function of any degree- @return Mesh
- The mesh