Class template Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface<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<LocalQuaternaryIntersectionIntegrandInterface<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 four arguments (the test and ansatz bases on both the inside and the outside of the intersection, as used in coupling/DG operators).
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::LocalQuaternaryIntersectionIntegrandInterface::copy_as_quaternary_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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::copy_as_quaternary_intersection_integrand() const = 0¶ No documentation provided.
Method Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface::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>
LocalQuaternaryIntersectionIntegrandSum<I, t_r, t_rC, TR, F, a_r, a_rC, AR> Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::order(const LocalTestBasisType &test_basis_inside, const LocalAnsatzBasisType &ansatz_basis_inside, const LocalTestBasisType &test_basis_outside, const LocalAnsatzBasisType &ansatz_basis_outside, 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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::evaluate(const LocalTestBasisType &test_basis_inside, const LocalAnsatzBasisType &ansatz_basis_inside, const LocalTestBasisType &test_basis_outside, const LocalAnsatzBasisType &ansatz_basis_outside, const DomainType &point_in_reference_intersection, DynamicMatrix<F> &result_in_in, DynamicMatrix<F> &result_in_out, DynamicMatrix<F> &result_out_in, DynamicMatrix<F> &result_out_out, const XT::Common::Parameter ¶m = {}) const = 0¶ Computes the evaluation of this integrand at the given point for each combination of functions from the bases.
Note
Will throw Exceptions::not_bound_to_an_element_yet error if not bound yet!
Method Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface::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 std::array<DynamicMatrix<F>, 4> Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::evaluate(const LocalTestBasisType &test_basis_inside, const LocalAnsatzBasisType &ansatz_basis_inside, const LocalTestBasisType &test_basis_outside, const LocalAnsatzBasisType &ansatz_basis_outside, 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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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_inside, const LocalAnsatzBasisType &ansatz_basis_inside, const LocalTestBasisType &test_basis_outside, const LocalAnsatzBasisType &ansatz_basis_outside, DynamicMatrix<F> &result_in_in, DynamicMatrix<F> &result_in_out, DynamicMatrix<F> &result_out_in, DynamicMatrix<F> &result_out_out, const XT::Common::Parameter ¶m) const¶ No documentation provided.
Constructor Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface::LocalQuaternaryIntersectionIntegrandInterface¶
-
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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalQuaternaryIntersectionIntegrandInterface(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.
Destructor Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface::~LocalQuaternaryIntersectionIntegrandInterface¶
-
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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::~LocalQuaternaryIntersectionIntegrandInterface() override = default¶ No documentation provided.
Variable Dune::GDT::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::ThisType = LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<Intersection, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::Logger = XT::Common::WithLogger<LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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::LocalQuaternaryIntersectionIntegrandInterface::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::LocalQuaternaryIntersectionIntegrandInterface<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.