OGS
ElementTraitsLagrange.h File Reference

Detailed Description

Definition in file ElementTraitsLagrange.h.

Include dependency graph for ElementTraitsLagrange.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  NumLib::detail::LowerOrderShapeFunctionOrSame< ShapeFunction, Enabled >
 
struct  NumLib::detail::LowerOrderShapeFunctionOrSame< ShapeFunction, std::void_t< typename NumLib::LowerDim< ShapeFunction >::type > >
 
struct  NumLib::detail::ShapeFunctionTraits< ShapeFunction_ >
 

Namespaces

namespace  NumLib
 
namespace  NumLib::detail
 

Macros

#define OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE(ELEMENT, SHAPE_FUNCTION)
 

Typedefs

using NumLib::AllElementTraitsLagrange
 

Functions

 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Point, ShapePoint1)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Line, ShapeLine2)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Line3, ShapeLine3)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Quad, ShapeQuad4)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Quad8, ShapeQuad8)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Quad9, ShapeQuad9)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Hex, ShapeHex8)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Hex20, ShapeHex20)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Tri, ShapeTri3)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Tri6, ShapeTri6)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Tet, ShapeTet4)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Tet10, ShapeTet10)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Prism, ShapePrism6)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Prism15, ShapePrism15)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Pyramid, ShapePyra5)
 
 NumLib::OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE (Pyramid13, ShapePyra13)
 

Macro Definition Documentation

◆ OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE

#define OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE ( ELEMENT,
SHAPE_FUNCTION )
Value:
template <> \
struct ElementTraitsLagrange<MeshLib::ELEMENT> \
: detail::ShapeFunctionTraits<NumLib::SHAPE_FUNCTION> \
{ \
using Element = MeshLib::ELEMENT; \
static_assert( \
std::is_same_v<Element, typename ShapeFunction::MeshElement>); \
}

Definition at line 66 of file ElementTraitsLagrange.h.

66#define OGS_SPECIALIZE_ELEMENT_TRAITS_LAGRANGE(ELEMENT, SHAPE_FUNCTION) \
67 template <> \
68 struct ElementTraitsLagrange<MeshLib::ELEMENT> \
69 : detail::ShapeFunctionTraits<NumLib::SHAPE_FUNCTION> \
70 { \
71 using Element = MeshLib::ELEMENT; \
72 static_assert( \
73 std::is_same_v<Element, typename ShapeFunction::MeshElement>); \
74 }