![]() |
Dune-Fufem 2.11
|
Loading...
Searching...
No Matches
unaryoperators.hh
Go to the documentation of this file.
111 using CacheManager = Dune::Fufem::Forms::CacheManager<typename Element::Geometry::ctype, Element::Geometry::mydimension>;
153 cacheManager.template getCache<TreeCache>(cacheIndex_)[subspaceBasis_.prefixPath()].setNonAffine();
263 void bind(const Intersection& intersection, const Element& element, const Element& otherElement)
321 return FEFunctionOperator<Basis, decltype(childTP), argIndex>(Base::subspaceBasis_.rootBasis(), childTP, Base::isAffine_);
355 Dune::FieldMatrix<typename LeafLBTraits::RangeFieldType, Node::degree(), LeafLBTraits::dimDomain>>;
362 using Range = typename Impl::GlobalJacobianTraits<ReferenceJacobian, GeometryJacobianInverse>::type;
391 void bind(const Intersection& intersection, const Element& element, const Element& otherElement)
436 const typename Base::LocalOperator::LeafNodeCache::GlobalJacobianCache* globalJacobianCache_ = nullptr;
449 return FEFunctionJacobianOperator<Basis, decltype(childTP), argIndex>(Base::subspaceBasis_.rootBasis(), childTP, Base::isAffine_);
514 void bind(const Intersection& intersection, const Element& element, const Element& otherElement)
529 using LocalBasisTraits = typename Base::LeafNode::FiniteElement::Traits::LocalBasisType::Traits;
568 const typename Base::LocalOperator::LeafNodeCache::GlobalJacobianCache* globalJacobianCache_ = nullptr;
constexpr index_constant< 0 > _0
int size() const
std::ptrdiff_t index() const
size_t() const
decltype(auto) child(Node &&node, TreePath< Indices... > treePath)
RF RangeFieldType
A class for managing caches of different types.
Definition shapefunctioncache.hh:615
size_type registerCache(UniqueCacheId uniqueCacheId, Cache &&cache)
Register a new cache.
Definition shapefunctioncache.hh:753
Definition unaryoperators.hh:494
void bindToCaches(CacheManager &cacheManager, OutsideCacheManager &... outsideCacheManager)
Definition unaryoperators.hh:520
void bind(const Element &)
Definition unaryoperators.hh:506
void bind(const Intersection &intersection, const Element &element, const Element &otherElement)
Definition unaryoperators.hh:514
typename Base::LocalOperator::Intersection Intersection
Definition unaryoperators.hh:502
typename Base::LocalOperator::CacheManager CacheManager
Definition unaryoperators.hh:503
typename FEFunctionDivergenceOperator::Range Range
Definition unaryoperators.hh:504
auto operator()(std::size_t index) const
Definition unaryoperators.hh:525
Linear map representing the divergenc of the elements of an FE-space.
Definition unaryoperators.hh:474
typename Base::Element Element
Definition unaryoperators.hh:481
friend LocalOperator localOperator(const FEFunctionDivergenceOperator &op)
Definition unaryoperators.hh:571
FEFunctionDivergenceOperator(const Base &other)
Definition unaryoperators.hh:489
FEFunctionDivergenceOperator< B, TP, k > rebindArgIndex() const
Get a copy of this operator bound to another argument.
Definition unaryoperators.hh:578
std::conditional_t< Dune::Fufem::Impl::Concept::LeafTreeNode< Node >, typename LeafLBTraits::RangeFieldType, typename LeafLBTraits::JacobianType::block_type > Range
Definition unaryoperators.hh:485
Definition unaryoperators.hh:371
void bind(const Element &)
Definition unaryoperators.hh:383
void bind(const Intersection &intersection, const Element &element, const Element &otherElement)
Definition unaryoperators.hh:391
typename Base::LocalOperator::Intersection Intersection
Definition unaryoperators.hh:379
typename Base::LocalOperator::CacheManager CacheManager
Definition unaryoperators.hh:380
void bindToCaches(CacheManager &cacheManager, OutsideCacheManager &... outsideCacheManager)
Definition unaryoperators.hh:397
auto operator()(std::size_t index) const
Definition unaryoperators.hh:402
typename FEFunctionJacobianOperator::Range Range
Definition unaryoperators.hh:381
Linear map representing the jacobians of the elements of an FE-space.
Definition unaryoperators.hh:347
typename Impl::GlobalJacobianTraits< ReferenceJacobian, GeometryJacobianInverse >::type Range
Definition unaryoperators.hh:362
FEFunctionJacobianOperator(const Base &other)
Definition unaryoperators.hh:366
FEFunctionJacobianOperator< B, TP, k > rebindArgIndex() const
Get a copy of this operator bound to another argument.
Definition unaryoperators.hh:454
friend LocalOperator localOperator(const FEFunctionJacobianOperator &op)
Definition unaryoperators.hh:439
auto childOperator(Dune::index_constant< i > childIndex) const
Definition unaryoperators.hh:445
typename Base::Element Element
Definition unaryoperators.hh:361
Definition unaryoperators.hh:243
typename Base::LocalOperator::Intersection Intersection
Definition unaryoperators.hh:251
void bind(const Element &)
Definition unaryoperators.hh:255
void bind(const Intersection &intersection, const Element &element, const Element &otherElement)
Definition unaryoperators.hh:263
typename Base::LocalOperator::CacheManager CacheManager
Definition unaryoperators.hh:252
void bindToCaches(CacheManager &cacheManager, OutsideCacheManager &... outsideCacheManager)
Definition unaryoperators.hh:269
auto operator()(std::size_t index) const
Definition unaryoperators.hh:274
typename FEFunctionOperator::Range Range
Definition unaryoperators.hh:253
Linear map representing the elements of an FE-space.
Definition unaryoperators.hh:223
auto childOperator(Dune::index_constant< i > childIndex) const
Definition unaryoperators.hh:317
typename Base::Element Element
Definition unaryoperators.hh:230
FEFunctionOperator< B, TP, k > rebindArgIndex() const
Get a copy of this operator bound to another argument.
Definition unaryoperators.hh:326
FEFunctionOperator(const Base &other)
Definition unaryoperators.hh:238
friend LocalOperator localOperator(const FEFunctionOperator &op)
Definition unaryoperators.hh:311
std::conditional_t< Dune::Fufem::Impl::Concept::LeafTreeNode< Node >, typename LeafLBTraits::RangeType, Dune::FieldVector< typename LeafLBTraits::RangeFieldType, Node::degree()> > Range
Definition unaryoperators.hh:234
Definition unaryoperators.hh:101
bool isAffine_
Definition unaryoperators.hh:177
SubspaceBasis subspaceBasis_
Definition unaryoperators.hh:171
void unbind()
Definition unaryoperators.hh:127
LocalOperator(const SubspaceBasis &subspaceBasis, bool isAffine)
Definition unaryoperators.hh:113
void registerOutsideCaches(CacheManager &cacheManager)
Definition unaryoperators.hh:156
LocalOperator(const FEOperatorBase &op)
Definition unaryoperators.hh:123
const LocalView * localView_
Definition unaryoperators.hh:174
typename FEOperatorBase::Element Element
Definition unaryoperators.hh:109
void registerOutsideLocalViews(const LV &... lvs)
Definition unaryoperators.hh:145
void registerCaches(CacheManager &cacheManager)
Definition unaryoperators.hh:148
auto quadratureRuleKey() const
Definition unaryoperators.hh:130
ShapeFunctionCache< Tree > TreeCache
Definition unaryoperators.hh:104
QuadratureRuleKey quadratureRuleKey_
Definition unaryoperators.hh:175
auto & leafNodeCache(CacheManager &cacheManager)
Definition unaryoperators.hh:166
std::size_t cacheIndex_
Definition unaryoperators.hh:176
void registerLocalViews(const LV &... lvs)
Definition unaryoperators.hh:136
const LeafNode * leafNode_
Definition unaryoperators.hh:173
const LeafTreePath leafTreePath_
Definition unaryoperators.hh:172
const LeafNode & leafNode() const
Definition unaryoperators.hh:161
typename FEOperatorBase::Intersection Intersection
Definition unaryoperators.hh:110
Base class of elementary differential operators on an FE-space.
Definition unaryoperators.hh:62
typename Dune::TypeTree::ChildForTreePath< Tree, TP > Node
Definition unaryoperators.hh:67
typename B::LocalView LocalView
Definition unaryoperators.hh:65
SubspaceBasis subspaceBasis_
Definition unaryoperators.hh:206
typename Dune::TypeTree::ChildForTreePath< Tree, LeafTreePath > LeafNode
Definition unaryoperators.hh:86
typename Basis::LocalView::Element Element
Definition unaryoperators.hh:92
decltype(leafTreePath(std::declval< TP >())) LeafTreePath
Definition unaryoperators.hh:85
FEOperatorBase(const Basis &basis, const TreePath &treePath, bool isAffine=true)
Definition unaryoperators.hh:95
typename Dune::Functions::SubspaceBasis< B, TP > SubspaceBasis
Definition unaryoperators.hh:68
static auto leafTreePath(const TP &tp)
Definition unaryoperators.hh:76
typename Basis::GridView::Intersection Intersection
Definition unaryoperators.hh:93
FEOperatorBase< B, TP, k > rebindArgIndex() const
Get a copy of this operator bound to another argument.
Definition unaryoperators.hh:200
typename LocalView::Tree Tree
Definition unaryoperators.hh:66
A hierarchic cache for storing shape function evaluations for a tree.
Definition shapefunctioncache.hh:107
Base class for unary multilinear operator implementations.
Definition baseclass.hh:91
Objects of this class are used to uniquely identifies a cache.
Definition shapefunctioncache.hh:569
QuadratureRuleKey derivative() const
Definition quadraturerulecache.hh:154
T forward(T... args)
auto div(const Op &op)
Obtain the divergence of an operator.
Definition userfunctions.hh:1201
Definition baseclass.hh:22
const T & asNumber(const T &t)
Forward given value as number.
Definition asnumber.hh:23
STL namespace.
T tie(T... args)
This header provides fallback implementations for dune-typetree<2.11.
