Intrepid2
Classes | Typedefs | Enumerations | Functions
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 {
  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 ()
 
KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::tolerence ()
 
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 59 of file Intrepid2_Types.hpp.

◆ size_type

typedef size_t Intrepid2::size_type

Definition at line 60 of file Intrepid2_Types.hpp.

Enumeration Type Documentation

◆ EBasis

enum Intrepid2::EBasis

Definition at line 455 of file Intrepid2_Types.hpp.

◆ ECoordinates

enum Intrepid2::ECoordinates

Definition at line 200 of file Intrepid2_Types.hpp.

◆ EDiscreteSpace

enum Intrepid2::EDiscreteSpace

Definition at line 390 of file Intrepid2_Types.hpp.

◆ EFunctionSpace

enum Intrepid2::EFunctionSpace

Definition at line 343 of file Intrepid2_Types.hpp.

◆ ENorm

enum Intrepid2::ENorm

Definition at line 236 of file Intrepid2_Types.hpp.

◆ EOperator

enum Intrepid2::EOperator

Definition at line 275 of file Intrepid2_Types.hpp.

◆ EPointType

enum Intrepid2::EPointType

Definition at line 423 of file Intrepid2_Types.hpp.

◆ EPolyType

enum Intrepid2::EPolyType

Definition at line 163 of file Intrepid2_Types.hpp.

Function Documentation

◆ EBasisToString()

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

Definition at line 466 of file Intrepid2_Types.hpp.

◆ ECoordinatesToString()

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

Definition at line 209 of file Intrepid2_Types.hpp.

◆ EDiscreteSpaceToString()

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

Definition at line 398 of file Intrepid2_Types.hpp.

◆ EFunctionSpaceToString()

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

Definition at line 354 of file Intrepid2_Types.hpp.

◆ ENormToString()

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

Definition at line 245 of file Intrepid2_Types.hpp.

◆ EOperatorToString()

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

Definition at line 295 of file Intrepid2_Types.hpp.

◆ EPointTypeToString()

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

Definition at line 431 of file Intrepid2_Types.hpp.

◆ EPolyTypeToString()

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

Definition at line 172 of file Intrepid2_Types.hpp.

◆ epsilon() [1/2]

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

Definition at line 64 of file Intrepid2_Types.hpp.

◆ epsilon() [2/2]

KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::epsilon ( )

Definition at line 97 of file Intrepid2_Types.hpp.

◆ epsilon< double >()

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

Definition at line 70 of file Intrepid2_Types.hpp.

◆ epsilon< float >()

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

Definition at line 84 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 485 of file Intrepid2_Types.hpp.

References Intrepid2::isValidBasis().

Referenced by Intrepid2::isValidBasis().

◆ 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 226 of file Intrepid2_Types.hpp.

References Intrepid2::isValidCoordinate().

Referenced by Intrepid2::isValidCoordinate().

◆ 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 414 of file Intrepid2_Types.hpp.

References Intrepid2::isValidDiscreteSpace().

Referenced by Intrepid2::isValidDiscreteSpace().

◆ 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 373 of file Intrepid2_Types.hpp.

References Intrepid2::isValidFunctionSpace().

Referenced by Intrepid2::getFieldRank(), and Intrepid2::isValidFunctionSpace().

◆ 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 262 of file Intrepid2_Types.hpp.

References Intrepid2::isValidNorm().

Referenced by Intrepid2::isValidNorm().

◆ 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 322 of file Intrepid2_Types.hpp.

References Intrepid2::isValidOperator().

Referenced by Intrepid2::getOperatorOrder(), Intrepid2::getOperatorRank(), and Intrepid2::isValidOperator().

◆ 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 446 of file Intrepid2_Types.hpp.

References Intrepid2::isValidPointType().

Referenced by Intrepid2::Basis_HGRAD_LINE_Cn_FEM< DeviceType, outputValueType, pointValueType >::Basis_HGRAD_LINE_Cn_FEM(), Intrepid2::Basis_HVOL_LINE_Cn_FEM< DeviceType, outputValueType, pointValueType >::Basis_HVOL_LINE_Cn_FEM(), and Intrepid2::isValidPointType().

◆ 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 189 of file Intrepid2_Types.hpp.

References Intrepid2::isValidPolyType().

Referenced by Intrepid2::isValidPolyType().

◆ threshold()

KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::threshold ( )

Definition at line 107 of file Intrepid2_Types.hpp.

◆ tolerence()

KOKKOS_FORCEINLINE_FUNCTION double Intrepid2::tolerence ( )

Definition at line 102 of file Intrepid2_Types.hpp.