This class represents a function \( u_h \) in a finite element function space \( V_h \), given by.
More...
|
| Function (std::shared_ptr< const FunctionSpace< U > > V) |
| Create function on given function space.
|
|
| Function (std::shared_ptr< const FunctionSpace< U > > V, std::shared_ptr< la::Vector< T > > x) |
| Create function on given function space with a given vector.
|
|
| Function (const Function &v)=delete |
|
| Function (Function &&v)=default |
| Move constructor.
|
|
| ~Function ()=default |
| Destructor.
|
|
Function & | operator= (Function &&v)=default |
| Move assignment.
|
|
Function & | operator= (const Function &v)=delete |
|
Function | sub (int i) const |
| Extract sub-function (a view into the Function).
|
|
Function | collapse () const |
| Collapse a subfunction (view into a Function) to a stand-alone Function.
|
|
std::shared_ptr< const FunctionSpace< U > > | function_space () const |
| Access the function space.
|
|
std::shared_ptr< const la::Vector< T > > | x () const |
| Underlying vector.
|
|
std::shared_ptr< la::Vector< T > > | x () |
| Underlying vector.
|
|
void | interpolate (const Function< T, U > &v, std::span< const std::int32_t > cells, const std::tuple< std::vector< std::int32_t >, std::vector< std::int32_t >, std::vector< U >, std::vector< std::int32_t > > &nmm_interpolation_data={}) |
| Interpolate a provided Function.
|
|
void | interpolate (const Function< T, U > &v, const std::tuple< std::vector< std::int32_t >, std::vector< std::int32_t >, std::vector< U >, std::vector< std::int32_t > > &nmm_interpolation_data={}) |
| Interpolate a provided Function.
|
|
void | interpolate (const std::function< std::pair< std::vector< T >, std::vector< std::size_t > >(MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const U, MDSPAN_IMPL_STANDARD_NAMESPACE::extents< std::size_t, 3, MDSPAN_IMPL_STANDARD_NAMESPACE::dynamic_extent > >)> &f, std::span< const std::int32_t > cells) |
| Interpolate an expression function on a list of cells.
|
|
void | interpolate (const std::function< std::pair< std::vector< T >, std::vector< std::size_t > >(MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const U, MDSPAN_IMPL_STANDARD_NAMESPACE::extents< std::size_t, 3, MDSPAN_IMPL_STANDARD_NAMESPACE::dynamic_extent > >)> &f) |
| Interpolate an expression function on the whole domain.
|
|
void | interpolate (const Expression< T, U > &e, std::span< const std::int32_t > cells) |
| Interpolate an Expression (based on UFL)
|
|
void | interpolate (const Expression< T, U > &e) |
| Interpolate an Expression (based on UFL) on all cells.
|
|
void | eval (std::span< const U > x, std::array< std::size_t, 2 > xshape, std::span< const std::int32_t > cells, std::span< T > u, std::array< std::size_t, 2 > ushape) const |
| Evaluate the Function at points.
|
|
template<
dolfinx::scalar T, std::floating_point U = dolfinx::scalar_value_type_t<T>>
class dolfinx::fem::Function< T, U >
This class represents a function \( u_h \) in a finite element function space \( V_h \), given by.
\[ u_h = \sum_{i=1}^{n} U_i \phi_i, \]
where \( \{\phi_i\}_{i=1}^{n} \) is a basis for \( V_h \), and \( U \) is a vector of expansion coefficients for \( u_h \).
- Template Parameters
-
T | The function scalar type. |
U | The mesh geometry scalar type. |