Template Class KnownTerm

Class Documentation

template<typename Source, typename TestExpression, typename Support = InferredIntegrationSupport>
class KnownTerm

A dependency-free FE term generated by a known source.

A frozen Observable is accepted as a source as well. In that case its existing FE operation and frozen vector are evaluated directly, so the term reuses the ordinary FE expression machinery without registering a state dependency or duplicating a field representation.

Public Types

using target_type = TestExpression

Public Functions

inline KnownTerm(Source source, TestExpression target, Support support = {})
inline const std::vector<FieldId> &dependencies() const
inline KnownTerm on_boundary(const dealii::types::boundary_id id) const
inline KnownTerm on_boundary(const std::set<dealii::types::boundary_id> &boundary_ids) const
inline KnownTerm in_volume() const
template<typename PhysicalSupport, std::enable_if_t<is_physical_quadrature_support<std::decay_t<PhysicalSupport>>::value, int> = 0>
inline auto on(PhysicalSupport support) const

Integrate a known callback on an independent physical support.

template<typename VectorType, typename MatrixType>
inline FieldId add(SemidiscreteBuilder<VectorType, MatrixType> &builder) const
template<typename VectorType, typename MatrixType>
inline FieldId operator()(SemidiscreteBuilder<VectorType, MatrixType> &builder) const
inline const Source &source() const
inline const TestExpression &target() const