MultiMeshFunction.h

Note

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

class MultiMeshFunction

Parent class(es)

This class represents a function on a cut and composite finite element function space (MultiMesh) defined on one or more possibly intersecting meshes.

MultiMeshFunction()

Constructor

explicit MultiMeshFunction(std::shared_ptr<const MultiMeshFunctionSpace> V)

Create MultiMesh function on given MultiMesh function space

Arguments
V (MultiMeshFunctionSpace)
The MultiMesh function space.
MultiMeshFunction(std::shared_ptr<const MultiMeshFunctionSpace> V, std::shared_ptr<GenericVector> x)

Create MultiMesh function on given MultiMesh function space with a given vector (shared data)

Warning: This constructor is intended for internal library use only

Arguments
V (MultiMeshFunctionSpace)
The multimesh function space.
x (GenericVector)
The vector.
void assign_part(std::size_t a, const Function &v)

Assign Function to part of a mesh

Arguments
a (int)
Part mesh assigned to
V (Function)
The vector
std::shared_ptr<const Function> part(std::size_t i) const

Return function (part) number i

Returns
Function
Function (part) number i
std::shared_ptr<const Function> part(std::size_t i, bool deepcopy) const

Return a (deepcopy) function (part) number i

Returns
Function
Function (part) number i bool deepcopy flag
std::shared_ptr<GenericVector> vector()

Return vector of expansion coefficients (non-const version)

Returns
GenericVector
The vector of expansion coefficients.
std::shared_ptr<const GenericVector> vector() const

Return vector of expansion coefficients (const version)

Returns
GenericVector
The vector of expansion coefficients (const).
std::shared_ptr<const MultiMeshFunctionSpace> function_space() const

Return shared pointer to multi mesh function space

Returns
MultiMeshFunctionSpace
Return the shared pointer.
void restrict(double *w, const FiniteElement &element, std::size_t part, const Cell &dolfin_cell, const double *coordinate_dofs, const ufc::cell &ufc_cell) const

Restrict function to local cell in given part (compute expansion coefficients w)

Arguments
w (list of doubles)
Expansion coefficients.
element (FiniteElement)
The element.
part (std::size_t)
The mesh part
dolfin_cell (Cell)
The cell.
ufc_cell (ufc::cell).
The ufc::cell.
void eval(Array<double> &values, const Array<double> &x, std::size_t part, const ufc::cell &cell) const

Evaluate at given point in given cell in given part

Arguments
values (Array <double>)
The values at the point.
x (Array <double>)
The coordinates of the point.
cell (ufc::cell)
The cell which contains the given point.
void eval(Array<double> &values, const Array<double> &x) const

Evaluate at a given point

void restrict_as_ufc_function(double *w, const FiniteElement &element, std::size_t part, const Cell &dolfin_cell, const double *coordinate_dofs, const ufc::cell &ufc_cell) const

Restrict as UFC function (by calling eval)