Class template Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>

Inherits from Dune::GDT::ForwardOperatorInterface.

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
class Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV> : public ForwardOperatorInterface<SGV, r, rC, r, rC, F, V, RGV>

Oswald interpolation, averaging the values of a discontinuous Lagrange function at shared Lagrange points to obtain a continuous Lagrange function (optionally setting Dirichlet boundary DoFs to zero).

Method Dune::GDT::OswaldInterpolationOperator::assemble

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
void Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::assemble(const bool use_tbb = false) final override

\ {

Required by BilinearFormInterface

Method Dune::GDT::OswaldInterpolationOperator::linear

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
bool Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::linear() const final override

\ }

Required by ForwardOperatorInterface

\ {

Method Dune::GDT::OswaldInterpolationOperator::range_space

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
const RangeSpaceType &Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::range_space() const final override

No documentation provided.

Method Dune::GDT::OswaldInterpolationOperator::apply

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
void Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::apply(SourceFunctionType source_function, VectorType &range_vector, const XT::Common::Parameter& = {}) const final override

No documentation provided.

Constructor Dune::GDT::OswaldInterpolationOperator::OswaldInterpolationOperator

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::OswaldInterpolationOperator(const AssemblyGridViewType &assembly_grid_view, const RangeSpaceType &rng_spc, const XT::Grid::BoundaryInfo<I> &boundary_info, const std::string &logging_prefix = "", const std::array<bool, 3> &logging_state = XT::Common::default_logger_state())

:param boundary_info: To determine the Dirichlet boundary DoFs on which to set the range to zero.

Constructor Dune::GDT::OswaldInterpolationOperator::OswaldInterpolationOperator

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::OswaldInterpolationOperator(const AssemblyGridViewType &assembly_grid_view, const RangeSpaceType &rng_spc, const std::string &logging_prefix = "", const std::array<bool, 3> &logging_state = XT::Common::default_logger_state())

Does not set any boundary DoFs to zero.

Constructor Dune::GDT::OswaldInterpolationOperator::OswaldInterpolationOperator

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::OswaldInterpolationOperator(const ThisType &other) = default

No documentation provided.

Constructor Dune::GDT::OswaldInterpolationOperator::OswaldInterpolationOperator

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::OswaldInterpolationOperator(ThisType &&source) noexcept = default

No documentation provided.

Field Dune::GDT::OswaldInterpolationOperator::assembly_grid_view_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
const AssemblyGridViewType Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::assembly_grid_view_

\ }

Field Dune::GDT::OswaldInterpolationOperator::range_space_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
const RangeSpaceType &Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::range_space_

No documentation provided.

Field Dune::GDT::OswaldInterpolationOperator::boundary_info_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
const XT::Common::ConstStorageProvider<XT::Grid::BoundaryInfo<I>> Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::boundary_info_

No documentation provided.

Field Dune::GDT::OswaldInterpolationOperator::assembled_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
bool Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::assembled_

No documentation provided.

Field Dune::GDT::OswaldInterpolationOperator::global_DoF_id_to_global_LP_id_map_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
std::vector<size_t> Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::global_DoF_id_to_global_LP_id_map_

No documentation provided.

Field Dune::GDT::OswaldInterpolationOperator::global_LP_id_to_global_DoF_id_map_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
std::vector<std::set<size_t>> Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::global_LP_id_to_global_DoF_id_map_

No documentation provided.

Field Dune::GDT::OswaldInterpolationOperator::boundary_LPs_

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
std::set<size_t> Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::boundary_LPs_

No documentation provided.

Type alias Dune::GDT::OswaldInterpolationOperator::ThisType

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
using Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::ThisType = OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>

No documentation provided.

Type alias Dune::GDT::OswaldInterpolationOperator::BaseType

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
using Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::BaseType = ForwardOperatorInterface<SGV, r, rC, r, rC, F, V, RGV>

No documentation provided.

Type alias Dune::GDT::OswaldInterpolationOperator::AGV

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
using Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::AGV = AssemblyGridView

No documentation provided.

Type alias Dune::GDT::OswaldInterpolationOperator::AssemblyGridViewType

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
using Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::AssemblyGridViewType = AGV

No documentation provided.

Type alias Dune::GDT::OswaldInterpolationOperator::I

template<class AssemblyGridView, size_t r = 1, size_t rC = 1, class F = double, class V = XT::LA::IstlDenseVector<F>, class SGV = AssemblyGridView, class RGV = AssemblyGridView>
using Dune::GDT::OswaldInterpolationOperator<AssemblyGridView, r, rC, F, V, SGV, RGV>::I = XT::Grid::extract_intersection_t<AssemblyGridViewType>

No documentation provided.