MultiMeshFunctionSpace.h

Note

The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.

class MultiMeshFunctionSpace

Parent class(es)

This class represents a function space on a multimesh. It may may be created from a set of standard function spaces by repeatedly calling add(), followed by a call to build(). Note that a multimesh function space is not useful and its data structures are empty until build() has been called.

MultiMeshFunctionSpace(std::shared_ptr<const MultiMesh> multimesh)

Create multimesh function space on multimesh (shared pointer version)

std::size_t dim() const

Return dimension of the multimesh function space

Returns
std::size_t
The dimension of the multimesh function space.
std::shared_ptr<const MultiMesh> multimesh() const

Return multimesh

Returns
MultiMesh
The multimesh.
std::shared_ptr<const MultiMeshDofMap> dofmap() const

Return multimesh dofmap

Returns
MultiMeshDofMap
The dofmap.
std::size_t num_parts() const

Return the number of function spaces (parts) of the multimesh function space

Returns
std::size_t
The number of function spaces (parts) of the multimesh function space.
std::shared_ptr<const FunctionSpace> part(std::size_t i) const

Return function space (part) number i

Arguments
i (std::size_t)
The part number
Returns
FunctionSpace
Function space (part) number i
std::shared_ptr<const FunctionSpace> view(std::size_t i) const

Return view of multimesh function space for part number i. This function differs from the part() function in that it does not return the original function space for a part, but rather a view of the common multimesh function space (dofs global to the collection of parts).

Arguments
i (std::size_t)
The part number
Returns
FunctionSpace
Function space (part) number i
void add(std::shared_ptr<const FunctionSpace> function_space)

Add function space

Arguments
function_space (FunctionSpace)
The function space.
void build()

Build multimesh function space

void build(const std::vector<dolfin::la_index> &offsets)

Build multimesh function space. This function uses offsets computed from the full function spaces on each part.