MathParser.orgmXparser
6.0.0
dotnet add package MathParser.orgmXparser version 6.0.0
NuGet\InstallPackage MathParser.orgmXparser Version 6.0.0
<PackageReference Include="MathParser.orgmXparser" Version="6.0.0" />
paket add MathParser.orgmXparser version 6.0.0
#r "nuget: MathParser.orgmXparser, 6.0.0"
// Install MathParser.orgmXparser as a Cake Addin
#addin nuget:?package=MathParser.orgmXparser&version=6.0.0
// Install MathParser.orgmXparser as a Cake Tool
#tool nuget:?package=MathParser.orgmXparser&version=6.0.0
Latest release
v.6.0.0 (20240519): Translations (French, German, Italian, Polish, Portuguese, Spanish) + New operators
Translations:
 mXparser in French,
 mXparser in German,
 mXparser in Italian,
 mXparser in Polish,
 mXparser in Portuguese,
 mXparser in Spanish,
New bitwise operators:
New division operators:
v.5.2.1 (20230208): Orion: Improvement and standardization of descriptions and messages. Definition of your own translations. Exporting help in multiple formats. Clones for thread safe. Performance improvement.
 Improvement and standardization of builtin elements description, click to see usage example
 Improvement and standardization of error messages, click to see usage example
 Definition of your own translations, click to see usage example
 Help content in the CSV format, click to see usage example
 Help content in the HTML format, click to see usage example
 Help content in the Markdown format, click to see usage example
 Help content in the JSON format, click to see usage example
 Clones for thread safe, click to see usage example
 Performance improvement for calculations in the loop, click to see usage example
 Bug fixed #291 Euler polynomial function producing wrong results
 Bug fixed #292 Implied Multiplication bug when blank character separates
 Bug fixed #283 Unnecessary newline at the end in getErrorMessage()
 Bug fixed #284 Unnecessary space in function expression string returned by getErrorMessage()
 Bug fixed #297 Claculation Steps Register fix  commas / parenthesis / missing parts related to user arguments
v.5.1.0 (20221113): Libris: Implied Multiplication, Unicode Math Symbols, Additional Probability Distributions, Calculation Steps Register, Serialization Support
 Implied Multiplication, click to see usage example
 Unicode Math Symbols, click to see usage example
 Calculation Steps Register, click to see usage example
 Serialization Support, click to see usage example
 An Attempt To Fix Expression String
 Student's tdistribution: Probabilisty Density Function, Cumulative Distribution Function, Quantile Function
 ChiSquared Distribution: Probabilisty Density Function, Cumulative Distribution Function, Quantile Function
 FSnedecor Distribution: Probabilisty Density Function, Cumulative Distribution Function, Quantile Function
 Minor Bug fixing: 259, 258, 252, 261, 262, 263, 271, 269, 268, 266, 265
 Regression tests refactoring
 License update
Tutorial
The tutorial consists of c.a. 180 live examples from c.a. 40 sections. Each of the examples can be copied and run on your own environment. In addition, mXparser provides an extensive collection of over 500 builtin math functions, expressions and symbols. Familiarize yourself with the scope and the syntax. Live testing is the best way to learn. Good luck!
Using internal help
 Full help content
 Inline help searching
Simple expressions
 Simple calculation
 Changing expression string
 Using operators
 Power function
 Using numbers in scientific notation
 Percent sign
 Leading zeros
Implied multiplication
 Numbers and parenthesis
 Numbers and constants / arguments
 Numbers and constants / arguments and parenthesis
 Numbers and constants / arguments and parenthesis and functions
 Implied multiplication and possible ambiguity
 Implied multiplication and list of tokens
 Enable / disable implied multiplication
Evaluating relations
 Binary relation “=”
 Binary relation “<“
 Boolean operator “OR”
 Boolean operator “AND”
Using builtin functions
 Unary function
 Binary function
 Function with 3 arguments
 Function with narguments
 Function with even number of arguments
User defined constants
 Defining constant – various options
