Class template Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>¶
Inherits from Dune::XT::Common::ParametricInterface, Dune::XT::Grid::IntersectionBoundObject, Dune::XT::Common::WithLogger.
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
class Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField> : public XT::Common::ParametricInterface, public XT::Grid::IntersectionBoundObject<Intersection>, public XT::Common::WithLogger<LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>>¶ Interface for integrands in integrals over grid intersections, which depend on two arguments (usually the test and ansatz bases on the inside of the intersection in an integral-based functional).
Note
Regarding SMP: the integrand is copied for each thread, so - no shared mutable state between copies to be thread safe, but - local mutable state is ok.
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::copy_as_binary_intersection_integrand¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
virtual std::unique_ptr<ThisType> Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::copy_as_binary_intersection_integrand() const = 0¶ No documentation provided.
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::operator+¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
LocalBinaryIntersectionIntegrandSum<I, t_r, t_rC, TR, F, a_r, a_rC, AR> Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::operator+(const ThisType &other) const¶ No documentation provided.
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::inside¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
virtual bool Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::inside() const¶ Flag to document which element the bases are expected to be bound to.
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::order¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
virtual int Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::order(const LocalTestBasisType &test_basis, const LocalAnsatzBasisType &ansatz_basis, const XT::Common::Parameter ¶m = {}) const = 0¶ Returns the polynomial order of the integrand, given the bases.
Note
Will throw Exceptions::not_bound_to_an_element_yet error if not bound yet!
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::evaluate¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
virtual void Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::evaluate(const LocalTestBasisType &test_basis, const LocalAnsatzBasisType &ansatz_basis, const DomainType &point_in_reference_intersection, DynamicMatrix<F> &result, const XT::Common::Parameter ¶m = {}) const = 0¶ Computes the evaluation of this integrand at the given point for each combination of functions from the two bases.
Note
Will throw Exceptions::not_bound_to_an_element_yet error if not bound yet!
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::evaluate¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
virtual DynamicMatrix<F> Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::evaluate(const LocalTestBasisType &test_basis, const LocalAnsatzBasisType &ansatz_basis, const DomainType &point_in_reference_intersection, const XT::Common::Parameter ¶m = {}) const¶ This method is provided for convenience and should not be used within library code.
Note
Will throw Exceptions::not_bound_to_an_element_yet error if not bound yet!
Method Dune::GDT::LocalBinaryIntersectionIntegrandInterface::ensure_size_and_clear_results¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
void Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::ensure_size_and_clear_results(const LocalTestBasisType &test_basis, const LocalAnsatzBasisType &ansatz_basis, DynamicMatrix<F> &result, const XT::Common::Parameter ¶m) const¶ No documentation provided.
Constructor Dune::GDT::LocalBinaryIntersectionIntegrandInterface::LocalBinaryIntersectionIntegrandInterface¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
explicit Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalBinaryIntersectionIntegrandInterface(const XT::Common::ParameterType ¶m_type = {}, const std::string &logging_prefix = "", const std::array<bool, 3> &logging_state = XT::Common::default_logger_state())¶ No documentation provided.
Constructor Dune::GDT::LocalBinaryIntersectionIntegrandInterface::LocalBinaryIntersectionIntegrandInterface¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalBinaryIntersectionIntegrandInterface(const ThisType &other) = default¶ No documentation provided.
Destructor Dune::GDT::LocalBinaryIntersectionIntegrandInterface::~LocalBinaryIntersectionIntegrandInterface¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::~LocalBinaryIntersectionIntegrandInterface() override = default¶ No documentation provided.
Variable Dune::GDT::LocalBinaryIntersectionIntegrandInterface::d¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
const size_t Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::d¶ No documentation provided.
Variable Dune::GDT::LocalBinaryIntersectionIntegrandInterface::t_r¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
const size_t Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::t_r¶ No documentation provided.
Variable Dune::GDT::LocalBinaryIntersectionIntegrandInterface::t_rC¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
const size_t Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::t_rC¶ No documentation provided.
Variable Dune::GDT::LocalBinaryIntersectionIntegrandInterface::a_r¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
const size_t Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::a_r¶ No documentation provided.
Variable Dune::GDT::LocalBinaryIntersectionIntegrandInterface::a_rC¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
const size_t Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::a_rC¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::ThisType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::ThisType = LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::BaseParametricType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::BaseParametricType = XT::Common::ParametricInterface¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::BaseIntersectionBoundObjectType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::BaseIntersectionBoundObjectType = XT::Grid::IntersectionBoundObject<Intersection>¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::Logger¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::Logger = XT::Common::WithLogger<ThisType>¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::ElementType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::ElementType = XT::Grid::extract_inside_element_t<Intersection>¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::I¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::I = Intersection¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::E¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::E = ElementType¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::D¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::D = typename ElementType::Geometry::ctype¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::F¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::F = Field¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::TR¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::TR = TestRangeField¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::AR¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::AR = AnsatzRangeField¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::DomainType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::DomainType = FieldVector<D, d - 1>¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::LocalTestBasisType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalTestBasisType = XT::Functions::ElementFunctionSetInterface<E, t_r, t_rC, TR>¶ No documentation provided.
Type alias Dune::GDT::LocalBinaryIntersectionIntegrandInterface::LocalAnsatzBasisType¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
using Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalAnsatzBasisType = XT::Functions::ElementFunctionSetInterface<E, a_r, a_rC, AR>¶ No documentation provided.
Function template Dune::GDT::LocalBinaryIntersectionIntegrandInterface::with_ansatz¶
-
template<class Intersection, size_t test_range_dim = 1, size_t test_range_dim_cols = 1, class TestRangeField = double, class Field = double, size_t ansatz_range_dim = test_range_dim, size_t ansatz_range_dim_cols = test_range_dim_cols, class AnsatzRangeField = TestRangeField>
template<class ...Args>
LocalBinaryToUnaryIntersectionIntegrand<I, t_r, t_rC, TR, F, a_r, a_rC, AR> Dune::GDT::LocalBinaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::with_ansatz(Args&&... args) const¶ No documentation provided.