![]() |
Dune-Fufem 2.11-git
|
Base class for multilinear operator implementations. More...
#include <dune/fufem/forms/baseclass.hh>

Static Public Attributes | |
| static constexpr std::size_t | arity = k |
Detailed Description
class Dune::Fufem::Forms::MultilinearOperator< k >
Base class for multilinear operator implementations.
This is motivated by UFL. All classes deriving from this are multilinear maps from finite element spaces into the space of functions from the domain into some finite dimensional vector spaces. Poinwise products (scalar-vector, matrix-vector, dot,...) of multilinear maps induces multilinear maps of higher order. The product of a k-linear map and an l-linear is a (k+l) linear map into a suitable function space.
Integrating a k-linear operator \(F:V_1 \times ... \times V_k \to \{D\to\mathbb{R}\}\) over \(D\) results in a k-linear form \(\int_D F(...)dx : V_1 \times ... \times V_k \to D\)
Example: Denote by \(\{A\to B\}\) the set of all functions \(f:B\to A\). Now let D a domain in \(\mathbb{R}^d\), \(V \subset \{D\to \mathbb{R}\}\) and \(W \subset \{D\to \mathbb{R}\}\) two FE-spaces, and \(f \in \{D\to \mathbb{R}^{d \times d}\}\) a fixed matrix valued function. Then we have:
- The function \(f\) is a 0-linear map into \(\{D\to\mathbb{R}^{d \times d}\}\).
- The gradient operator \(\nabla:V \to \{D\to\mathbb{R}^d\}\) is a 1-linear map into \(\{D\to\mathbb{R}^d\}\).
- The gradient operator \(\nabla:W \to \{D\to\mathbb{R}^d\}\) is a 1-linear map into \(\{D\to\mathbb{R}^d\}\).
- The pointwise matrix-vector product \(f\nabla:V \to \{D\to\mathbb{R}^d\}\) is a 1-linear map into \(\{D\to\mathbb{R}^d\}\).
- The pointwise dot product \(F:=dot(f\nabla(.), \nabla(.)):\{V\times W\} \to \{D\to\mathbb{R}\}\) is a 2-linear map into \(\{D\to\mathbb{R}\}\).
- Integrating the 2-linear (bilinear) operator \(F:V \times W \to \{D\to\mathbb{R}\}\) over \(D\) results in a 2-linear (bilinear) form \(\int_D F(...)dx : V \times W \to \mathbb{R}\).
Member Data Documentation
◆ arity
|
staticconstexpr |
The documentation for this class was generated from the following file:
