The C++ Mathematical Expression Toolkit Library (ExprTk) is a simple to use, easy to integrate and extremely efficient run-time mathematical expression parser and evaluation engine. ExprTk supports numerous forms of functional, logical and vector processing semantics and is very easily extendible.

Download
http://partow.net/programming/exprtk/index.html

Features

  • Mathematical operators (+, -, *, /, %, ^)
  • Functions (min, max, avg, sum, abs, ceil, floor, round, roundn, exp, log, log10, logn, root, sqrt, clamp, inrange)
  • Trigonometry (sin, cos, tan, acos, asin, atan, atan2, cosh, cot, csc, sec, sinh, tanh, d2r, r2d, d2g, g2d, hyp)
  • Equalities, Inequalities (=, ==, <>, !=, <, <=, >, >=)
  • Assignment (:=, +=, -=, *=, /=)
  • Boolean logic (and, nand, nor, not, or, xor, xnor, mand, mor)
  • Control Structures (if-then-else, ternary conditional, switch case)
  • Loop Structures (while loop, for loop, repeat until loop, break, continue)
  • Optimization of expressions (constant folding, strength reduction, operator coupling, special functions and dead code elimination)
  • String operations (equalities, inequalities, boolean logic, concatenation and ranges)
  • Expression local variables, vectors and strings
  • User defined variables, vectors, strings, constants and function support
  • Multivariate function composition
  • Multiple sequence point and sub expression support
  • Numeric integration and differentiation
  • Vector Processing: BLAS-L1 (axpy, axpby, axpb), all/any-true/false, count, rotate-left/right, shift-left/right, sort, nth_element, iota, sum, kahan-sum, dot-product, copy
  • File-IO package (routines include: open, close, read, write, getline, support for binary and text modes)
  • Support for various numeric types (float, double, long double, MPFR/GMP)
  • Single header implementation, no building required. No external dependencies.
  • Completely portable (Compiled and executed upon: x86 x86-64, ARMv7/8, POWER6/7 and AVR32)
  • Compatible C++ Compilers: GNU Compiler Collection (3.3+), Intel® C++ Compiler (8.x+), Clang/LLVM (1.1+), PGI C++ (10.x+), Microsoft Visual Studio C++ Compiler (8.1+), IBM XL C/C++ (9.x+), C++ Builder (XE4+)

Project Activity

See All Activity >

Follow C++ Math Expression Parser

C++ Math Expression Parser Web Site

You Might Also Like
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of C++ Math Expression Parser!

Additional Project Details

Registered

2016-11-03