Dune-Fufem 2.11-git
Loading...
Searching...
No Matches
Form language (pointwise linear operators)

Description

Pointwise defined linear operators.

Collaboration diagram for Form language (pointwise linear operators):

Classes

class  Dune::Fufem::Forms::RangeOperator< OuterOp >
 Adaptor for making a callback compatible with Dune::Fufem::Forms. More...
 

Functions

template<class OuterOp , class InnerOp , std::enable_if_t< isOperatorOrSumOperator_v< InnerOp >, int > = 0, std::enable_if_t< Dune::IsCallable< OuterOp(typename InnerOp::Range)>::value, int > = 0>
auto Dune::Fufem::Forms::compose (const OuterOp &outerOp, const InnerOp &innerOp)
 Generic composition of a multilinear operators with a pointwise outer operator.
 
template<class Op >
auto Dune::Fufem::Forms::transpose (const Op &op)
 Transform an operator by pointwise matrix transposition.
 
template<class Op >
auto Dune::Fufem::Forms::symmetrize (const Op &op)
 Transform an operator by pointwise matrix symmetrization.
 
template<class Op >
auto Dune::Fufem::Forms::trace (const Op &op)
 Transform an operator by pointwise computation of the matrix trace.
 

Function Documentation

◆ compose()

template<class OuterOp , class InnerOp , std::enable_if_t< isOperatorOrSumOperator_v< InnerOp >, int > = 0, std::enable_if_t< Dune::IsCallable< OuterOp(typename InnerOp::Range)>::value, int > = 0>
auto Dune::Fufem::Forms::compose ( const OuterOp &  outerOp,
const InnerOp &  innerOp 
)

Generic composition of a multilinear operators with a pointwise outer operator.

Parameters
outerOpPointwise outer operator
innerOpInner operator (should be a MultilinearOperator or SumOperator)

Given an m-linear operator innerOp this returns another m-linear operator, where outerOp is applied pointwise in the associated function space range.

◆ symmetrize()

template<class Op >
auto Dune::Fufem::Forms::symmetrize ( const Op &  op)

Transform an operator by pointwise matrix symmetrization.

Parameters
opThe operator to transform (should be a constant, MultilinearOperator, or SumOperator)

Given an m-linear operator op this returns another m-linear operator, where a pointwise transformation is applied in the associated function space range. If op is a constant, the transformation is applied directly. The pointwise transformation applies a matrix symmetrization.

◆ trace()

template<class Op >
auto Dune::Fufem::Forms::trace ( const Op &  op)

Transform an operator by pointwise computation of the matrix trace.

Parameters
opThe operator to transform (should be a constant, MultilinearOperator, or SumOperator)

Given an m-linear operator op this returns another m-linear operator, where a pointwise transformation is applied in the associated function space range. If op is a constant, the transformation is applied directly. The pointwise transformation computes the matrix trace.

◆ transpose()

template<class Op >
auto Dune::Fufem::Forms::transpose ( const Op &  op)

Transform an operator by pointwise matrix transposition.

Parameters
opThe operator to transform (should be a constant, MultilinearOperator, or SumOperator)

Given an m-linear operator op this returns another m-linear operator, where a pointwise transformation is applied in the associated function space range. If op is a constant, the transformation is applied directly. The pointwise transformation applies a matrix transposition.