Skip to content

Capabilities

Back to index

Previous | Index | Next

The MathExpr expression evaluator supports the following fundamental arithmetic operations, functions and processes:

  1. Types: Scalar, Vector, String

  2. Basic operators: +, -, *, /, %, ^

  3. Assignment: :=, +=, -=, *=, /=, %=

  4. Equalities & Inequalities: =, ==, !=, <, <=, >, >=

  5. Logic operators: and, mand, mor, nand, nor, not, or, shl, shr, xnor, xor, true, false

  6. Functions: abs, avg, ceil, clamp, equal, erf, erfc, exp, expm1, floor, frac, log, log10, log1p, log2, logn, max, min, mul, ncdf, not_equal, root, round, roundn, sgn, sqrt, sum, swap, trunc

  7. Trigonometry: acos, acosh, asin, asinh, atan, atanh, atan2, cos, cosh, cot, csc, sec, sin, sinc, sinh, tan, tanh, hypot, rad2deg, deg2grad, deg2rad, grad2deg

  8. Control structures: if-then-else, ternary conditional, switch-case, return-statement

  9. Loop statements: while, for, repeat-until, break, continue

  10. String processing: in, like, ilike, concatenation

  11. Optimisations: constant-folding, simple strength reduction and dead code elimination

  12. Runtime checks: vector bounds, string bounds, loop iteration, execution-time bounds and compilation process checkpointing, assert statements

  13. Calculus: numerical integration and differentiation

Previous | Index | Next