File expr.hxx¶
Defines
-
DEFINE_BINARY_OP(name, op)¶
Binary operator classes.
-
DEFINE_OVERLOAD_FUNC(name, func)¶
Define functions add, mul which use operator structs.
Functions
-
template<typename ExprT1, typename ExprT2>
BinaryResult<ExprT1, ExprT2, Add>::type add(const ExprT1 &e1, const ExprT2 &e2)¶ Addition of two Expressions.
-
class Literal¶
- #include <expr.hxx>
Literal class to capture BoutReal values in expressions.
Public Functions
-
inline ~Literal()¶
-
inline ~Literal()¶
-
class Field3DExpr¶
-
Public Functions
-
class Field2DExpr¶
-
Public Functions
-
template<class ExprT>
struct exprTraits¶ - #include <expr.hxx>
Expression traits, to convert doubles etc. to Literal.
-
template<>
struct exprTraits<double>¶
-
template<>
struct exprTraits<float>¶
-
template<>
struct exprTraits<int>¶
-
template<typename T>
struct asExpr¶
-
template<>
struct asExpr<int>¶
-
template<>
struct asExpr<double>¶
-
template<>
struct asExpr<float>¶
-
template<>
struct asExpr<Field3D>¶ Public Types
-
using type = Field3DExpr¶
Public Static Functions
-
static inline const Field3DExpr getExpr(const Field3D &x)¶
-
using type = Field3DExpr¶
-
template<typename Lhs, typename Rhs>
struct PromoteType¶
-
template<class ExprT1, class ExprT2, class BinOp>
class BinaryExpr¶ Public Types
-
using ltype = typename exprTraits<ExprT1>::expr_type¶
-
using rtype = typename exprTraits<ExprT2>::expr_type¶
-
using type = typename PromoteType<ltype, rtype>::type¶
Type of the resulting expression.
Public Functions
-
using ltype = typename exprTraits<ExprT1>::expr_type¶
-
template<typename ExprT1, typename ExprT2, class name>
struct BinaryResult¶
-
struct Add¶
-
struct Subtract¶
-
struct Multiply¶
-
struct Divide¶
-
struct Power¶