2 #ifndef DUNE_PDELAB_FINITEELEMENTMAP_RT0SIMPLEX2DFEM_HH
3 #define DUNE_PDELAB_FINITEELEMENTMAP_RT0SIMPLEX2DFEM_HH
6 #include<dune/localfunctions/raviartthomas/raviartthomas02d.hh>
15 template<
typename GV,
typename D,
typename R>
18 RT0Simplex2DLocalFiniteElementMap<GV,D,R> >
20 typedef Dune::RT02DLocalFiniteElement<D,R> FE;
21 typedef typename GV::IndexSet IndexSet;
29 : gv(gv_), is(gv_.indexSet()), orient(gv_.
size(0))
32 for (
int i=0; i<8; i++)
36 typedef typename GV::Traits::template Codim<0>::Iterator ElementIterator;
37 typedef typename GV::IntersectionIterator IntersectionIterator;
40 for (ElementIterator it = gv.template begin<0>(); it!=gv.template end<0>(); ++it)
42 typename IndexSet::IndexType myid = is.template index<0>(*it);
45 IntersectionIterator endit = gv.iend(*it);
46 for (IntersectionIterator iit = gv.ibegin(*it); iit!=endit; ++iit)
49 if (is.template index<0>(*(iit->outside()))>myid)
50 orient[myid] |= 1<<iit->indexInInside();
56 template<
class EntityType>
59 return variant[orient[is.template index<0>(
e)]];
67 std::size_t
size(GeometryType gt)
const
69 return gt.isLine() ? 1 : 0;
81 std::vector<unsigned char> orient;
87 #endif // DUNE_PDELAB_FINITEELEMENTMAP_RT0SIMPLEX2DFEM_HH
LocalFiniteElementMapTraits< FE > Traits
export type of the signature
Definition: rt0simplex2dfem.hh:25
bool fixedSize() const
Definition: rt0simplex2dfem.hh:62
Definition: rt0simplex2dfem.hh:16
interface for a finite element map
Definition: finiteelementmap.hh:42
T FiniteElementType
Type of finite element from local functions.
Definition: finiteelementmap.hh:30
RT0Simplex2DLocalFiniteElementMap(const GV &gv_)
Use when Imp has a standard constructor.
Definition: rt0simplex2dfem.hh:28
std::size_t size(GeometryType gt) const
Definition: rt0simplex2dfem.hh:67
const Traits::FiniteElementType & find(const EntityType &e) const
get local basis functions for entity
Definition: rt0simplex2dfem.hh:57
std::size_t maxLocalSize() const
Definition: rt0simplex2dfem.hh:72
collect types exported by a finite element map
Definition: finiteelementmap.hh:38
const E & e
Definition: interpolate.hh:172