Intrepid2
Intrepid2_Types.hpp File Reference

Contains definitions of custom data types in Intrepid2. More...

#include <Kokkos_Core.hpp>
#include <Kokkos_DynRankView.hpp>
#include <stdexcept>

Go to the source code of this file.

Classes

class  Intrepid2::Parameters
 Define constants. More...

Typedefs

typedef int Intrepid2::ordinal_type
typedef size_t Intrepid2::size_type

Enumerations

enum  EPolyType {
  POLYTYPE_GAUSS =0 , POLYTYPE_GAUSS_RADAU_LEFT , POLYTYPE_GAUSS_RADAU_RIGHT , POLYTYPE_GAUSS_LOBATTO ,
  POLYTYPE_MAX
}
enum  ECoordinates {
  COORDINATES_CARTESIAN =0 , COORDINATES_POLAR , COORDINATES_CYLINDRICAL , COORDINATES_SPHERICAL ,
  COORDINATES_MAX
}
enum  ENorm {
  NORM_ONE = 0 , NORM_TWO , NORM_INF , NORM_FRO ,
  NORM_MAX
}
enum  EOperator : int {
  OPERATOR_VALUE = 0 , OPERATOR_GRAD , OPERATOR_CURL , OPERATOR_DIV ,
  OPERATOR_D1 , OPERATOR_D2 , OPERATOR_D3 , OPERATOR_D4 ,
  OPERATOR_D5 , OPERATOR_D6 , OPERATOR_D7 , OPERATOR_D8 ,
  OPERATOR_D9 , OPERATOR_D10 , OPERATOR_Dn , OPERATOR_MAX = OPERATOR_Dn
}
enum  EFunctionSpace {
  FUNCTION_SPACE_HGRAD = 0 , FUNCTION_SPACE_HCURL = 1 , FUNCTION_SPACE_HDIV = 2 , FUNCTION_SPACE_HVOL = 3 ,
  FUNCTION_SPACE_VECTOR_HGRAD = 4 , FUNCTION_SPACE_TENSOR_HGRAD = 5 , FUNCTION_SPACE_MAX
}
enum  EDiscreteSpace { DISCRETE_SPACE_COMPLETE = 0 , DISCRETE_SPACE_INCOMPLETE , DISCRETE_SPACE_BROKEN , DISCRETE_SPACE_MAX }
enum  EPointType { POINTTYPE_EQUISPACED = 0 , POINTTYPE_WARPBLEND , POINTTYPE_GAUSS , POINTTYPE_DEFAULT }
enum  EBasis {
  BASIS_FEM_DEFAULT = 0 , BASIS_FEM_HIERARCHICAL , BASIS_FEM_LAGRANGIAN , BASIS_FVD_DEFAULT ,
  BASIS_FVD_COVOLUME , BASIS_FVD_MIMETIC , BASIS_MAX
}

Functions

template<typename ValueType>
KOKKOS_FORCEINLINE_FUNCTION ValueType Intrepid2::epsilon ()
template<>
KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::epsilon< double > ()
template<>
KOKKOS_FORCEINLINE_FUNCTION float Intrepid2::epsilon< float > ()
KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::epsilon ()
template<typename ValueType>
KOKKOS_FORCEINLINE_FUNCTION ValueType Intrepid2::tolerence ()
KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::tolerence ()
template<typename ValueType>
KOKKOS_FORCEINLINE_FUNCTION ValueType Intrepid2::threshold ()
KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::threshold ()
KOKKOS_INLINE_FUNCTION const char * Intrepid2::EPolyTypeToString (const EPolyType polytype)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidPolyType (const EPolyType polytype)
 Verifies validity of a PolyType enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::ECoordinatesToString (const ECoordinates coords)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidCoordinate (const ECoordinates coordinateType)
 Verifies validity of a Coordinate enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::ENormToString (const ENorm norm)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidNorm (const ENorm normType)
 Verifies validity of a Norm enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::EOperatorToString (const EOperator op)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidOperator (const EOperator operatorType)
 Verifies validity of an operator enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::EFunctionSpaceToString (const EFunctionSpace space)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidFunctionSpace (const EFunctionSpace spaceType)
 Verifies validity of a function space enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::EDiscreteSpaceToString (const EDiscreteSpace space)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidDiscreteSpace (const EDiscreteSpace spaceType)
 Verifies validity of a discrete space enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::EPointTypeToString (const EPointType pointType)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidPointType (const EPointType pointType)
 Verifies validity of a point type enum.
KOKKOS_INLINE_FUNCTION const char * Intrepid2::EBasisToString (const EBasis basis)
KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidBasis (const EBasis basisType)
 Verifies validity of a basis enum.

Detailed Description

Contains definitions of custom data types in Intrepid2.

Author
Created by P. Bochev and D. Ridzal and Kyungjoo Kim.

Definition in file Intrepid2_Types.hpp.

Typedef Documentation

◆ ordinal_type

typedef int Intrepid2::ordinal_type

Definition at line 26 of file Intrepid2_Types.hpp.

◆ size_type

typedef size_t Intrepid2::size_type

Definition at line 27 of file Intrepid2_Types.hpp.

Enumeration Type Documentation

◆ EBasis

enum Intrepid2::EBasis

Definition at line 434 of file Intrepid2_Types.hpp.

◆ ECoordinates

enum Intrepid2::ECoordinates

Definition at line 179 of file Intrepid2_Types.hpp.

◆ EDiscreteSpace

enum Intrepid2::EDiscreteSpace

Definition at line 369 of file Intrepid2_Types.hpp.

◆ EFunctionSpace

enum Intrepid2::EFunctionSpace

