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+)
Follow C++ Math Expression Parser
Other Useful Business Software
Managed File Transfer Software
For too many businesses, complex file transfer needs make it difficult to create, manage and support data flows to and from internal and external systems. Progress® MOVEit® empowers enterprises to take control of their file transfer workflows with solutions that help secure, simplify and centralize data exchanges throughout the organization.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of C++ Math Expression Parser!