Class template Dune::XT::Functions::FunctionInterface¶
Inherits from Dune::XT::Common::ParametricInterface.
-
template<size_t d, size_t r, size_t rC, class R>
class Dune::XT::Functions::FunctionInterface<d, r, rC, R> : public Common::ParametricInterface¶ Interface for functions (in the C^ infty sense) which can thus be evaluated in global coordinates.
auto function = …; auto grid_view = …; using E = XT::Grid::extract_entity_t<decltype(grid_view)>; auto grid_function = make_grid_function
(function); These functions do not depend on a grid, but only on the dimensions and fields of their domain and range. See in particular RangeReturnTypeSelector and DerivativeRangeReturnTypeSelector for the interpretation of a function and its derivatives, and GridFunctionInterface for functions which may have discontinuities between entities (as in: which are double-valued on intersections).
To turn a function into a function which is localizable w.r.t. a GridView of matching dimension (e.g., to visualize it or to use it in a discretization scheme), use make_grid_function to obtain a wrapped version of this function:
See also:
RangeReturnTypeSelector,DerivativeRangeReturnTypeSelector,GridFunctionInterface,GridInterface,make_grid_function
Method Dune::XT::Functions::FunctionInterface::operator=¶
Method Dune::XT::Functions::FunctionInterface::operator=¶
Method Dune::XT::Functions::FunctionInterface::copy_as_function¶
-
template<size_t d, size_t r, size_t rC, class R>
int Dune::XT::Functions::FunctionInterface<d, r, rC, R>::copy_as_function() const¶ Returns a (shallow) copy of the function. actual implementation work is delegated to the private
copy_as_function_implcombined with hidingcopy_as_functionin derived classes, this allows us the a unique_ptr with correct type at all levels of the polymorphic hierarchyNote
This is intended to be cheap, so make sure to share resources (but in a thread-safe way)!
Method Dune::XT::Functions::FunctionInterface::copy_as_function_impl¶
Method Dune::XT::Functions::FunctionInterface::order¶
Method Dune::XT::Functions::FunctionInterface::evaluate¶
Method Dune::XT::Functions::FunctionInterface::jacobian¶
Method Dune::XT::Functions::FunctionInterface::derivative¶
Method Dune::XT::Functions::FunctionInterface::static_id¶
Method Dune::XT::Functions::FunctionInterface::name¶
Method Dune::XT::Functions::FunctionInterface::operator-¶
Method Dune::XT::Functions::FunctionInterface::operator+¶
Constructor Dune::XT::Functions::FunctionInterface::FunctionInterface<d, r, rC, R>¶
Constructor Dune::XT::Functions::FunctionInterface::FunctionInterface<d, r, rC, R>¶
Constructor Dune::XT::Functions::FunctionInterface::FunctionInterface<d, r, rC, R>¶
Destructor Dune::XT::Functions::FunctionInterface::~FunctionInterface<d, r, rC, R>¶
-
template<>
~FunctionInterface<domainDim, rangeDim, rangeDimCols, RangeField>() override = default¶ No documentation provided.
Variable Dune::XT::Functions::FunctionInterface::domain_dim¶
-
const int Dune::XT::Functions::FunctionInterface::domain_dim¶
No documentation provided.
Variable Dune::XT::Functions::FunctionInterface::range_dim¶
-
const int Dune::XT::Functions::FunctionInterface::range_dim¶
No documentation provided.
Variable Dune::XT::Functions::FunctionInterface::range_dim_cols¶
-
const int Dune::XT::Functions::FunctionInterface::range_dim_cols¶
No documentation provided.
Variable Dune::XT::Functions::FunctionInterface::d¶
-
const int Dune::XT::Functions::FunctionInterface::d¶
No documentation provided.
Variable Dune::XT::Functions::FunctionInterface::r¶
-
const int Dune::XT::Functions::FunctionInterface::r¶
No documentation provided.
Variable Dune::XT::Functions::FunctionInterface::rC¶
-
const int Dune::XT::Functions::FunctionInterface::rC¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::ThisType¶
-
type Dune::XT::Functions::FunctionInterface::ThisType¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::DomainFieldType¶
-
type Dune::XT::Functions::FunctionInterface::DomainFieldType¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::RangeFieldType¶
-
type Dune::XT::Functions::FunctionInterface::RangeFieldType¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::D¶
-
type Dune::XT::Functions::FunctionInterface::D¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::R¶
-
type Dune::XT::Functions::FunctionInterface::R¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::DifferenceType¶
-
type Dune::XT::Functions::FunctionInterface::DifferenceType¶
No documentation provided.
Type alias Dune::XT::Functions::FunctionInterface::SumType¶
-
type Dune::XT::Functions::FunctionInterface::SumType¶
No documentation provided.
Class template Dune::XT::Functions::FunctionInterface::single_evaluate_helper¶
-
template<class SingleType, size_t _r, bool anything>
class Dune::XT::Functions::FunctionInterface::single_evaluate_helper<SingleType, _r, anything>¶ No documentation provided.
Function template Dune::XT::Functions::FunctionInterface::single_evaluate_helper::call¶
-
template<class SingleType, size_t _r, bool anything>
template<class FullType>
static SingleType Dune::XT::Functions::FunctionInterface::single_evaluate_helper<SingleType, _r, anything>::call(const FullType &val, const int row, const int)¶ No documentation provided.
Class template Dune::XT::Functions::FunctionInterface::single_derivative_helper¶
-
template<class SingleType, size_t _r = r, size_t _rC = rC, bool anything = true>
class Dune::XT::Functions::FunctionInterface::single_derivative_helper<SingleType, _r, _rC, anything>¶ No documentation provided.
Function template Dune::XT::Functions::FunctionInterface::single_derivative_helper::call¶
-
template<class SingleType, size_t _r = r, size_t _rC = rC, bool anything = true>
template<class FullType>
static SingleType Dune::XT::Functions::FunctionInterface::single_derivative_helper<SingleType, _r, _rC, anything>::call(const FullType &val, const int row, const int col)¶ No documentation provided.
Class template Dune::XT::Functions::FunctionInterface::single_derivative_helper¶
-
template<class SingleType, size_t _r, bool anything>
class Dune::XT::Functions::FunctionInterface::single_derivative_helper<SingleType, _r, 1, anything>¶ No documentation provided.
Function template Dune::XT::Functions::FunctionInterface::single_derivative_helper::call¶
-
template<class SingleType, size_t _r, bool anything>
template<class FullType>
static SingleType Dune::XT::Functions::FunctionInterface::single_derivative_helper<SingleType, _r, 1, anything>::call(const FullType &val, const int row, const int)¶ No documentation provided.