Minsky
exprtk::details::numeric Namespace Reference

Functions

 exprtk_define_unary_function_not_dimensionless (abs) exprtk_define_unary_function(acos) exprtk_define_unary_function(acosh) exprtk_define_unary_function(asin) exprtk_define_unary_function(asinh) exprtk_define_unary_function(atan) exprtk_define_unary_function(atanh) exprtk_define_unary_function(ceil) exprtk_define_unary_function(cos) exprtk_define_unary_function(cosh) exprtk_define_unary_function(exp) exprtk_define_unary_function(expm1) exprtk_define_unary_function(floor) exprtk_define_unary_function(log) exprtk_define_unary_function(log10) exprtk_define_unary_function(log2) exprtk_define_unary_function(log1p) exprtk_define_unary_function_not_dimensionless(neg) exprtk_define_unary_function_not_dimensionless(pos) exprtk_define_unary_function_not_dimensionless(round) exprtk_define_unary_function(sin) exprtk_define_unary_function(sinc) exprtk_define_unary_function(sinh) exprtk_define_unary_function(tan) exprtk_define_unary_function(tanh) exprtk_define_unary_function(cot) exprtk_define_unary_function(sec) exprtk_define_unary_function(csc) exprtk_define_unary_function(r2d) exprtk_define_unary_function(d2r) exprtk_define_unary_function(d2g) exprtk_define_unary_function(g2d) exprtk_define_unary_function(notl) template<> inline minsky
 
 exprtk_define_unary_function (erf) exprtk_define_unary_function(erfc) exprtk_define_unary_function(ncdf) exprtk_define_unary_function_not_dimensionless(frac) exprtk_define_unary_function_not_dimensionless(trunc) template<> inline minsky
 
template<>
int to_int32 (const minsky::UnitsExpressionWalker x)
 
template<>
_int64_t to_int64 (const minsky::UnitsExpressionWalker x)
 
template<>
bool is_integer (const minsky::UnitsExpressionWalker x)
 
template<>
bool is_nan (const minsky::UnitsExpressionWalker x)
 
 exprtk_define_binary_function (min)
 
 exprtk_define_binary_function (max)
 
 exprtk_define_binary_function_dimensionless (equal)
 
 exprtk_define_binary_function_dimensionless (nequal)
 
 exprtk_define_binary_function_first_arg (modulus)
 
 exprtk_define_binary_function (pow)
 
 exprtk_define_binary_function (logn)
 
template<>
minsky::UnitsExpressionWalker root (const minsky::UnitsExpressionWalker x, const minsky::UnitsExpressionWalker y)
 
 exprtk_define_binary_function_first_arg (roundn)
 
 exprtk_define_binary_function (hypot)
 
 exprtk_define_binary_function (atan2)
 
 exprtk_define_binary_function (shr)
 
 exprtk_define_binary_function (shl)
 
 exprtk_define_binary_function (and_opr)
 
 exprtk_define_binary_function (nand_opr)
 
 exprtk_define_binary_function (or_opr)
 
 exprtk_define_binary_function (nor_opr)
 
 exprtk_define_binary_function (xor_opr)
 
 exprtk_define_binary_function (xnor_opr)
 

Function Documentation

◆ exprtk_define_binary_function() [1/14]

exprtk::details::numeric::exprtk_define_binary_function ( min  )

◆ exprtk_define_binary_function() [2/14]

exprtk::details::numeric::exprtk_define_binary_function ( max  )

◆ exprtk_define_binary_function() [3/14]

exprtk::details::numeric::exprtk_define_binary_function ( pow  )

◆ exprtk_define_binary_function() [4/14]

exprtk::details::numeric::exprtk_define_binary_function ( logn  )

◆ exprtk_define_binary_function() [5/14]

exprtk::details::numeric::exprtk_define_binary_function ( hypot  )

◆ exprtk_define_binary_function() [6/14]

