#include <ElementDofLayout.h>
|
| | ElementDofLayout (int block_size, const std::vector< std::vector< std::vector< int > > > &entity_dofs, const std::vector< std::vector< std::vector< int > > > &entity_closure_dofs, const std::vector< int > &parent_map, const std::vector< ElementDofLayout > &sub_layouts) |
|
ElementDofLayout | copy () const |
| | Copy the DOF layout, discarding any parent information.
|
|
| ElementDofLayout (const ElementDofLayout &dofmap)=default |
| | Copy constructor.
|
|
| ElementDofLayout (ElementDofLayout &&dofmap)=default |
| | Move constructor.
|
|
| ~ElementDofLayout ()=default |
| | Destructor.
|
|
ElementDofLayout & | operator= (const ElementDofLayout &dofmap)=default |
| | Copy assignment.
|
|
ElementDofLayout & | operator= (ElementDofLayout &&dofmap)=default |
| | Move assignment.
|
| bool | operator== (const ElementDofLayout &layout) const |
| int | num_dofs () const |
| const std::vector< int > & | entity_dofs (int dim, int entity_index) const |
| const std::vector< int > & | entity_closure_dofs (int dim, int entity_index) const |
|
const std::vector< std::vector< std::vector< int > > > & | entity_dofs_all () const |
| | Direct access to all entity dofs (dof = _entity_dofs[dim][entity][i]).
|
| const std::vector< std::vector< std::vector< int > > > & | entity_closure_dofs_all () const |
|
int | num_sub_dofmaps () const |
| | Get number of sub-dofmaps.
|
|
const ElementDofLayout & | sub_layout (std::span< const int > component) const |
| | Get sub-dofmap given by list of components, one for each level.
|
| std::vector< int > | sub_view (std::span< const int > component) const |
|
int | block_size () const |
| | Block size.
|
| bool | is_view () const |
The class represents the degree-of-freedom (dofs) for an element. Dofs are associated with a mesh entity. This class also handles sub-space dofs, which are views into the parent dofs.
◆ ElementDofLayout()
| ElementDofLayout |
( |
int | block_size, |
|
|
const std::vector< std::vector< std::vector< int > > > & | entity_dofs, |
|
|
const std::vector< std::vector< std::vector< int > > > & | entity_closure_dofs, |
|
|
const std::vector< int > & | parent_map, |
|
|
const std::vector< ElementDofLayout > & | sub_layouts ) |
Constructor
- Parameters
-
| [in] | block_size | The number of dofs co-located at each point. |
| [in] | entity_dofs | The dofs on each entity, in the format: entity_dofs[entity_dim][entity_number] = [dof0, dof1, ...] |
| [in] | entity_closure_dofs | The dofs on the closure of each entity, in the format: entity_closure_dofs[entity_dim][entity_number] = [dof0, dof1, ...] |
| [in] | parent_map | TODO |
| [in] | sub_layouts | (std::vector<ElementDofLayout>)TODO |
◆ entity_closure_dofs()
| const std::vector< int > & entity_closure_dofs |
( |
int | dim, |
|
|
int | entity_index ) const |
Local-local closure dofs on entity of cell
- Parameters
-
| [in] | dim | The entity dimension |
| [in] | entity_index | The local entity index on the cell |
- Returns
- Cell-local degree-of-freedom indices
◆ entity_closure_dofs_all()
| const std::vector< std::vector< std::vector< int > > > & entity_closure_dofs_all |
( |
| ) |
const |
Direct access to all entity closure dofs (dof = _entity_dofs[dim][entity][i])
◆ entity_dofs()
| const std::vector< int > & entity_dofs |
( |
int | dim, |
|
|
int | entity_index ) const |
Local-local mapping of dofs on entity of cell
- Parameters
-
| [in] | dim | The entity dimension |
| [in] | entity_index | The local entity index on the cell |
- Returns
- Cell-local degree-of-freedom indices
◆ is_view()
True iff dof map is a view into another map
- Returns
- bool True if the dof map is a sub-dof map (a view into another map).
◆ num_dofs()
Return the dimension of the local finite element function space on a cell (number of dofs on element)
- Returns
- Dimension of the local finite element function space.
◆ operator==()
Equality operator
- Returns
- Returns true if the layout data is the same. Sub- and parent dofmap data is not compared.
- Note
- The block sizes of the layouts are not compared
◆ sub_view()
| std::vector< int > sub_view |
( |
std::span< const int > | component | ) |
const |
Get view for a sub-layout, defined by the component list (as for sub_layour()), into this dofmap. I.e., the dofs in this dofmap that are the sub-dofs.
The documentation for this class was generated from the following files:
- /__w/dolfinx/dolfinx/cpp/dolfinx/fem/ElementDofLayout.h
- /__w/dolfinx/dolfinx/cpp/dolfinx/fem/ElementDofLayout.cpp