User defined arguments
 Dealing with free arguments
 Defining dependent arguments
 Implementing your own Argument Extension
 Getting list of missing user defined arguments
 Possible conflict between Implied Multiplication and getting list of missing user defined arguments + recommended solutions
User defined functions
 Fast function definition (performance of creation)
 Handy function constructor, but slower proces of function creation (performance of creation slower, but calculation the same)
 Function with more parameters
 Function in function
 Implementing your own Function Extension
 Getting list of missing user defined functions
 Possible conflict between Implied Multiplication and getting list of missing user defined functions + recommended solutions
Expression precompilation
 What is precompilation?
 When is precompilation done?
 When is precompilation done again?
 An example of bad practice in computing the value of an expression for a changing argument value
 An example of good practice in computing the value of an expression for a changing argument value
Variadic user defined functions
 Function returning number of parameters provided
 Function returning sum of first and last parameter provided
 Function returning parameter at position defined by the first parameter
 Function returning sum of all parameters squared
 Implementing your own Variadic Function Extension
“if” and “iff” functions
 Mechanics of the if function
 “if” function and arguments
 “if” function in user defined function
 Mechanics of the “iff” function
 iff function is not limited in number of cases
Summation & Product iterated operators
 SIGMA summation operator
 PI product operator
 SIGMA summation operator – Approximating sin(x) by Taylor series
 SIGMA summation operator – Approximating pi value by integrating sqrt(1x^2)
Derivatives & Integrals
 General derivative
 Left / right derivative
 Derivative from more complex function
 Derivative – alternative syntax
 Integrals – calculating pi by integration sqrt(1x^2)
Solving equation f(x) = 0
 Solve 2x4 = 0 for x in [0, 10]
 Solve cos(x) = 0 for x in [0, pi]
 Solve cos(x) = 0 for x in [pi, pi] (root not bracketed)
 Solve xy = 0 for x in [0, 10] and y = 4
 Solve sin'(x) = 0 for x in [0, pi]
Prime Numbers
 Primality test function
 Primes counting function
 Using builtin primes cache to accelerate calculations
 Estimating number of primes using Offset logarithmic integral function
 Prime factorization
Builtin constants
 Using builtin constants
 Estimating Moon gravitational acceleration
 Getting list of constants
Builtin Units
 Units of length / distance
 Units of time
 Units of information
 Units of volume
 Express 4 feet in inches
 Express in square kilometers the area of a rectangle measuring 100 meters by 2 kilometers
 List of supported units
Builtin Metric prefixes
 Example: 10 Millions / Kilo
 List of supported metric prefixes
PDF, CDF and Quantile functions
 Expected value estimation using Probability Distribution Function
 Probability estimation using Cumulative Distribution Function – the law of 3*SIGMA
 Calculating quantiles using Inverse Cumulative Distribution Function – males height example assuming males height distribution N(170, 15)
Random numbers
 Random number from uniform continuous distribution
 Random number from uniform discrete distribution
 Random number from normal distribution
 Random number from a given list
 Estimating mean of Normal distribution
 Estimating standard deviation of Normal distribution
 Estimating variance of Normal distribution
Builtin Random Variables
 Random integer
 Random integer N: 10^k ⇐ N ⇐ 10^k for k = 1, 2, …,9
 Random natural number
 Random natural number N ⇐ 10^k for k = 1, 2, …,9
 Uniform continuous distribution U(0,1)
 Normal distribution N(0,1)
User defined Random Variables
 Dependent argument as user defined random variable
 User defined function as user defined random variable – random walk example
Bitwise Operators
 Bitwise unary complement
 Bitwise AND
 Bitwise exclusive OR
 Bitwise inclusive OR
 Signed left / right shift
Fractions
 Fraction (proper) as Number Literal
 Improper Fraction as Number Literal
 Fraction (Mixed Number) as Number Literal
 Fraction (Mixed Numer) and Improper Fraction in one Number Literal
 Operations on Fractions
 Represent double as Fraction