exprtk::details::numeric::exprtk_define_binary_function ( atan2  )

◆ exprtk_define_binary_function() [7/14]

exprtk::details::numeric::exprtk_define_binary_function ( shr  )

◆ exprtk_define_binary_function() [8/14]

exprtk::details::numeric::exprtk_define_binary_function ( shl  )

◆ exprtk_define_binary_function() [9/14]

exprtk::details::numeric::exprtk_define_binary_function ( and_opr  )

◆ exprtk_define_binary_function() [10/14]

exprtk::details::numeric::exprtk_define_binary_function ( nand_opr  )

◆ exprtk_define_binary_function() [11/14]

exprtk::details::numeric::exprtk_define_binary_function ( or_opr  )

◆ exprtk_define_binary_function() [12/14]

exprtk::details::numeric::exprtk_define_binary_function ( nor_opr  )

◆ exprtk_define_binary_function() [13/14]

exprtk::details::numeric::exprtk_define_binary_function ( xor_opr  )

◆ exprtk_define_binary_function() [14/14]

exprtk::details::numeric::exprtk_define_binary_function ( xnor_opr  )

◆ exprtk_define_binary_function_dimensionless() [1/2]

exprtk::details::numeric::exprtk_define_binary_function_dimensionless ( equal  )

◆ exprtk_define_binary_function_dimensionless() [2/2]

exprtk::details::numeric::exprtk_define_binary_function_dimensionless ( nequal  )

◆ exprtk_define_binary_function_first_arg() [1/2]

exprtk::details::numeric::exprtk_define_binary_function_first_arg ( modulus  )

◆ exprtk_define_binary_function_first_arg() [2/2]

exprtk::details::numeric::exprtk_define_binary_function_first_arg ( roundn  )

◆ exprtk_define_unary_function()

exprtk::details::numeric::exprtk_define_unary_function ( erf  )

Definition at line 176 of file expressionWalker.h.

References minsky::UnitsExpressionWalker::units.

183  {
185  for (auto& i: x.units)
186  {
187  if (i.second % 2)
188  throw std::runtime_error("input dimension "+i.first+" not a square");
189  r.units[i.first]=i.second/2;
190  }
191  return r;
192  }

◆ exprtk_define_unary_function_not_dimensionless()

exprtk::details::numeric::exprtk_define_unary_function_not_dimensionless ( abs  )

Definition at line 142 of file expressionWalker.h.

175  {return {};}

◆ is_integer()

template<>
bool exprtk::details::numeric::is_integer ( const minsky::UnitsExpressionWalker  x)
inline

Definition at line 197 of file expressionWalker.h.

References minsky::UnitsExpressionWalker::value.

197 {return int64_t(x.value)==x.value;}

◆ is_nan()

template<>
bool exprtk::details::numeric::is_nan ( const minsky::UnitsExpressionWalker  x)
inline

Definition at line 198 of file expressionWalker.h.

198 {return false;}

◆ root()

template<>
minsky::UnitsExpressionWalker exprtk::details::numeric::root ( const minsky::UnitsExpressionWalker  x,
const minsky::UnitsExpressionWalker  y 
)
inline

Definition at line 227 of file expressionWalker.h.

References minsky::root().

228  {return minsky:: root(x,y);}
UnitsExpressionWalker root(const UnitsExpressionWalker &x, const UnitsExpressionWalker &y)
Here is the call graph for this function:

◆ to_int32()

template<>
int exprtk::details::numeric::to_int32 ( const minsky::UnitsExpressionWalker  x)
inline

Definition at line 195 of file expressionWalker.h.

References minsky::UnitsExpressionWalker::value.

195 {return int(x.value);}

◆ to_int64()

template<>
_int64_t exprtk::details::numeric::to_int64 ( const minsky::UnitsExpressionWalker  x)
inline

Definition at line 196 of file expressionWalker.h.

References minsky::UnitsExpressionWalker::value.

196 {return int64_t(x.value);}