Class template Dune::GDT::ForwardOperatorInterface

Inherits from Dune::GDT::BilinearFormInterface.

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
class Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV> : public BilinearFormInterface<SGV, s_r, s_rC, r_r, r_rC, F, RGV>

Interface for operators which can only be applied to a source (providing apply() into a range vector).

Method Dune::GDT::ForwardOperatorInterface::range_space

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual const RangeSpaceType &Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::range_space() const = 0

\ {

These methods have to be implemented to define the discrete range of the Operator.

Method Dune::GDT::ForwardOperatorInterface::linear

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual bool Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::linear() const = 0

\ }

These methods have to be implemented to define the forward-action of the Operator.

\ {

Method Dune::GDT::ForwardOperatorInterface::apply

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual void Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::apply(SourceFunctionType source_function, VectorType &range_vector, const XT::Common::Parameter &param) const = 0

No documentation provided.

Method Dune::GDT::ForwardOperatorInterface::apply2

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual FieldType Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::apply2(RangeFunctionType range_function, SourceFunctionType source_function, const XT::Common::Parameter &param) const override

Carries out an interpolation of range_function and calls the other apply2() afterwards (not optimal!).

Method Dune::GDT::ForwardOperatorInterface::apply2

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual FieldType Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::apply2(const VectorType &range_vector, SourceFunctionType source_function, const XT::Common::Parameter &param) const

\ }

These methods extend the ones from BilinearFormInterface.

\ {

Method Dune::GDT::ForwardOperatorInterface::apply

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual void Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::apply(SourceFunctionType source_function, DiscreteRangeFunctionType &discrete_range_function, const XT::Common::Parameter &param) const

\ }

These apply methods are provided for convenience.

\ {

Method Dune::GDT::ForwardOperatorInterface::apply

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual DiscreteRangeFunctionType Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::apply(SourceFunctionType source_function, const XT::Common::Parameter &param) const

No documentation provided.

Method Dune::GDT::ForwardOperatorInterface::assert_matching_range

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
void Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::assert_matching_range(const VectorType &range_vector) const

\ }

Method Dune::GDT::ForwardOperatorInterface::assert_matching_range

template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
void Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::assert_matching_range(const DiscreteRangeFunctionType &discrete_range_function) const

No documentation provided.

Constructor Dune::GDT::ForwardOperatorInterface::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>

template<>
template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
explicit Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>(const XT::Common::ParameterType &param_type = {}, const std::string &logging_prefix, const std::array<bool, 3> &logging_state = XT::Common::default_logger_state())

No documentation provided.

Constructor Dune::GDT::ForwardOperatorInterface::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>

template<>
template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>(const ThisType &other) = default

No documentation provided.

Constructor Dune::GDT::ForwardOperatorInterface::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>

template<>
template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>(ThisType &&source) noexcept = default

No documentation provided.

Destructor Dune::GDT::ForwardOperatorInterface::~ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>

template<>
template<class SGV, size_t s_r = 1, size_t s_rC = 1, size_t r_r = s_r, size_t r_rC = s_rC, class F = double, class Vector = XT::LA::IstlDenseVector<F>, class RGV = SGV>
virtual Dune::GDT::ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>::~ForwardOperatorInterface<SGV, s_r, s_rC, r_r, r_rC, F, Vector, RGV>() = default

No documentation provided.

Type alias Dune::GDT::ForwardOperatorInterface::ThisType

type Dune::GDT::ForwardOperatorInterface::ThisType

No documentation provided.

Type alias Dune::GDT::ForwardOperatorInterface::BaseType

type Dune::GDT::ForwardOperatorInterface::BaseType

No documentation provided.

Type alias Dune::GDT::ForwardOperatorInterface::VectorType

type Dune::GDT::ForwardOperatorInterface::VectorType

No documentation provided.

Type alias Dune::GDT::ForwardOperatorInterface::V

type Dune::GDT::ForwardOperatorInterface::V

No documentation provided.

Type alias Dune::GDT::ForwardOperatorInterface::RangeSpaceType

type Dune::GDT::ForwardOperatorInterface::RangeSpaceType

No documentation provided.

Type alias Dune::GDT::ForwardOperatorInterface::DiscreteRangeFunctionType

type Dune::GDT::ForwardOperatorInterface::DiscreteRangeFunctionType

No documentation provided.