Various numeral systems
 Binary number
 Octal number
 Hexadecimal number
 Unary number
 Unary zero
 Base 1 – 36 number literals
 Base N numeral system
Fast (limited) user defined recursion
 Fibonacci numbers using fast recursion
User defined recursion – not limited
 Fibonacci numbers using user defined recursive function
 Number of recursive parameters is not limited – binomial coefficient definition using user defined recursive function
 Mixing function parameters – part causing recursive calls, other part as ‘typical’ parameter. Below example is presenting definition of Chebyshev polynomial using recursive function.
 Indirect recursion – approximating sin(x) and cos(x)
Unicode math
 The square root √
 The square root of the square root √√
 The square root and parenthesis √()
 The roots of various orders ∜ ∛ √
 SIGMA summation operator ∑
 Unicode name of a user defined argument
 Show all Unicode builtin keywords
 Enable / disable Unicode builtin keywords
 List of Unicode symbols that grammar accepts
Working with NaN – NotaNumber
 NaN in condition
 NaN symbol
 First nonNaN value
Radians Mode / Degrees Mode
 Basic trigonometric function
 Inverse trigonometric function
 Using units of angle being in radians mode
Calculation Steps Register
 Simple Expression
 Dependent User Argument
 User Function
 Expression referencing User Argument and User Function
Inspecting calculation process
 Setting the verbose mode
 Syntax checking
 Lexical syntax checking
 Getting computing time
Playing with expression tokens
 Printing expression tokens
 Using tokens to print expression in a fancy way
 Playing with invalid tokens
Builtin tokens (key words) manipulation
 Removing builtin tokens
 Modifying builtin tokens
 Overriding builtin tokens
Smart rounding settings
 A few words on Floating Point Math
 Why mXparser is based on the double data type?
 Smart rounding options available in mXparser
 Check which rounding settings are currently active
 Example  Only Canonical Rounding option is active
 Example  Only Unit In The Last Place Rounding option is active
 Example  Only Almost Integer Rounding option is active
 Example  None of the rounding options are active
Efficient calculations in the loops
 User expression in the loop + output
 User function in the loop + output
 User argument (dependent) in the loop + output
 User expression in the loop – Performance
 User function in the loop – Performance
 User argument (dependent) in the loop – Performance
Extensive list of settings
 Degrees / Radians Mode
 Attempt To Fix Expression String Mode
 Primes Cache
 Epsilon Comparison / Exact Comparison Mode
 Canonical Rounding Mode
 ULP (Unit In The Last Place) Rounding Mode
 Almost Integers Rounding Mode
 Implied Multiplication Mode
 Unicode Builtin Key Words Mode
 Verbose / Silent Mode
 Override Builtin Tokens Mode
 Modify Builtin Tokens Mode
 Remove Builtin Tokens Mode
 Current Calculation Cancellation
 Setting Console Prefix
 Reaching Console Output String
 Maximum Allowed Recursion Depth
 Double to Fraction Conversion
 Random Generator Selection
 Maximum Threads Number
 Default Settings
Serialization & Deserialization
 SerializationUtils class
 Binary serialization SECURITY WARNING
 Enabling / Disabling binary serialization
 Expression serialization / deserialization from / to byte[]
 Expression serialization / deserialization from / to String
 Expression serialization / deserialization from / to File
 Serialization / Deserialization of complex objects
>>> Click to learn from examples <<<
Math Collection
mXparser provides a rich collection of builtin math functions, math expressions, and math symbols. Familiarize yourself with the scope and the syntax. Math collection internal help is also available directly from the software – see the tutorial and the API documentation for all the details.
 Operators
 Binary Relations
 Boolean Operators
 Bitwise Operators
 Unary Functions
 Binary Functions
 3args Functions
 Variadic Functions
 Random Variables
 Iterated Operators
 Calculus Operators
 Mathematical Constants
 Physical Constants
 Astronomical Constants
 Metric prefixes
 Units
 Parser Symbols
 Number formats
