2#ifndef DUNE_PDELAB_FINITEELEMENTMAP_BDM1SIMPLEX2DFEM_HH
3#define DUNE_PDELAB_FINITEELEMENTMAP_BDM1SIMPLEX2DFEM_HH
6#include <dune/localfunctions/brezzidouglasmarini/brezzidouglasmarini1simplex2d.hh>
7#include "finiteelementmap.hh"
14 template<
typename GV,
typename D,
typename R>
17 LocalFiniteElementMapTraits< Dune::BDM1Simplex2DLocalFiniteElement<D,R> >,
18 BDM1Simplex2DLocalFiniteElementMap<GV,D,R> >
21 typedef typename GV::IndexSet IndexSet;
32 : gv(gv_), is(gv_.indexSet()), orient(gv_.size(0))
35 for (
int i = 0; i < 8; i++)
43 for (
const auto& cell : elements(gv)) {
44 unsigned int myId = is.template index<0>(cell);
47 for (
const auto& intersection : intersections(gv,cell)) {
48 if (intersection.neighbor()
49 && is.template index<0>(intersection.outside()) > myId)
51 orient[myId] |= 1 << intersection.indexInInside();
58 template<
class EntityType>
61 return variant[orient[is.index(e)]];
64 static constexpr bool fixedSize()
69 static constexpr bool hasDOFs(
int codim)
74 static constexpr std::size_t size(GeometryType
gt)
85 static constexpr std::size_t maxLocalSize()
94 std::vector<unsigned char> orient;
First order Brezzi-Douglas-Marini shape functions on triangles.
Definition: brezzidouglasmarini1simplex2d.hh:28
Definition: bdm1simplex2dfem.hh:19
BDM1Simplex2DLocalFiniteElementMap(const GV &gv_)
Use when Imp has a standard constructor.
Definition: bdm1simplex2dfem.hh:31
const Traits::FiniteElementType & find(const EntityType &e) const
get local basis functions for entity
Definition: bdm1simplex2dfem.hh:59
static constexpr int dimension
The dimension of the finite elements returned by this map.
Definition: bdm1simplex2dfem.hh:28
LocalFiniteElementMapTraits< FE > Traits
export type of the signature
Definition: bdm1simplex2dfem.hh:25
interface for a finite element map
Definition: finiteelementmap.hh:43
bool gt(const T &first, const T &second, typename EpsilonType< T >::Type epsilon)
test if first greater than second
Definition: float_cmp.cc:158
Dune namespace.
Definition: alignedallocator.hh:13
T FiniteElementType
Type of finite element from local functions.
Definition: finiteelementmap.hh:30
collect types exported by a finite element map
Definition: finiteelementmap.hh:38