Go to the documentation of this file.
2 #ifndef DUNE_PDELAB_CONSTRAINTS_RAVIARTTHOMAS0_HH
3 #define DUNE_PDELAB_CONSTRAINTS_RAVIARTTHOMAS0_HH
5 #include<dune/typetree/typetree.hh>
7 #include<dune/common/exceptions.hh>
8 #include<dune/geometry/referenceelements.hh>
9 #include<dune/geometry/type.hh>
12 #include <dune/typetree/typetree.hh>
19 :
public TypeTree::LeafNode
35 template<
typename P,
typename IG,
typename LFS,
typename T>
36 void boundary (
const P&
p,
const IG&
ig,
const LFS& lfs, T& trafo)
const
38 const int face =
ig.indexInInside();
39 auto face_refelem = referenceElement(
ig.geometry());
40 const auto ip = face_refelem.position(0,0);
41 if (
p.isNeumann(
ig,ip)) {
42 typename T::RowType empty;
43 trafo[lfs.dofIndex(face)]=empty;
51 #endif // DUNE_PDELAB_CONSTRAINTS_RAVIARTTHOMAS0_HH
const P & p
Definition: constraints.hh:148
void boundary(const P &p, const IG &ig, const LFS &lfs, T &trafo) const
boundary constraints
Definition: raviartthomas0.hh:36
Neumann Constraints construction, as needed for RT0.
Definition: raviartthomas0.hh:18
For backward compatibility – Do not use this!
Definition: adaptivity.hh:28
@ doProcessor
Definition: raviartthomas0.hh:23
@ doSkeleton
Definition: raviartthomas0.hh:24
@ doBoundary
Definition: raviartthomas0.hh:22
@ doVolume
Definition: raviartthomas0.hh:25
const IG & ig
Definition: constraints.hh:149