DUNE-ACFEM (unstable)
transportmodel.hh
50 , public MPL::UniqueTags<ConditionalType<IsConstantExprArg<GridFunction>::value, ConstantExpression, void>,
83 template<class FunctionArg, std::enable_if_t<std::is_constructible<LocalFunctionType, FunctionArg>::value, int> = 0>
193 return expressionClosure(TransportModel<typename Object::FunctionSpaceType, GridFunction>(std::forward<GridFunction>(velocity), name));
196 template<class Object, class GridFunction, std::enable_if_t<ExpressionTraits<GridFunction>::isZero, int> = 0>
Define a model for an advection term.
Definition: transportmodel.hh:52
constexpr decltype(auto) expressionClosure(T &&t)
Do-nothing default implementation for pathologic cases.
Definition: interface.hh:93
std::is_base_of< Tag, std::decay_t< A > > HasTag
Evaluate to std::true_type if std::decay_t<A> is derived from Tag, otherwise to std::false_type.
Definition: tags.hh:176
auto linearizedRobinFlux(const QuadraturePoint< Quadrature > &x, const DomainType &unitOuterNormal, const RangeType &value) const
The linearized Robin-type flux term.
Definition: transportmodel.hh:161
auto classifyBoundary(const Intersection &intersection)
Bind to the given intersection and classify the components w.r.t.
Definition: transportmodel.hh:109
void bind(const Entity &entity)
Bind to the given entity.
Definition: transportmodel.hh:96
auto linearizedFlux(const QuadraturePoint< Quadrature > &x, const RangeType &value) const
Evaluate the linearized flux in local coordinates.
Definition: transportmodel.hh:118
auto fluxDivergence(const QuadraturePoint< Quadrature > &x, const RangeType &value, const JacobianRangeType &jacobian) const
!
Definition: transportmodel.hh:139
constexpr auto transportModel(const Object &object, GridFunction &&velocity, const std::string &name="")
Generate an advection-model object.
Definition: transportmodel.hh:189
void unbind()
Unbind from the previously bound entity.
Definition: transportmodel.hh:102
auto zeroModel(const T &t, const std::string &name, F closure=F{})
Generate a zero model fitting the specified object.
Definition: zeromodel.hh:77
Fem::QuadraturePointWrapper< Quadrature > QuadraturePoint
Shortcut.
Definition: quadraturepoint.hh:23
Terminals may derive from this class to express that they are expressions.
Definition: terminal.hh:25
A structure defining some basic default types and methods.
Definition: modelbase.hh:41
typename FunctionSpaceType::JacobianRangeType JacobianRangeType
The type returned by classifyBoundary().
Definition: modelbase.hh:63
typename FunctionSpaceType::DomainType DomainType
The type returned by classifyBoundary().
Definition: modelbase.hh:61
typename FunctionSpaceType::RangeType RangeType
The type returned by classifyBoundary().
Definition: modelbase.hh:62
static constexpr int dimRange
The type returned by classifyBoundary().
Definition: modelbase.hh:86
typename FunctionSpaceType::RangeFieldType RangeFieldType
The type returned by classifyBoundary().
Definition: modelbase.hh:67
static constexpr int dimDomain
The type returned by classifyBoundary().
Definition: modelbase.hh:85
|
Legal Statements / Impressum |
Hosted by TU Dresden |
generated with Hugo v0.111.3
(Jan 5, 23:30, 2025)