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<SourceVector, SourceGridView, source_dim, source_dim_cols, Field> : 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!

Method Dune::GDT::FunctionalInterface::linear

template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
virtual bool Dune::GDT::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>::linear() const = 0

\ {

These methods have to be implemented.

Method Dune::GDT::FunctionalInterface::source_space

template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
const int &Dune::GDT::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>::source_space() const = 0

No documentation provided.

Method Dune::GDT::FunctionalInterface::apply

template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
virtual FieldType Dune::GDT::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>::apply(const SourceVectorType&, const XT::Common::Parameter&) const = 0

No documentation provided.

Method Dune::GDT::FunctionalInterface::apply

template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
virtual FieldType Dune::GDT::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>::apply(const int &source, const XT::Common::Parameter &param) const

Method Dune::GDT::FunctionalInterface::assemble

template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
virtual void Dune::GDT::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>::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!

Constructor Dune::GDT::FunctionalInterface::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>

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

No documentation provided.

Constructor Dune::GDT::FunctionalInterface::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>

template<>
template<class SourceVector, class SourceGridView, size_t source_dim = 1, size_t source_dim_cols = 1, class Field = double>
Dune::GDT::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>(const ThisType &other)

No documentation provided.

Constructor Dune::GDT::FunctionalInterface::FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>

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

No documentation provided.

Destructor Dune::GDT::FunctionalInterface::~FunctionalInterface<SourceVector, SourceGridView, source_dim, source_dim_cols, Field>

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

No documentation provided.

Variable Dune::GDT::FunctionalInterface::r

const int Dune::GDT::FunctionalInterface::r

No documentation provided.

Variable Dune::GDT::FunctionalInterface::rC

const int Dune::GDT::FunctionalInterface::rC

No documentation provided.

Type alias Dune::GDT::FunctionalInterface::ThisType

type Dune::GDT::FunctionalInterface::ThisType

No documentation provided.

Type alias Dune::GDT::FunctionalInterface::F

type Dune::GDT::FunctionalInterface::F

No documentation provided.

Type alias Dune::GDT::FunctionalInterface::SourceVectorType

type Dune::GDT::FunctionalInterface::SourceVectorType

No documentation provided.

Type alias Dune::GDT::FunctionalInterface::FieldType

type Dune::GDT::FunctionalInterface::FieldType

No documentation provided.