Class template Dune::GDT::FunctionalInterface

Inherits from Dune::XT::Common::ParametricInterface.

template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
class Dune::GDT::FunctionalInterface : public XT::Common::ParametricInterface

Interface for functionals.

Consider a partition tau_h (modelled by SourceGridView) of a physical domain, a (possibly vector- or matrix-values) vector space K^{r times rC} (modelled by Field, source_dim and source_dim_cols), this interface modells functionals

f: V_h -> K

where V_h is the (discrete) space

V_h := \ { v_h: tau_h -> K^{r times rC} \ }

modelled by a SpaceInterface of appropriate dimensions. The functions v_h in V_h, to which the funtional can be applied, are modelled by ConstDiscreteFunction with an appropriate vector type derived from XT::LA::VectorInterface (modelled by SourceVector).

TODO Add parameter dependency!

virtual bool Dune::GDT::FunctionalInterface::linear() const = 0

\ {

These methods have to be implemented.

virtual const SourceSpaceType &Dune::GDT::FunctionalInterface::source_space() const = 0

No documentation provided.

virtual FieldType Dune::GDT::FunctionalInterface::apply(const SourceVectorType&, const XT::Common::Parameter& = <recovery-expr>({})) const = 0

No documentation provided.

virtual FieldType Dune::GDT::FunctionalInterface::apply(const ConstSourceFunctionType &source, const XT::Common::Parameter &param = <recovery-expr>({})) const

\ }

virtual void Dune::GDT::FunctionalInterface::assemble(const bool = 0)

Allows the implementation to do preparatory work (i.e., assemble the vector of a vector-based linear functional).

Note

In general, you have to call this method before calling apply!

template<>
explicit Dune::GDT::FunctionalInterface::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>(const XT::Common::ParameterType param_tp = {})

No documentation provided.

template<>
Dune::GDT::FunctionalInterface::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>(const ThisType &other)

No documentation provided.

template<>
Dune::GDT::FunctionalInterface::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>(ThisType &&source) noexcept = default

No documentation provided.

template<>
virtual Dune::GDT::FunctionalInterface::~FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>() = default

No documentation provided.

const size_t Dune::GDT::FunctionalInterface::r

No documentation provided.

const size_t Dune::GDT::FunctionalInterface::rC

No documentation provided.

type Dune::GDT::FunctionalInterface::ThisType

No documentation provided.

type Dune::GDT::FunctionalInterface::F

No documentation provided.

type Dune::GDT::FunctionalInterface::SourceSpaceType

No documentation provided.

type Dune::GDT::FunctionalInterface::SourceVectorType

No documentation provided.

type Dune::GDT::FunctionalInterface::ConstSourceFunctionType

No documentation provided.

type Dune::GDT::FunctionalInterface::FieldType

No documentation provided.