TO SUPPORT MY WORK, ORDER A COMMERCIAL LICENSE
THANK YOU!
Tutorial Math Collection API spec Download
Below is the code for JAVA, the code for C# is almost identical.
Case 1: The square root √
import org.mariuszgromada.math.mxparser.*; ... Expression e = new Expression("√2"); mXparser.consolePrintln("Res: " + e.getExpressionString() + " = " + e.calculate());
[mXparser-v.5.0.0] Res: √2 = 1.4142135623730951
Case 2: The square root of the square root √√
import org.mariuszgromada.math.mxparser.*; ... Expression e = new Expression("√√16"); mXparser.consolePrintln("Res: " + e.getExpressionString() + " = " + e.calculate());
[mXparser-v.5.0.0] Res: √√16 = 2.0
Case 3: The square root and parenthesis √()
import org.mariuszgromada.math.mxparser.*; ... Expression e = new Expression("√√(8+8)"); mXparser.consolePrintln("Res: " + e.getExpressionString() + " = " + e.calculate());
[mXparser-v.5.0.0] Res: √√(8+8) = 2.0
Case 4: The roots of various orders ∜ ∛ √
import org.mariuszgromada.math.mxparser.*; ... Expression e = new Expression("∜16 + ∛27 + √16"); mXparser.consolePrintln("Res: " + e.getExpressionString() + " = " + e.calculate());
[mXparser-v.5.0.0] Res: ∜16 + ∛27 + √16 = 9.0
Case 5: SIGMA summation operator ∑
import org.mariuszgromada.math.mxparser.*; ... Expression e = new Expression("∑(i, 1, 5, i^2)"); mXparser.consolePrintln("Res: " + e.getExpressionString() + " = " + e.calculate());
[mXparser-v.5.0.0] Res: ∑(i, 1, 5, i^2) = 55.0
Case 6: Unicode name of a user defined argument
import org.mariuszgromada.math.mxparser.*; ... Argument a = new Argument("α = 2π"); Argument b = new Argument("β = π/2"); Expression e = new Expression("sin(α) + cos(β)", a, b); mXparser.consolePrintln("Res: " + e.getExpressionString() + " = " + e.calculate());
[mXparser-v.5.0.0] Res: sin(α) + cos(β) = 0.0
Case 7: Show all Unicode built-in keywords
import org.mariuszgromada.math.mxparser.*; ... mXparser.consolePrintHelp("unicode");
Help content: # key word type syntax since description - -------- ---- ------ ----- ----------- 5. × <Operator> a × b 5.0 Multiplication - unicode math symbol 6. ⨉ <Operator> a ⨉ b 5.0 Multiplication - unicode math symbol 7. ∙ <Operator> a ∙ b 5.0 Multiplication - unicode math symbol 9. ÷ <Operator> a ÷ b 5.0 Division - unicode math symbol 15. √ <Operator> √x 5.0 Square root function represented as unary left operator - unicode math symbol 16. ∛ <Operator> ∛x 5.0 Cube root function represented as unary left operator - unicode math symbol 17. ∜ <Operator> ∜x 5.0 Fourth root function represented as unary left operator - unicode math symbol 19. ∧ <Boolean Operator> p ∧ q 5.0 Logical conjunction (AND) - unicode math symbol 22. ⊼ <Boolean Operator> p ⊼ q 5.0 NAND - Sheffer stroke - unicode math symbol 24. ~∧ <Boolean Operator> p ~∧ q 5.0 NAND - Sheffer stroke - unicode math symbol 25. ¬& <Boolean Operator> p ¬& q 5.0 NAND - Sheffer stroke - unicode math symbol 26. ¬∧ <Boolean Operator> p ¬∧ q 5.0 NAND - Sheffer stroke - unicode math symbol 29. ¬&& <Boolean Operator> p ¬&& q 5.0 NAND - Sheffer stroke - unicode math symbol 30. ¬/\ <Boolean Operator> p ¬/\ q 5.0 NAND - Sheffer stroke - unicode math symbol 32. ∨ <Boolean Operator> p ∨ q 5.0 Logical disjunction (OR) - unicode math symbol 35. ⊽ <Boolean Operator> p ⊽ q 5.0 Logical NOR - unicode math symbol 37. ~∨ <Boolean Operator> p ~∨ q 5.0 Logical NOR - unicode math symbol 38. ¬| <Boolean Operator> p ¬| q 5.0 Logical NOR - unicode math symbol 39. ¬∨ <Boolean Operator> p ¬∨ q 5.0 Logical NOR - unicode math symbol 42. ¬|| <Boolean Operator> p ¬|| q 5.0 Logical NOR - unicode math symbol 43. ¬\/ <Boolean Operator> p ¬\/ q 5.0 Logical NOR - unicode math symbol 44. ⊻ <Boolean Operator> p ⊻ q 5.0 Exclusive or (XOR) - unicode math symbol 46. ⇒ <Boolean Operator> p ⇒ q 5.0 Implication (IMP) - unicode math symbol 48. ⇐ <Boolean Operator> p ⇐ q 5.0 Converse implication (CIMP) - unicode math symbol 50. ⇏ <Boolean Operator> p ⇏ q 5.0 Material nonimplication (NIMP) - unicode math symbol 52. ⇍ <Boolean Operator> p ⇍ q 5.0 Converse nonimplication (CNIMP) - unicode math symbol 54. ⇔ <Boolean Operator> p ⇔ q 5.0 Logical biconditional (EQV) - unicode math symbol 57. ¬ <Boolean Operator> ¬p 5.0 Negation - unicode math symbol 60. ≠ <Binary Relation> a ≠ b 5.0 Inequation - unicode math symbol 66. ≤ <Binary Relation> a ≤ b 5.0 Lower or equal - unicode math symbol 67. ⋜ <Binary Relation> a ⋜ b 5.0 Lower or equal - unicode math symbol 69. ≥ <Binary Relation> a ≥ b 5.0 Greater or equal - unicode math symbol 70. ⋝ <Binary Relation> a ⋝ b 5.0 Greater or equal - unicode math symbol 251. ∑ <Calculus Operator> ∑(i, from, to, expr, <by>) 5.0 Summation operator - SIGMA - unicode math symbol 252. Σ <Calculus Operator> Σ(i, from, to, expr, <by>) 5.0 Summation operator - SIGMA - unicode math symbol 254. ∏ <Calculus Operator> ∏(i, from, to, expr, <by>) 5.0 Product operator - PI - unicode math symbol 255. ℿ <Calculus Operator> ℿ(i, from, to, expr, <by>) 5.0 Product operator - PI - unicode math symbol 256. Π <Calculus Operator> Π(i, from, to, expr, <by>) 5.0 Product operator - PI - unicode math symbol 258. ∫ <Calculus Operator> ∫(expr, arg, from, to) 5.0 Definite integral operator - unicode math symbol 260. ∂ <Calculus Operator> ∂(expr, arg, <point>) 5.0 Derivative operator - unicode math symbol 262. ∂- <Calculus Operator> ∂-(expr, arg, <point>) 5.0 Left derivative operator - unicode math symbol 264. ∂+ <Calculus Operator> ∂+(expr, arg, <point>) 5.0 Right derivative operator - unicode math symbol 267. ∆ <Calculus Operator> ∆(expr, arg, <delta>) 5.0 Forward difference operator - unicode math symbol 268. Δ <Calculus Operator> Δ(expr, arg, <delta>) 5.0 Forward difference operator - unicode math symbol 270. ∇ <Calculus Operator> ∇(expr, arg, <delta>) 5.0 Backward difference operator - unicode math symbol 278. π <Constant Value> π 5.0 Pi, Archimedes' constant or Ludolph's number - unicode math symbol 279. ℼ <Constant Value> ℼ 5.0 Pi, Archimedes' constant or Ludolph's number - unicode math symbol 282. ℯ <Constant Value> ℯ 5.0 Napier's constant, or Euler's number, base of Natural logarithm - unicode math symbol 283. ⅇ <Constant Value> ⅇ 5.0 Napier's constant, or Euler's number, base of Natural logarithm - unicode math symbol
Case 8: Enable / disable Unicode built-in keywords
import org.mariuszgromada.math.mxparser.*; ... mXparser.disableUnicodeBuiltinKeyWordsMode(); mXparser.consolePrintHelp("unicode");
Help content: # key word type syntax since description - -------- ---- ------ ----- -----------
List of Unicode symbols that grammar accepts
"α" = "\u03b1": can be used as var name "β" = "\u03b2": can be used as var name "γ" = "\u03b3": can be used as var name "δ" = "\u03b4": can be used as var name "ε" = "\u03b5": can be used as var name "ζ" = "\u03b6": can be used as var name "η" = "\u03b7": can be used as var name "θ" = "\u03b8": can be used as var name "ι" = "\u03b9": can be used as var name "κ" = "\u03ba": can be used as var name "λ" = "\u03bb": can be used as var name "μ" = "\u03bc": can be used as var name "ν" = "\u03bd": can be used as var name "ξ" = "\u03be": can be used as var name "ο" = "\u03bf": can be used as var name "π" = "\u03c0": pi constant "ρ" = "\u03c1": can be used as var name "ς" = "\u03c2": can be used as var name "σ" = "\u03c3": can be used as var name "τ" = "\u03c4": can be used as var name "υ" = "\u03c5": can be used as var name "φ" = "\u03c6": can be used as var name "χ" = "\u03c7": can be used as var name "ψ" = "\u03c8": can be used as var name "ω" = "\u03c9": can be used as var name "Α" = "\u0391": can be used as var name "Β" = "\u0392": can be used as var name "Γ" = "\u0393": can be used as var name "Δ" = "\u0394": Forward difference operator "Ε" = "\u0395": can be used as var name "Ζ" = "\u0396": can be used as var name "Η" = "\u0397": can be used as var name "Θ" = "\u0398": can be used as var name "Ι" = "\u0399": can be used as var name "Κ" = "\u039a": can be used as var name "Λ" = "\u039b": can be used as var name "Μ" = "\u039c": can be used as var name "Ν" = "\u039d": can be used as var name "Ξ" = "\u039e": can be used as var name "Ο" = "\u039f": can be used as var name "Π" = "\u03a0": Product operator - PI "Ρ" = "\u03a1": can be used as var name "Σ" = "\u03a3": Summation operator - SIGMA "Τ" = "\u03a4": can be used as var name "Υ" = "\u03a5": can be used as var name "Φ" = "\u03a6": can be used as var name "Χ" = "\u03a7": can be used as var name "Ψ" = "\u03a8": can be used as var name "Ω" = "\u03a9": can be used as var name "∑" = "\u2211": Summation operator - SIGMA "∏" = "\u220f": Product operator - PI "ℿ" = "\u213f": Product operator - PI "∆" = "\u2206": Forward difference operator "∇" = "\u2207": Backward difference operator "∫" = "\u222b": Definite integral operator "ℼ" = "\u213c": pi constant "ℇ" = "\u2107": can be used as var name "ⅇ" = "\u2147": Napier's constant, or Euler's number, base of Natural logarithm "ℯ" = "\u212f": Napier's constant, or Euler's number, base of Natural logarithm "∜" = "\u221c": Fourth root function represented as unary left operator "∛" = "\u221b": Cube root function represented as unary left operator "√" = "\u221a": Square root function represented as unary left operator "∂" = "\u2202": Derivative operator "⊻" = "\u22bb": Exclusive or (XOR) "⊽" = "\u22bd": Logical NOR "⊼" = "\u22bc": NAND - Sheffer stroke "⇔" = "\u21d4": Logical biconditional (EQV) "⇍" = "\u21cd": Converse nonimplication (CNIMP) "⇏" = "\u21cf": Material nonimplication (NIMP) "⇐" = "\u21d0": Converse implication (CIMP) "⇒" = "\u21d2": Implication (IMP) "¬" = "\u00ac": Negation "∧" = "\u2227": And "∨" = "\u2228": Or "⋝" = "\u22dd": Greater or equal "≥" = "\u2265": Greater or equal "⋜" = "\u22dc": Lower or equal "≤" = "\u2264": Lower or equal "≠" = "\u2260": Inequation "÷" = "\u00f7": Division "∙" = "\u2219": Multiplication "⨉" = "\u2a09": Multiplication "×" = "\u00d7": Multiplication
Nuget
Install-Package MathParser.org-mXparser -Version 5.0.2
Maven
<dependency>
<groupid>org.mariuszgromada.math</groupid>
<artifactid>MathParser.org-mXparser</artifactid>
<version>5.0.2</version>
</dependency>
Gradle
implementation 'org.mariuszgromada.math:MathParser.org-mXparser:5.0.2'
Gradle (Kotlin)
implementation("org.mariuszgromada.math:MathParser.org-mXparser:5.0.2")
GitHub
git clone https://github.com/mariuszgromada/MathParser.org-mXparser
OTHER DOWNLOAD OPTIONS
Download latest release – v.5.0.2 Leonis: bin + docDownload latest release – v.5.0.2 Leonis: bin only, includes separate binaries for various .NET platforms and Java versions
NEWS FROM MATHPARSER.ORG
SOURCE CODE
Source code .zipSource code .tar.gz
View on GitHubMathSpace.pl