mXparser is highly flexible parser of math expressions. Software provides easy to use API for JAVA, Android, C# .NET/MONO (CLS).
Main functionalities:
- basic operators, i.e.: +, -, *, ^, !
- Boolean logic operators i.e.: or, and, xor
- binary relations i.e.: =, <, >
- math functions (large library of 1-arg, 2-arg, 3-arg - - functions) i.e.: sin, cos, Stirling numbers, log, inverse functions
- constants (large library), i.e.: pi, e, golden ratio
- n-args functions i.e.: greatest common divisor
- iterated summation and product operators
- differentiation and integration
High flexibility:
- user defined constants and arguments, both free - and dependent on other arguments + possibility of use in functions
- user defined functions (both free and depended)
- user defined recursive arguments + simple (controlled) recursion (1 recursive argument)
- user defined recursive functions / expressions (any) - complex, many arguments, no limitation
- internal syntax checkin
Features
- Parser for simple & complex arithmetic expressions
- User defined arguments, functions, constants
- Calculus operations (i.e. numerical differentiation, integration)
- Summation and product operations
- User defined recursive functions
- Boolean operators
- Large math functions collection
- JAVA
- MONO
- .NET
- C#
- Android
- Common Language Specification
User Reviews
-
Hi Folks! I was recently using this library, it supports variables and user defined functions as well. Additionally there are built-in iterated operators (summation, product, etc.) and some part of numerical analysis (integrals and derivatives). Everything can be defined using only string text, so it is perfect tool for calculating user defined formulas provided at a run-time. Best regards, Leroy
-
Very nice and easy to use API for math expression parsing. API gives a lot of functionalities, starting from basic evaluation (similar as calculators) finishing with sophisticated user defined recursive functions provided as plain text in String. Project website provides also comprehensive tutorial.