DUNE-FEM (unstable)

metatwistutility.hh
1#ifndef DUNE_FEM_METATWISTUTILITY_HH
2#define DUNE_FEM_METATWISTUTILITY_HH
3
4#include <cassert>
5
6#include <dune/fem/quadrature/caching/twistutility.hh>
7
8namespace Dune
9{
10
11 namespace Fem
12 {
13
20 template< class HostTwistUtility >
22 {
23 typedef HostTwistUtility HostTwistUtilityType;
24 typedef typename HostTwistUtilityType :: GridType GridType;
25
27 template< class Intersection >
28 static int twistInSelf ( const GridType & grid, const Intersection & intersection )
29 {
30 return HostTwistUtilityType::twistInSelf( grid, intersection.impl().hostIntersection() );
31 }
32
34 template< class Intersection >
35 static int twistInNeighbor ( const GridType & grid , const Intersection & intersection )
36 {
37 return HostTwistUtilityType::twistInNeighbor( grid, intersection.impl().hostIntersection() );
38 }
39
41 template< class Intersection >
42 static GeometryType elementGeometry ( const Intersection &intersection, const bool inside )
43 {
44 return HostTwistUtilityType::elementGeometry( intersection.impl().hostIntersection(), inside );
45 }
46 };
47
48 } // namespace Fem
49
50} // namespace Dune
51
52#endif // #ifndef DUNE_FEM_METATWISTUTILITY_HH
Unique label for each type of entities that can occur in DUNE grids.
Definition: type.hh:114
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition: intersection.hh:164
Implementation & impl()
access to the underlying implementation
Definition: intersection.hh:178
Dune namespace.
Definition: alignedallocator.hh:13
MetaTwistUtility forwards the twist calls to the TwistUtility of the underlying HostTwistUtility.
Definition: metatwistutility.hh:22
static int twistInNeighbor(const GridType &grid, const Intersection &intersection)
return 0 for outer face
Definition: metatwistutility.hh:35
static GeometryType elementGeometry(const Intersection &intersection, const bool inside)
return geometry type of inside or outside entity
Definition: metatwistutility.hh:42
static int twistInSelf(const GridType &grid, const Intersection &intersection)
return 0 for inner face
Definition: metatwistutility.hh:28
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Jul 27, 22:29, 2024)