FunctionAssigner

class dolfin.cpp.function.FunctionAssigner(*args)

Bases: object

This class facilitate assignments between Function and sub Functions. It builds and caches maps between compatible dofs. These maps are used in the assignment methods which perform the actual assignment. Optionally can a MeshFunction be passed together with a label, facilitating FunctionAssignment over sub domains.

Create a FunctionAssigner between several functions (assigning) and one mixed function (receiving). The number of sub functions in the assigning mixed function must sum up to the number of receiving functions. The sub spaces of the receiving mixed space must be of the same type ans size as the assigning spaces. Arguments receiving_space (std::shared_ptr<FunctionSpace >) The receiving function space assigning_spaces (std::vector<std::shared_ptr<FunctionSpace > >) The assigning function spaces

Parameters:
  • const FunctionSpace > receiving_space (std::shared_ptr<) –
  • std::shared_ptr< const FunctionSpace >> assigning_spaces (std::vector<) –
assign()

Assign several functions to sub functions of a mixed receiving function Arguments receiving_func (std::shared_ptr<Function >) The receiving mixed function assigning_funcs (std::vector<std::shared_ptr<Function > >) The assigning functions

Parameters:
  • Function > receiving_func (std::shared_ptr<) –
  • std::shared_ptr< const Function >> assigning_funcs (std::vector<) –
Return type:

void

num_assigning_functions()

Return the number of assigning functions.

Return type:std::size_t
num_receiving_functions()

Return the number of receiving functions.

Return type:std::size_t
thisown

The membership flag