API documentation
API documentation
Did you find the software useful?
Android App that is powered by MathParser.orgmXparser
Other websites
Product  Versions Compatible and additional computed target framework versions. 

.NET  net5.0 was computed. net5.0windows was computed. net6.0 is compatible. net6.0android was computed. net6.0ios was computed. net6.0maccatalyst was computed. net6.0macos was computed. net6.0tvos was computed. net6.0windows was computed. net7.0 was computed. net7.0android was computed. net7.0ios was computed. net7.0maccatalyst was computed. net7.0macos was computed. net7.0tvos was computed. net7.0windows was computed. net8.0 is compatible. net8.0android was computed. net8.0browser was computed. net8.0ios was computed. net8.0maccatalyst was computed. net8.0macos was computed. net8.0tvos was computed. net8.0windows was computed. 
.NET Core  netcoreapp3.0 was computed. netcoreapp3.1 is compatible. 
.NET Standard  netstandard2.1 is compatible. 
.NET Framework  net35 is compatible. net40 was computed. net403 was computed. net45 was computed. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 is compatible. 
MonoAndroid  monoandroid was computed. 
MonoMac  monomac was computed. 
MonoTouch  monotouch was computed. 
Tizen  tizen60 was computed. 
Xamarin.iOS  xamarinios was computed. 
Xamarin.Mac  xamarinmac was computed. 
Xamarin.TVOS  xamarintvos was computed. 
Xamarin.WatchOS  xamarinwatchos was computed. 

.NETCoreApp 3.1
 No dependencies.

.NETFramework 3.5
 No dependencies.

.NETFramework 4.6.2
 No dependencies.

.NETFramework 4.7.2
 No dependencies.

.NETFramework 4.8.1
 No dependencies.

.NETStandard 2.1
 No dependencies.

net6.0
 No dependencies.

net8.0
 No dependencies.
NuGet packages (8)
Showing the top 5 NuGet packages that depend on MathParser.orgmXparser:
Package  Downloads 

FrontLookCoreLibraryAssembly
This package adds an asp.net core class library! 

Meshmakers.Octo.Sdk.Common
General classes for communication of tools, sockets and plugs of Octo Mesh 

LightConversion.Topas4
Library to control optical parametric amplifiers by Light Conversion. 

GenICam
Package Description 

Quirco.OpenXmlTemplater
Package Description 
GitHub repositories (5)
Showing the top 5 popular GitHub repositories that depend on MathParser.orgmXparser:
Repository  Stars 

ArduPilot/MissionPlanner
Mission Planner Ground Control Station for ArduPilot (c# .net)


MUnique/OpenMU
This project aims to create an easy to use, extendable and customizable server for a MMORPG called "MU Online".


MatterHackers/MatterControl
3D printing software for Windows, Mac and Linux


VolcanicArts/VRCOSC
Modular OSC program creator, toolkit, and router made for VRChat. Show your heartrate, time, hardware stats, speech to text, control Spotify, and more! Includes draganddrop prefabs for your avatar.


Kaioru/Edelstein
A v.95.1 Mushroom game server emulator written in C# .NET

Version  Downloads  Last updated 

6.0.0  2,483  5/19/2024 
5.2.1  233,856  2/7/2023 
5.2.0  19,473  1/28/2023 
5.1.0  92,785  11/13/2022 
5.0.7  124,121  8/21/2022 
5.0.6  51,827  5/31/2022 
5.0.5  5,413  5/29/2022 
5.0.4  5,009  5/22/2022 
5.0.3  4,212  5/21/2022 
5.0.2  48,758  4/18/2022 
5.0.1  7,134  4/10/2022 
5.0.0  3,890  4/10/2022 
4.4.3  48,184  5/28/2022 
4.3.4  29,425  5/27/2022 
v.6.0 Picon: 1. Translations: French, German, Italian, Polish, Portuguese, Spanish; 2. NET8.0; 3. New operators (bitwise, division);