Class template Dune::GDT::Operator

Inherits from Dune::GDT::OperatorInterface.

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
class Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV> : public OperatorInterface<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>

Operator built up from local element and intersection operators, applied by walking the assembly grid view.

Method Dune::GDT::Operator::with

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
auto Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::with(SourceFunctionType source_function, VectorType &range_vector, const XT::Common::Parameter &param) const

allows to fix the arguments to apply(), the resulting assembler can be appended to a GridWalker

Method Dune::GDT::Operator::with

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
auto Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::with(VectorType &source_vector, VectorType &range_vector, const XT::Common::Parameter &param) const

allows to fix the arguments to apply(), the resulting assembler can be appended to a GridWalker

Method Dune::GDT::Operator::range_space

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
const RangeSpaceType &Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::range_space() const override

\ {

Required by OperatorInterface

Method Dune::GDT::Operator::linear

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
bool Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::linear() const override

No documentation provided.

Method Dune::GDT::Operator::apply

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
void Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::apply(SourceFunctionType source_function, VectorType &range_vector, const XT::Common::Parameter &param) const override

No documentation provided.

Method Dune::GDT::Operator::assembly_grid_view

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
const AssemblyGridViewType &Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::assembly_grid_view() const override

\ }

Required by OperatorInterface

\ {

Method Dune::GDT::Operator::source_space

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
const SourceSpaceType &Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::source_space() const override

No documentation provided.

Method Dune::GDT::Operator::apply

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
void Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::apply(const VectorType &source_vector, VectorType &range_vector, const XT::Common::Parameter &param) const override

Simply redirects to apply(source_function, range_vector) to avoid the base interpolation + redirect

Method Dune::GDT::Operator::all_jacobian_options

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
int Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::all_jacobian_options() const override

No documentation provided.

Method Dune::GDT::Operator::jacobian

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
void Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::jacobian(const VectorType &source_vector, MatrixOperatorType &jacobian_op, const XT::Common::Configuration &opts, const XT::Common::Parameter &param) const override

No documentation provided.

Method Dune::GDT::Operator::operator+=

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
ThisType &Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::operator+=(const LocalElementOperatorType &local_operator)

\ }

These methods allow to append local operators

\ {

Method Dune::GDT::Operator::operator+=

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
ThisType &Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::operator+=(const std::pair<const LocalElementOperatorType&, const ElementFilterType&> &local_operator__filter)

No documentation provided.

Method Dune::GDT::Operator::operator+=

template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
ThisType &Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::operator+=(const int &local_operator)

No documentation provided.

Constructor Dune::GDT::Operator::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>

template<>
template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>(const AssemblyGridViewType &assembly_grid_vw, const SourceSpaceType &source_spc, const RangeSpaceType &range_spc, const bool requires_assembly = false, const std::string &logging_prefix, const std::array<bool, 3> &logging_state = XT::Common::default_logger_state())

No documentation provided.

Constructor Dune::GDT::Operator::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>

template<>
template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>(const ThisType &other)

No documentation provided.

Constructor Dune::GDT::Operator::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>

template<>
template<class AGV, 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 M = XT::LA::IstlRowMajorSparseMatrix<F>, class SGV = AGV, class RGV = AGV>
Dune::GDT::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>::Operator<AGV, s_r, s_rC, r_r, r_rC, F, M, SGV, RGV>(ThisType &&source) noexcept = default

No documentation provided.

Field Dune::GDT::Operator::source_space_

const SourceSpaceType &Dune::GDT::Operator::source_space_

No documentation provided.

Field Dune::GDT::Operator::range_space_

const RangeSpaceType &Dune::GDT::Operator::range_space_

No documentation provided.

Field Dune::GDT::Operator::requires_assembly_

bool Dune::GDT::Operator::requires_assembly_

No documentation provided.

Field Dune::GDT::Operator::linear_

bool Dune::GDT::Operator::linear_

No documentation provided.

Type alias Dune::GDT::Operator::ThisType

type Dune::GDT::Operator::ThisType

No documentation provided.

Type alias Dune::GDT::Operator::BaseType

type Dune::GDT::Operator::BaseType

No documentation provided.

Type alias Dune::GDT::Operator::ElementFilterType

type Dune::GDT::Operator::ElementFilterType

No documentation provided.

Type alias Dune::GDT::Operator::IntersectionFilterType

type Dune::GDT::Operator::IntersectionFilterType

No documentation provided.

Type alias Dune::GDT::Operator::ApplyOnAllElements

type Dune::GDT::Operator::ApplyOnAllElements

No documentation provided.

Type alias Dune::GDT::Operator::ApplyOnAllIntersections

type Dune::GDT::Operator::ApplyOnAllIntersections

No documentation provided.

Type alias Dune::GDT::Operator::LocalElementOperatorType

type Dune::GDT::Operator::LocalElementOperatorType

No documentation provided.