Class template Dune::GDT::LocalBinaryElementIntegrandInterface¶
Inherits from Dune::XT::Common::ParametricInterface, Dune::XT::Grid::ElementBoundObject, Dune::XT::Common::WithLogger.
-
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField> : public XT::Common::ParametricInterface, public XT::Grid::ElementBoundObject<Element>, public XT::Common::WithLogger<LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>>¶ Interface for integrands in integrals over grid elements, which depend on two arguments (usually the test and ansatz bases in an integral-based operator, aka two-form).
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::LocalBinaryElementIntegrandInterface::copy_as_binary_element_integrand¶
-
template<class Element, 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>
int Dune::GDT::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::copy_as_binary_element_integrand() const = 0¶ No documentation provided.
Method Dune::GDT::LocalBinaryElementIntegrandInterface::operator+¶
- template<class Element, 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> LocalBinaryElementIntegrandSum<E, <recovery-expr>(), <recovery-expr>(), TR, F, <recovery-expr>(), <recovery-expr>(), AR> Dune::GDT::LocalBinaryElementIntegrandInterface<Element, 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::LocalBinaryElementIntegrandInterface::order¶
-
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::order(const int &test_basis, const int &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::LocalBinaryElementIntegrandInterface::evaluate¶
-
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::evaluate(const int &test_basis, const int &ansatz_basis, const int &point_in_reference_element, 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::LocalBinaryElementIntegrandInterface::evaluate¶
-
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::evaluate(const int &test_basis, const int &ansatz_basis, const int &point_in_reference_element, 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::LocalBinaryElementIntegrandInterface::ensure_size_and_clear_results¶
-
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::ensure_size_and_clear_results(const int &test_basis, const int &ansatz_basis, DynamicMatrix<F> &result, const XT::Common::Parameter ¶m) const¶ No documentation provided.
Constructor Dune::GDT::LocalBinaryElementIntegrandInterface::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>¶
-
template<>
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>(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::LocalBinaryElementIntegrandInterface::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>¶
-
template<>
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>(const LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField> &other) = default¶ No documentation provided.
Constructor Dune::GDT::LocalBinaryElementIntegrandInterface::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>¶
-
template<>
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>(LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField> &&other) noexcept = default¶ No documentation provided.
Destructor Dune::GDT::LocalBinaryElementIntegrandInterface::~LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>¶
-
template<>
template<class Element, 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::LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>::~LocalBinaryElementIntegrandInterface<Element, test_range_dim, test_range_dim_cols, TestRangeField, Field, ansatz_range_dim, ansatz_range_dim_cols, AnsatzRangeField>() override = default¶ No documentation provided.
Variable Dune::GDT::LocalBinaryElementIntegrandInterface::d¶
-
const int Dune::GDT::LocalBinaryElementIntegrandInterface::d¶
No documentation provided.
Variable Dune::GDT::LocalBinaryElementIntegrandInterface::t_r¶
-
const int Dune::GDT::LocalBinaryElementIntegrandInterface::t_r¶
No documentation provided.
Variable Dune::GDT::LocalBinaryElementIntegrandInterface::t_rC¶
-
const int Dune::GDT::LocalBinaryElementIntegrandInterface::t_rC¶
No documentation provided.
Variable Dune::GDT::LocalBinaryElementIntegrandInterface::a_r¶
-
const int Dune::GDT::LocalBinaryElementIntegrandInterface::a_r¶
No documentation provided.
Variable Dune::GDT::LocalBinaryElementIntegrandInterface::a_rC¶
-
const int Dune::GDT::LocalBinaryElementIntegrandInterface::a_rC¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::ThisType¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::ThisType¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::Logger¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::Logger¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::E¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::E¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::D¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::D¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::F¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::F¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::TR¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::TR¶
No documentation provided.
Type alias Dune::GDT::LocalBinaryElementIntegrandInterface::AR¶
-
type Dune::GDT::LocalBinaryElementIntegrandInterface::AR¶
No documentation provided.
Function template Dune::GDT::LocalBinaryElementIntegrandInterface::with_ansatz¶
- template<class Element, 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> LocalBinaryToUnaryElementIntegrand<E, <recovery-expr>(), <recovery-expr>(), TR, F, <recovery-expr>(), <recovery-expr>(), AR> Dune::GDT::LocalBinaryElementIntegrandInterface<Element, 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.