C++ Mathematical Expression Library (ExprTk) http://www.partow.net/programming/exprtk/index.html

This commit is contained in:
Arash Partow
2012-05-17 08:14:45 +10:00
parent 816385aa4c
commit d50a00a84d
3 changed files with 268 additions and 25 deletions

View File

@ -8,6 +8,7 @@ kinds of functional, logic processing semantics and is very easily
extendible.
[CAPABILITIES]
The ExprTk evaluator supports the following fundamental mathematical
operations, functions and processes:
@ -34,6 +35,7 @@ operations, functions and processes:
(7) Assigment: :=
[EXAMPLE EXPRESSIONS]
The following is a short sample of the types of mathematical
expressions that can be parsed and evaluated using the ExprTk library.
@ -60,6 +62,7 @@ expressions that can be parsed and evaluated using the ExprTk library.
(20) (x like '*123*') or ('a123b' ilike y)
[COPYRIGHT NOTICE]
Free use of the Mathematical Expression Toolkit Library is permitted
under the guidelines and in accordance with the most current version
@ -68,6 +71,7 @@ of the Common Public License.
http://www.opensource.org/licenses/cpl1.0.php
[DOWNLOADS & UPDATES]
All updates and the most recent version of the C++ Mathematical
Expression Library can be found at:
@ -75,17 +79,20 @@ Expression Library can be found at:
(2) svn checkout http://exprtk.googlecode.com/svn/ exprtk
[INSTALLATION]
(1) exprtk.hpp should be placed in a project or system include path
(e.g: /usr/include/).
[COMPILATION]
(1) For a complete build: make clean all
(2) For a PGO build: make clean pgo
(3) To strip executables: make strip_bin
[COMPILER COMPATIBILITY]
(*) GNU Compiler Collection (4.3+)
(*) Intel<65> C++ Compiler (9.x+)
@ -94,6 +101,7 @@ Expression Library can be found at:
(*) Comeau C++ Compiler (4.3+)
[SPECIAL FUNCTIONS]
The purpose of special functions in ExprTk is to provide compiler
generated equivalents of common mathematical expressions which can be
@ -144,6 +152,7 @@ correctly optimize such expressions for a given architecture.
sf58(x,y,z,w) | x * y^9 + z * w^9
[MACROS]
ExprTk utilizes certain macros to modify the underlying behaviour of
the parser and the evaluation engine. The following macros are used to
@ -194,6 +203,11 @@ both modes [3] and [4].
The mode when this macro is defined, is 'lean and mean' coupled with
all string capabilities disabled [1].
Note: Foregoing a few extra clock cycles during compilation in
exchange for a dramatic increase in performance during run-time is
always a worthy undertaking.
[FILES]
(00) Makefile