Definition at line 322 of file Intrepid2_Types.hpp.

◆ ENorm

enum Intrepid2::ENorm

Definition at line 215 of file Intrepid2_Types.hpp.

◆ EOperator

enum Intrepid2::EOperator : int

Definition at line 254 of file Intrepid2_Types.hpp.

◆ EPointType

enum Intrepid2::EPointType

Definition at line 402 of file Intrepid2_Types.hpp.

◆ EPolyType

enum Intrepid2::EPolyType

Definition at line 142 of file Intrepid2_Types.hpp.

Function Documentation

◆ EBasisToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::EBasisToString ( const EBasis basis)

Definition at line 445 of file Intrepid2_Types.hpp.

◆ ECoordinatesToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::ECoordinatesToString ( const ECoordinates coords)

Definition at line 188 of file Intrepid2_Types.hpp.

◆ EDiscreteSpaceToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::EDiscreteSpaceToString ( const EDiscreteSpace space)

Definition at line 377 of file Intrepid2_Types.hpp.

◆ EFunctionSpaceToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::EFunctionSpaceToString ( const EFunctionSpace space)

Definition at line 333 of file Intrepid2_Types.hpp.

◆ ENormToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::ENormToString ( const ENorm norm)

Definition at line 224 of file Intrepid2_Types.hpp.

◆ EOperatorToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::EOperatorToString ( const EOperator op)

Definition at line 274 of file Intrepid2_Types.hpp.

◆ EPointTypeToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::EPointTypeToString ( const EPointType pointType)

Definition at line 410 of file Intrepid2_Types.hpp.

◆ EPolyTypeToString()

KOKKOS_INLINE_FUNCTION const char * Intrepid2::EPolyTypeToString ( const EPolyType polytype)

Definition at line 151 of file Intrepid2_Types.hpp.

◆ epsilon() [1/2]

KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::epsilon ( )

Definition at line 64 of file Intrepid2_Types.hpp.

◆ epsilon() [2/2]

template<typename ValueType>
KOKKOS_FORCEINLINE_FUNCTION ValueType Intrepid2::epsilon ( )

Definition at line 31 of file Intrepid2_Types.hpp.

◆ epsilon< double >()

template<>
KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::epsilon< double > ( )

Definition at line 37 of file Intrepid2_Types.hpp.

◆ epsilon< float >()

template<>
KOKKOS_FORCEINLINE_FUNCTION float Intrepid2::epsilon< float > ( )

Definition at line 51 of file Intrepid2_Types.hpp.

◆ isValidBasis()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidBasis ( const EBasis basisType)

Verifies validity of a basis enum.

Parameters
basisType[in] - enum of the basis
Returns
1 if the argument is valid discrete space; 0 otherwise

Definition at line 464 of file Intrepid2_Types.hpp.

◆ isValidCoordinate()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidCoordinate ( const ECoordinates coordinateType)

Verifies validity of a Coordinate enum.

Parameters
coordinateType[in] - enum of the coordinate system
Returns
1 if the argument is valid coordinate system; 0 otherwise

Definition at line 205 of file Intrepid2_Types.hpp.

◆ isValidDiscreteSpace()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidDiscreteSpace ( const EDiscreteSpace spaceType)

Verifies validity of a discrete space enum.

Parameters
spaceType[in] - enum of the function space
Returns
1 if the argument is valid discrete space; 0 otherwise

Definition at line 393 of file Intrepid2_Types.hpp.

◆ isValidFunctionSpace()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidFunctionSpace ( const EFunctionSpace spaceType)

Verifies validity of a function space enum.

Parameters
spaceType[in] - enum of the function space
Returns
1 if the argument is valid function space; 0 otherwise

Definition at line 352 of file Intrepid2_Types.hpp.

◆ isValidNorm()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidNorm ( const ENorm normType)

Verifies validity of a Norm enum.

Parameters
normType[in] - enum of the norm
Returns
1 if the argument is valid norm; 0 otherwise

Definition at line 241 of file Intrepid2_Types.hpp.

◆ isValidOperator()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidOperator ( const EOperator operatorType)

Verifies validity of an operator enum.

Parameters
operatorType[in] - enum of the operator
Returns
1 if the argument is valid operator; 0 otherwise

Definition at line 301 of file Intrepid2_Types.hpp.

◆ isValidPointType()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidPointType ( const EPointType pointType)

Verifies validity of a point type enum.

Parameters
pointType[in] - enum of the point type
Returns
1 if the argument is a valid point type; 0 otherwise

Definition at line 425 of file Intrepid2_Types.hpp.

◆ isValidPolyType()

KOKKOS_FORCEINLINE_FUNCTION bool Intrepid2::isValidPolyType ( const EPolyType polytype)

Verifies validity of a PolyType enum.

Parameters
polytype[in] - enum of the coordinate system
Returns
1 if the argument is valid poly type; 0 otherwise

Definition at line 168 of file Intrepid2_Types.hpp.

◆ threshold() [1/2]

KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::threshold ( )

Definition at line 86 of file Intrepid2_Types.hpp.

◆ threshold() [2/2]

template<typename ValueType>
KOKKOS_FORCEINLINE_FUNCTION ValueType Intrepid2::threshold ( )

Definition at line 81 of file Intrepid2_Types.hpp.

◆ tolerence() [1/2]

KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::tolerence ( )

Definition at line 75 of file Intrepid2_Types.hpp.

◆ tolerence() [2/2]

template<typename ValueType>
KOKKOS_FORCEINLINE_FUNCTION ValueType Intrepid2::tolerence ( )

Definition at line 70 of file Intrepid2_Types.hpp.