Sacado Package Browser (Single Doxygen Collection)  Version of the Day
Macros | Functions | Variables
Sacado_Fad_Ops.hpp File Reference
#include "Sacado_Fad_Expression.hpp"
#include "Sacado_cmath.hpp"
#include <ostream>
Include dependency graph for Sacado_Fad_Ops.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define FAD_UNARYOP_MACRO(OPNAME, OP, VALUE, DX, FASTACCESSDX)
 
#define FAD_BINARYOP_MACRO(OPNAME, OP, VALUE, DX, FASTACCESSDX, VAL_CONST_DX_1, VAL_CONST_DX_2, CONST_DX_1, CONST_DX_2, CONST_FASTACCESSDX_1, CONST_FASTACCESSDX_2)
 
#define FAD_RELOP_MACRO(OP)
 
#define FAD_BOOL_MACRO(OP)
 

Functions

 FAD_UNARYOP_MACRO (operator+, UnaryPlusOp, expr.val(), expr.dx(i), expr.fastAccessDx(i)) FAD_UNARYOP_MACRO(operator-
 
expr val ()
 
expr expr dx (i)
 
expr expr expr fastAccessDx (i)) FAD_UNARYOP_MACRO(exp
 

Variables

 UnaryMinusOp
 
expr expr expr ExpOp
 
expr expr expr LogOp
 
expr expr expr expr expr Log10Op
 

Macro Definition Documentation

◆ FAD_UNARYOP_MACRO

#define FAD_UNARYOP_MACRO (   OPNAME,
  OP,
  VALUE,
  DX,
  FASTACCESSDX 
)

Definition at line 59 of file Sacado_Fad_Ops.hpp.

◆ FAD_BINARYOP_MACRO

#define FAD_BINARYOP_MACRO (   OPNAME,
  OP,
  VALUE,
  DX,
  FASTACCESSDX,
  VAL_CONST_DX_1,
  VAL_CONST_DX_2,
  CONST_DX_1,
  CONST_DX_2,
  CONST_FASTACCESSDX_1,
  CONST_FASTACCESSDX_2 
)

◆ FAD_RELOP_MACRO

#define FAD_RELOP_MACRO (   OP)
Value:
namespace Sacado { \
namespace Fad { \
template <typename ExprT1, typename ExprT2> \
KOKKOS_INLINE_FUNCTION \
bool \
operator OP (const Expr<ExprT1>& expr1, \
const Expr<ExprT2>& expr2) \
{ \
return expr1.val() OP expr2.val(); \
} \
\
template <typename ExprT2> \
KOKKOS_INLINE_FUNCTION \
bool \
operator OP (const typename Expr<ExprT2>::value_type& a, \
const Expr<ExprT2>& expr2) \
{ \
return a OP expr2.val(); \
} \
\
template <typename ExprT1> \
KOKKOS_INLINE_FUNCTION \
bool \
operator OP (const Expr<ExprT1>& expr1, \
const typename Expr<ExprT1>::value_type& b) \
{ \
return expr1.val() OP b; \
} \
} \
}

◆ FAD_BOOL_MACRO

#define FAD_BOOL_MACRO (   OP)
Value:
namespace Sacado { \
namespace Fad { \
template <typename ExprT1, typename ExprT2> \
KOKKOS_INLINE_FUNCTION \
bool \
operator OP (const Expr<ExprT1>& expr1, \
const Expr<ExprT2>& expr2) \
{ \
return toBool(expr1) OP toBool(expr2); \
} \
\
template <typename ExprT2> \
KOKKOS_INLINE_FUNCTION \
bool \
operator OP (const typename Expr<ExprT2>::value_type& a, \
const Expr<ExprT2>& expr2) \
{ \
return a OP toBool(expr2); \
} \
\
template <typename ExprT1> \
KOKKOS_INLINE_FUNCTION \
bool \
operator OP (const Expr<ExprT1>& expr1, \
const typename Expr<ExprT1>::value_type& b) \
{ \
return toBool(expr1) OP b; \
} \
} \
}
KOKKOS_INLINE_FUNCTION bool toBool(const Expr< ExprT > &x)

Function Documentation

◆ FAD_UNARYOP_MACRO()

FAD_UNARYOP_MACRO ( operator+  ,
UnaryPlusOp  ,
expr.  val(),
expr.  dxi,
expr.  fastAccessDx
)

◆ val()

expr val ( )

◆ dx()

expr expr dx ( )

◆ fastAccessDx()

expr expr expr fastAccessDx ( )

Variable Documentation

◆ UnaryMinusOp

UnaryMinusOp

Definition at line 133 of file Sacado_Fad_Ops.hpp.

◆ ExpOp

expr expr expr ExpOp

Definition at line 138 of file Sacado_Fad_Ops.hpp.

◆ LogOp

expr expr expr LogOp

Definition at line 143 of file Sacado_Fad_Ops.hpp.

◆ Log10Op

expr expr expr expr expr Log10Op

Definition at line 148 of file Sacado_Fad_Ops.hpp.