![]() |
Dune-Fufem 2.11-git
|
Loading...
Searching...
No Matches
Dune::Fufem::Forms Namespace Reference
Namespaces | |
| namespace | LocalOperators |
Classes | |
| class | Boundary |
| Class representing the grid view boundary as integration domain. More... | |
| class | BoundUnaryOperator |
| Wrapper binding a linear operator to a coefficient vector. More... | |
| class | Bulk |
| Class representing the grid view elements as integration domain. More... | |
| class | CacheManager |
| A class for managing caches of different types. More... | |
| class | Coefficient |
| Coefficient function. More... | |
| class | FaceNormalOperator |
| Operator representing the normal field on intersection. More... | |
| class | FEFunctionDivergenceOperator |
| Linear map representing the divergenc of the elements of an FE-space. More... | |
| class | FEFunctionJacobianOperator |
| Linear map representing the jacobians of the elements of an FE-space. More... | |
| class | FEFunctionOperator |
| Linear map representing the elements of an FE-space. More... | |
| class | FEOperatorBase |
| Base class of elementary differential operators on an FE-space. More... | |
| class | IntegratedBilinearForm |
| Local assembler corresponding to a bulk bilinear form. More... | |
| class | IntegratedBoundaryBilinearForm |
| Local assembler corresponding to a boundary bilinear form. More... | |
| class | IntegratedBoundaryLinearForm |
| Local assembler corresponding to a boundary linear form. More... | |
| class | IntegratedLinearForm |
| Local assembler corresponding to a bulk linear form. More... | |
| class | IntegratedSkeletonBilinearForm |
| Local assembler corresponding to a skeleton bilinear form. More... | |
| class | IntegratedSkeletonLinearForm |
| Local assembler corresponding to a skeleton linear form. More... | |
| struct | IsBoundaryDomain |
| Traits class to identify boundary integration domains. More... | |
| struct | IsBoundaryDomain< Boundary > |
| Tag class Boundary as boundary integration domain. More... | |
| struct | IsBoundaryDomain< Dune::Fufem::Boundary< GridView > > |
| Tag class template Dune::Fufem::Boundary as boundary integration domain. More... | |
| struct | IsBoundaryDomain< Dune::Fufem::BoundaryPatch< GridView > > |
| Tag class template Dune::Fufem::BoundaryPatch as boundary integration domain. More... | |
| struct | IsBoundaryDomain<::BoundaryPatch< GridView > > |
| Tag class template BoundaryPatch as boundary integration domain. More... | |
| struct | IsBulkDomain |
| Traits class to identify bulk integration domains. More... | |
| struct | IsBulkDomain< Bulk > |
| Tag class Bulk as bulk integration domain. More... | |
| struct | IsDomain |
| Traits class to identify integration domains. More... | |
| struct | IsLocalAssembler |
| struct | IsLocalAssembler< IntegratedBilinearForm< BilinearOperator, Domain > > |
| struct | IsLocalAssembler< IntegratedBoundaryBilinearForm< BilinearOperator, Domain > > |
| struct | IsLocalAssembler< IntegratedBoundaryLinearForm< LinearOperator, Domain > > |
| struct | IsLocalAssembler< IntegratedLinearForm< LinearOperator, Domain > > |
| struct | IsLocalAssembler< IntegratedSkeletonBilinearForm< BilinearOperator, Patch > > |
| struct | IsLocalAssembler< IntegratedSkeletonLinearForm< LinearOperator, Patch > > |
| struct | IsLocalAssembler< LocalSumAssembler< LocalAssemblers... > > |
| struct | IsSkeletonDomain |
| Traits class to identify skeleton integration domains. More... | |
| struct | IsSkeletonDomain< Skeleton > |
| Tag class Skeleton as skeleton integration domain. More... | |
| class | LocalFunctionAdaptor |
| Adaptor for turning a Fufem::Forms LocalOperator into a LocalFunction. More... | |
| class | LocalSumAssembler |
| Sum of local assemblers obtained using Dune::Fufem::Forms::integrate(...) More... | |
| class | MeshSizeOperator |
| Operator representing the mesh size of entities. More... | |
| class | MultilinearOperator |
| Base class for multilinear operator implementations. More... | |
| class | MultipleQuadratureCache |
| A cache providing multiple versions for different quadrature rules. More... | |
| class | NonAffineFamily |
| Tag type to classify non-affine finite element families. More... | |
| class | OutsideOperator |
| Operator for switching to the outside entity. More... | |
| class | ProductOperator |
| Generic product of two multilinear operators. More... | |
| class | RangeOperator |
| Adaptor for making a callback compatible with Dune::Fufem::Forms. More... | |
| class | ShapeFunctionCache |
| A hierarchic cache for storing shape function evaluations for a tree. More... | |
| class | ShapeFunctionCache< Node, CT, std::enable_if_t< Dune::Fufem::Impl::Concept::LeafTreeNode< Node > > > |
| class | ShapeFunctionCache< Node, CT, std::enable_if_t< Dune::Fufem::Impl::Concept::StaticDegreeInnerTreeNode< Node > and not Dune::Fufem::Impl::Concept::UniformInnerTreeNode< Node > > > |
| class | ShapeFunctionCache< Node, CT, std::enable_if_t< Dune::Fufem::Impl::Concept::UniformInnerTreeNode< Node > > > |
| class | SimpleCache |
| A simple cache implementation storing values. More... | |
| class | Skeleton |
| Class representing the grid view skeleton as integration domain. More... | |
| class | SumOperator |
| Sum of several multilinear operators. More... | |
| class | TransformedOperator |
| Pointwise transformation of a multilinear operator. More... | |
| class | UnaryOperator |
| Base class for unary multilinear operator implementations. More... | |
| class | UniqueCacheId |
| Objects of this class are used to uniquely identifies a cache. More... | |
Typedefs | |
| template<class Op > | |
| using | IsOperator = decltype(Impl::isOperatorHelper(std::declval< const std::decay_t< Op > * >())) |
| Traits class for checking if Op is derived from MultilinearOperator<k> | |
| template<class Op > | |
| using | IsSumOperator = Impl::IsSumOperatorHelper< std::decay_t< Op > > |
| Traits class for checking if Op is a SumOperator. | |
| template<class Op > | |
| using | IsOperatorOrSumOperator = std::disjunction< IsOperator< Op >, IsSumOperator< Op > > |
| Traits class for checking if Op is either a SumOperator or derived from MultilinearOperator<k> | |
| template<class CT , int dimension> | |
| using | MultipleQuadratureCacheManager = MultipleQuadratureCache< CacheManager< CT, dimension > > |
| Template alias for MultipleQuadratureCache<CacheManager<CT, dimension>> | |
Functions | |
| template<class MultilinearOperator , class Domain > requires isOperatorOrSumOperator_v<MultilinearOperator> && IsDomain<Domain> | |
| ::value auto | integrate (MultilinearOperator op, const Domain &domain) |
| Integrate a k-linear operator to obtain a k-linear form. | |
| template<class MultilinearOperator , std::enable_if_t< isOperatorOrSumOperator_v< MultilinearOperator >, int > = 0> | |
| auto | integrate (MultilinearOperator op) |
| Integrate a k-linear operator to obtain a k-linear form. | |
| template<class L , class R > | |
| auto | operator+ (const L &l, const R &r) |
| Create the sum of two operators. | |
| template<class Op , std::enable_if_t< isOperatorOrSumOperator_v< Op >, int > = 0> | |
| auto | operator- (const Op &op) |
| Negate an operator. | |
| template<class L , class R > | |
| auto | operator- (const L &l, const R &r) |
| Create the difference of two operators. | |
| template<class Op , class L , class R , std::enable_if_t< isOperatorOrSumOperator_v< L > or isOperatorOrSumOperator_v< R >, int > = 0, class = std::void_t<decltype(Impl::productImpl(std::declval<Op>(), std::declval<L>(), std::declval<R>()))>> | |
| auto | product (const Op &op, const L &l, const R &r) |
| Generic exterior product of two multilinear operators. | |
| template<class L , class R , std::enable_if_t< isOperatorOrSumOperator_v< L > or isOperatorOrSumOperator_v< R >, int > = 0, class = std::void_t<decltype(product(std::declval<LocalOperators::MultOp>(), std::declval<L>(), std::declval<R>()))>> | |
| auto | operator* (const L &l, const R &r) |
| Exterior product of two multilinear operators based on pointwise multiplication. | |
| template<class L , class R , std::enable_if_t< isOperatorOrSumOperator_v< L > or isOperatorOrSumOperator_v< R >, int > = 0, class = std::void_t<decltype(product(std::declval<LocalOperators::DotOp>(), std::declval<L>(), std::declval<R>()))>> | |
| auto | dot (const L &l, const R &r) |
| Exterior product of two multilinear operators based on pointwise dot-product. | |
| template<class OuterOp , class InnerOp , std::enable_if_t< isOperatorOrSumOperator_v< InnerOp >, int > = 0, std::enable_if_t< Dune::IsCallable< OuterOp(typename InnerOp::Range)>::value, int > = 0> | |
| auto | compose (const OuterOp &outerOp, const InnerOp &innerOp) |
| Generic composition of a multilinear operators with a pointwise outer operator. | |
| template<class Op > | |
| auto | transpose (const Op &op) |
| Transform an operator by pointwise matrix transposition. | |
| template<class Op > | |
| auto | symmetrize (const Op &op) |
| Transform an operator by pointwise matrix symmetrization. | |
| template<class Op > | |
| auto | trace (const Op &op) |
| Transform an operator by pointwise computation of the matrix trace. | |
| template<class Op > | |
| auto | inv (const Op &op) |
| Transform an operator by pointwise computation of the matrix inverse. | |
| template<class L , class R , std::enable_if_t< isOperatorOrSumOperator_v< L > or isOperatorOrSumOperator_v< R >, int > = 0, class = std::void_t<decltype(product(std::declval<LocalOperators::MultOp>(), std::declval<L>(), inv(std::declval<R>())))>> | |
| auto | operator/ (const L &l, const R &r) |
| Exterior product of a multilinear operator with the pointwise inverse of 0-linear operator. | |
| template<class Basis > | |
| auto | testFunction (const Basis &basis) |
| Create unary identity operator on test function space. | |
| template<class Basis > | |
| auto | testFunction (const Basis &basis, NonAffineFamily tag) |
| Create unary identity operator on test function space. | |
| template<class Basis , class... Args, std::enable_if_t<(sizeof...(Args)>0), int > = 0> | |
| auto | testFunction (const Basis &basis, Args &&... args) |
| Create unary identity operator on test function space. | |
| template<class Basis > | |
| auto | trialFunction (const Basis &basis) |
| Create unary identity operator on trial function space. | |
| template<class Basis > | |
| auto | trialFunction (const Basis &basis, NonAffineFamily tag) |
| Create unary identity operator on trial function space. | |
| template<class Basis , class... Args, std::enable_if_t<(sizeof...(Args)>0), int > = 0> | |
| auto | trialFunction (const Basis &basis, Args &&... args) |
| Create unary identity operator on trial function space. | |
| template<class Op , std::enable_if_t< isOperatorOrSumOperator_v< Op > and(Op::arity<=1), int > = 0> | |
| auto | outside (const Op &op) |
| Construct outside version of a given operator. | |
| template<class Op , std::enable_if_t< isOperatorOrSumOperator_v< Op > and(Op::arity<=1), int > = 0> | |
| auto | avg (const Op &op) |
| Construct intersection average of a given operator. | |
| template<class Op , std::enable_if_t< isOperatorOrSumOperator_v< Op > and(Op::arity<=1), int > = 0> | |
| auto | jump (const Op &op) |
| Construct intersection jump of a given operator. | |
| template<class GridView > | |
| auto | meshSize (const GridView &gridView) |
| Construct mesh size operator. | |
| template<class GridView > | |
| auto | meshSize () |
| Construct mesh size operator. | |
| template<class GridView > | |
| auto | faceNormal (const GridView &gridView) |
| Construct operator representing the face normals. | |
| template<class GridView > | |
| auto | faceNormal () |
| Construct operator representing the face normals. | |
| template<class Op , class V , std::enable_if_t< isOperatorOrSumOperator_v< Op >, int > = 0> | |
| auto | bindToCoefficients (const Op &op, V &&vector) |
| Bind a linear operator to a coefficient vector. | |
| template<class Op , class V , std::enable_if_t< isOperatorOrSumOperator_v< Op >, int > = 0, std::enable_if_t< not isOperatorOrSumOperator_v< std::decay_t< V > >, int > = 0> | |
| auto | operator| (const Op &op, V &&v) |
| Bind a linear operator to a coefficient vector. | |
| template<class B , class TP , std::size_t argIndex> | |
| auto | jacobian (const FEFunctionOperator< B, TP, argIndex > &op) |
| Obtain the jacobian of an operator. | |
| template<class B , class TP , std::size_t argIndex> | |
| auto | divergence (const FEFunctionOperator< B, TP, argIndex > &op) |
| Obtain the divergence of an operator. | |
| template<class B , class TP , std::size_t argIndex> | |
| auto | curl (const FEFunctionOperator< B, TP, argIndex > &op) |
| Obtain the curl of an operator. | |
| template<class... Ops> requires requires(const Ops&... ops) { SumOperator(jacobian(ops)...); } | |
| auto | jacobian (const SumOperator< Ops... > &op) |
| Obtain the jacobian of a sum of operators. | |
| template<class... Ops> requires requires(const Ops&... ops) { SumOperator(jacobian(ops)...); } | |
| auto | divergence (const SumOperator< Ops... > &op) |
| Obtain the divergence of a sum of operators. | |
| template<class... Ops> requires requires(const Ops&... ops) { SumOperator(curl(ops)...); } | |
| auto | curl (const SumOperator< Ops... > &op) |
| Obtain the curl of a sum of operators. | |
| template<class Op > requires requires {Fufem::Forms::transpose(jacobian(op));} | |
| auto | gradient (const Op &op) |
| Obtain the gradient of an operator. | |
| template<class Op > requires requires {Fufem::Forms::transpose(jacobian(op));} | |
| auto | grad (const Op &op) |
| Obtain the gradient of an operator. | |
| template<class Op > requires requires {divergence(op);} | |
| auto | div (const Op &op) |
| Obtain the divergence of an operator. | |
| template<class Op > requires requires {curl(op);} | |
| auto | rot (const Op &op) |
| Obtain the curl of an operator. | |
| template<class Op > requires requires {grad(op);} | |
| auto | D (const Op &op, std::size_t k) |
| Obtain the i-th partial derivative of an operator. | |
Variables | |
| template<class Op > | |
| constexpr bool | isOperator_v = IsOperator<Op>::value |
| Short cut for IsOperator<Op>::value. | |
| template<class Op > | |
| constexpr bool | isSumOperator_v = IsSumOperator<Op>::value |
| Short cut for IsSumOperator<Op>::value. | |
| template<class Op > | |
| constexpr bool | isOperatorOrSumOperator_v = IsOperatorOrSumOperator<Op>::value |
| Short cut for IsOperatorOrSumOperator<Op>::value. | |
| constexpr Bulk | bulk = {} |
| Object representing the full grid view as integration domain. | |
| constexpr Boundary | boundary = {} |
| Object representing the full grid view boundary as integration domain. | |
| constexpr Skeleton | skeleton = {} |
| Object representing the full grid view skeleton as integration domain. | |
