This class represents a finite element function space defined by a mesh, a finite element, and a local-to-global map of the degrees of freedom (dofmap).
More...
|
| FunctionSpace (std::shared_ptr< const mesh::Mesh > mesh, std::shared_ptr< const fem::FiniteElement > element, std::shared_ptr< const fem::DofMap > dofmap) |
| Create function space for given mesh, element and dofmap. More...
|
|
| FunctionSpace (const FunctionSpace &V)=delete |
|
| FunctionSpace (FunctionSpace &&V)=default |
| Move constructor.
|
|
virtual | ~FunctionSpace ()=default |
| Destructor.
|
|
FunctionSpace & | operator= (const FunctionSpace &V)=delete |
|
FunctionSpace & | operator= (FunctionSpace &&V)=default |
| Move assignment operator.
|
|
bool | operator== (const FunctionSpace &V) const |
| Equality operator. More...
|
|
bool | operator!= (const FunctionSpace &V) const |
| Inequality operator. More...
|
|
std::int64_t | dim () const |
| Return global dimension of the function space. More...
|
|
void | interpolate (Eigen::Ref< Eigen::Array< PetscScalar, Eigen::Dynamic, 1 >> coefficients, const Function &v) const |
| Interpolate a finite element Function into this function space, filling the array of expansion coefficients associated with this function space. More...
|
|
void | interpolate (Eigen::Ref< Eigen::Array< PetscScalar, Eigen::Dynamic, 1 >> coefficients, const std::function< Eigen::Array< PetscScalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >(const Eigen::Ref< const Eigen::Array< double, 3, Eigen::Dynamic, Eigen::RowMajor >> &)> &f) const |
| Interpolate an expression into this function space, filling the array of expansion coefficients associated with this function space.
|
|
void | interpolate_c (Eigen::Ref< Eigen::Array< PetscScalar, Eigen::Dynamic, 1 >> coefficients, const interpolation_function &f) const |
| Interpolate an expression into this function space, filling the array of expansion coefficients associated with this function space. More...
|
|
std::shared_ptr< FunctionSpace > | sub (const std::vector< int > &component) const |
| Extract subspace for component. More...
|
|
bool | contains (const FunctionSpace &V) const |
| Check whether V is subspace of this, or this itself. More...
|
|
std::pair< std::shared_ptr< FunctionSpace >, std::vector< std::int32_t > > | collapse () const |
| Collapse a subspace and return a new function space and a map from new to old dofs. More...
|
|
bool | has_element (const fem::FiniteElement &element) const |
| Check if function space has given element. More...
|
|
std::vector< int > | component () const |
| Get the component with respect to the root superspace. More...
|
|
Eigen::Array< double, Eigen::Dynamic, 3, Eigen::RowMajor > | tabulate_dof_coordinates () const |
| Tabulate the physical coordinates of all dofs on this process. More...
|
|
void | set_x (Eigen::Ref< Eigen::Array< PetscScalar, Eigen::Dynamic, 1 >> x, PetscScalar value, int component) const |
| Set dof entries in vector to value*x[i], where [x][i] is the coordinate of the dof spatial coordinate. Parallel layout of vector must be consistent with dof map range This function is typically used to construct the null space of a matrix operator, e.g. rigid body rotations. More...
|
|
std::size_t | id () const |
| Unique identifier.
|
|
std::shared_ptr< const mesh::Mesh > | mesh () const |
| The mesh.
|
|
std::shared_ptr< const fem::FiniteElement > | element () const |
| The finite element.
|
|
std::shared_ptr< const fem::DofMap > | dofmap () const |
| The dofmap.
|
|
This class represents a finite element function space defined by a mesh, a finite element, and a local-to-global map of the degrees of freedom (dofmap).