|
dune-functions 2.8.0
|
Loading...
Searching...
No Matches
raviartthomasbasis.hh
Go to the documentation of this file.
99 constexpr static bool hasFixedElementType = Capabilities::hasSingleGeometryType<typename GV::Grid>::v;
102 using SimplexFiniteElement = typename RaviartThomasSimplexLocalInfo<dim, D, R, k>::FiniteElement;
106 using T = LocalBasisTraits<D, dim, FieldVector<D,dim>, R, dim, FieldVector<R,dim>, FieldMatrix<D,dim,dim> >;
108 constexpr static unsigned int topologyId = Capabilities::hasSingleGeometryType<typename GV::Grid>::topologyId; // meaningless if hasFixedElementType is false
136 variants_.resize(numVariants(GeometryTypes::simplex(dim)) + numVariants(GeometryTypes::cube(dim)));
218 // Currently there are some unresolved bugs with hybrid grids and higher order Raviart-Thomas elements
220 DUNE_THROW(Dune::NotImplemented, "Raviart-Thomas basis with index k>0 is only implemented for grids with a single element type");
224 DUNE_THROW(Dune::NotImplemented, "Raviart-Thomas elements are only implemented for grids with simplex or cube elements.");
319 DUNE_THROW(Dune::NotImplemented, "RaviartThomasBasis only implemented for cube and simplex elements.");
330 DUNE_THROW(Dune::NotImplemented, "Grid contains elements not supported for the RaviartThomasBasis");
360 using FiniteElement = Impl::GlobalValuedLocalFiniteElement<Impl::ContravariantPiolaTransformator,
448using RaviartThomasBasis = DefaultGlobalBasis<RaviartThomasPreBasis<GV, k, FlatMultiIndex<std::size_t>> >;
auto raviartThomas()
Create a pre-basis factory that can create a Raviart-Thomas pre-basis.
Definition raviartthomasbasis.hh:427
int size() const
iterator end()
size_type dim() const
#define DUNE_THROW(E, m)
constexpr Mantissa power(Mantissa m, Exponent p)
IteratorRange<... > intersections(const GV &gv, const Entity &e)
IteratorRange<... > elements(const GV &gv)
MCMGLayout mcmgElementLayout()
GeometryType
constexpr bool isCube() const
size_type size() const
unsigned int index() const
unsigned int codim() const
unsigned int subEntity() const
static const bool v
static const unsigned int topologyId
Global basis for given pre-basis.
Definition defaultglobalbasis.hh:47
Definition nodes.hh:184
Definition raviartthomasbasis.hh:352
typename Impl::RaviartThomasLocalFiniteElementMap< GV, dim, double, k > FiniteElementMap
Definition raviartthomasbasis.hh:359
void bind(const Element &e)
Bind to element.
Definition raviartthomasbasis.hh:385
Impl::GlobalValuedLocalFiniteElement< Impl::ContravariantPiolaTransformator, typename FiniteElementMap::FiniteElement, Element > FiniteElement
Definition raviartthomasbasis.hh:362
typename GV::template Codim< 0 >::Entity Element
Definition raviartthomasbasis.hh:358
const Element * element_
Definition raviartthomasbasis.hh:395
const FiniteElement & finiteElement() const
Return the LocalFiniteElement for the element we are bound to.
Definition raviartthomasbasis.hh:379
RaviartThomasNode(const FiniteElementMap *finiteElementMap)
Definition raviartthomasbasis.hh:364
const Element & element() const
Return current element, throw if unbound.
Definition raviartthomasbasis.hh:370
FiniteElement finiteElement_
Definition raviartthomasbasis.hh:394
const FiniteElementMap * finiteElementMap_
Definition raviartthomasbasis.hh:396
Definition raviartthomasbasis.hh:193
Node makeNode() const
Create tree node.
Definition raviartthomasbasis.hh:255
std::array< size_t, dim+1 > codimOffset_
Definition raviartthomasbasis.hh:341
void update(const GridView &gv)
Definition raviartthomasbasis.hh:247
void initializeIndices()
Definition raviartthomasbasis.hh:233
RaviartThomasPreBasis(const GridView &gv)
Constructor for a given grid view object.
Definition raviartthomasbasis.hh:214
std::array< int, dim+1 > dofsPerCodim_
Definition raviartthomasbasis.hh:344
It indices(const Node &node, It it) const
Maps from subtree index set [0..size-1] to a globally unique multi index in global basis.
Definition raviartthomasbasis.hh:312
GV GridView
The grid view that the FE space is defined on.
Definition raviartthomasbasis.hh:200
FiniteElementMap finiteElementMap_
Definition raviartthomasbasis.hh:342
size_type dimension() const
Definition raviartthomasbasis.hh:287
size_type size() const
Definition raviartthomasbasis.hh:274
GridView gridView_
Definition raviartthomasbasis.hh:340
size_type maxNodeSize() const
Definition raviartthomasbasis.hh:292
IndexSet makeIndexSet() const
Create tree node index set.
Definition raviartthomasbasis.hh:269
Impl::DefaultNodeIndexSet< RaviartThomasPreBasis > IndexSet
Type of created tree node index set.
Definition raviartthomasbasis.hh:206
const GridView & gridView() const
Obtain the grid view that the basis is defined on.
Definition raviartthomasbasis.hh:241
size_type size(const SizePrefix prefix) const
Return number possible values for next position in multi index.
Definition raviartthomasbasis.hh:280
MI MultiIndex
Type used for global numbering of the basis vectors.
Definition raviartthomasbasis.hh:209
T find(T... args)
T max(T... args)
T size(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8