Template Class Observable¶
Defined in File observable.h
Class Documentation¶
-
template<typename SourceFieldType, typename Operation>
class Observable¶ A typed FE expression: a Field, a deal.II view operation, and metadata.
The expression’s value type is the result of invoking its operation on the source Field’s deal.II FEValues view. This keeps FE tensor typing and operation support in deal.II rather than maintaining a parallel algebra in ImmersX.
Public Types
-
using source_field_type = SourceFieldType¶
-
using view_type = typename SourceFieldType::view_type¶
Public Functions
-
inline explicit Observable(const SourceFieldType &source)¶
-
template<typename VectorType>
inline Observable(const SourceFieldType &source, const VectorType &frozen_values)¶
-
template<typename OtherOperation>
inline Observable(const Observable<SourceFieldType, OtherOperation> &other)¶
-
inline const SourceFieldType &source() const¶
-
inline const SourceFieldType &source_for(const FieldId field) const¶
-
inline Observable with_id(const FieldId id) const¶
-
inline bool is_frozen() const¶
-
template<typename VectorType>
inline const VectorType &frozen_values() const¶
-
inline double scale() const¶
-
template<typename Evaluator>
inline value_type evaluate_point(const dealii::Point<spacedim()> &point, const double time, Evaluator &&evaluator) const¶
-
template<typename DerivativeEvaluator>
inline value_type linearize_point(const FieldId field, const dealii::Point<spacedim()> &point, const double time, DerivativeEvaluator &&derivative_evaluator) const¶
-
inline Observable scaled(const double coefficient) const¶
Public Static Functions
-
static inline constexpr unsigned int dimension()¶
-
static inline constexpr unsigned int space_dimension()¶
-
static inline constexpr unsigned int spacedimension()¶
-
static inline constexpr unsigned int spacedim()¶
-
static inline constexpr dealii::UpdateFlags update_flags()¶
-
static inline constexpr bool is_linear()¶
-
using source_field_type = SourceFieldType¶