Mxparser - Mxparser

MathParser.org-mXparser
MathParser.org-mXparser logo.png
Původní autořiMariusz Gromada
První vydáníLeden 2010; před 10ti lety (2010-01)
Stabilní uvolnění
4.3.3 / 27. ledna 2019; Před 22 měsíci (2019-01-27)
Úložištěgithub.com/ mariuszgromada/ MathParser.org-mXparser/
NapsánoJáva, C#
PlošinaJVM, Android, .SÍŤ, .NET Core, .NET Standard, Windows Phone, MONO, Xamarin, Xamarin.iOS, Xamarin.Android
LicenceZjednodušené licence BSD
webová stránkamathparser.org

mXparser je open-source matematické výrazy analyzátor / hodnotitel poskytující schopnosti pro výpočet různých výrazů při a doba běhu.[1] Definice výrazů jsou uvedeny jako prostý text a poté jsou ověřeny z hlediska gramatika / syntaxe, konečně spočítáno. Knihovna zdrojový kód je udržována samostatně pro Jáva a C#, poskytující totéž API pro Java / JVM, Android, .SÍŤ a Mono (Vyhovuje specifikaci společného jazyka ). Software je volný, uvolnit a je distribuován pod Zjednodušená licence BSD.

Hlavní funkce / příklady použití

mXparser poskytuje funkce, jako jsou: základní výpočty, integrované konstanty a funkce, operace numerického počtu, iterované operátory, uživatelem definované konstanty, uživatelem definované funkce, uživatelem definovaná rekurze.

Základní operátory[2]

mXparser podporuje základní operátory, jako například: doplněk '+', odčítání '-', násobení '*', divize '/', faktoriál '!', síla '^', modulo '#'.

Výraz E = Nový Výraz("2+3/(4+5)^4");dvojnásobek proti = E.vypočítat();

Binární vztahy[2]

Je možné kombinovat typické výrazy s binární vztahy (jako: větší než '>', méně než '<', rovnost '=', nerovnost '<>', větší nebo rovný '> =', nižší nebo rovný '<='), protože každé vyhodnocení vztahu má za následek buď '1' pro skutečný výsledek, nebo „0“ pro Nepravdivé.

Výraz E = Nový Výraz("(2<3)+5");dvojnásobek proti = E.vypočítat();

Logická logika[2]

Logická logika funguje také za předpokladu ekvivalence '1 as skutečný 'a' 0 jako Nepravdivé '. Podporováno Booleovské operátory zahrnout: A spojení , NEBO disjunkce, NAND Shefferův tah, ANI, XOR Exkluzivní NEBO, Implikace IMP, Konverzní implikace CIMP, Neimplikace materiálu NIMP, CNIMP Konverzní neimplikace, EQV Logické biconditional, Negace.

Výraz E = Nový Výraz("1 --> 0");dvojnásobek proti = E.vypočítat();

Integrované matematické funkce[2]

Podporované běžné matematické funkce (unární, binární a proměnný počet argumentů), včetně: trigonometrické funkce, inverzní trigonometrické funkce, logaritmické funkce, exponenciální funkce, hyperbolické funkce, Inverzní hyperbolické funkce, Čísla zvonků, Lucasova čísla, Stirlingova čísla, funkce počítání prvočísel, exponenciální integrální funkce, logaritmická integrální funkce, offset logaritmický integrál , binomický koeficient a další.

Výraz E = Nový Výraz("sin (0) + ln (2) + log (3,9)");dvojnásobek proti = E.vypočítat();
Výraz E = Nový Výraz(„min (1,2,3,4) + gcd (1000,100,10)“);dvojnásobek proti = E.vypočítat();
Výraz E = Nový Výraz(„if (2 <1, 3, 4)“);dvojnásobek proti = E.vypočítat();
Výraz E = Nový Výraz(„iff (2 <1, 1; 3 <4, 2; 10 <2, 3; 5 <10, 4)“);dvojnásobek proti = E.vypočítat();

Integrované matematické konstanty[2]

Integrované matematické konstanty s vysokou přesností.

Výraz E = Nový Výraz(„sin (pi) + ln (e)“);dvojnásobek proti = E.vypočítat();

Iterované operátory[2]

Iteroval součet a produkt operátory.

Výraz E = Nový Výraz(„součet (i, 1, 10, ln (i))“);dvojnásobek proti = E.vypočítat();
Výraz E = Nový Výraz(„prod (i, 1, 10, sin (i))“);dvojnásobek proti = E.vypočítat();

Numerické diferenciace a integrace[2]

mXparser poskytuje implementaci následujících operací kalkulu: diferenciace a integrace.

Výraz E = Nový Výraz(„der (sin (x), x)“);dvojnásobek proti = E.vypočítat();
Výraz E = Nový Výraz("int (sqrt (1-x ^ 2), x, -1, 1)");dvojnásobek proti = E.vypočítat();

prvočísla Podpěra, podpora[2]

Výraz E = Nový Výraz(„ispr (21)“);dvojnásobek proti = E.vypočítat();
Výraz E = Nový Výraz(„Pi (1 000)“);dvojnásobek proti = E.vypočítat();

Prvky definované uživatelem

Knihovna poskytuje API pro vytváření uživatelem definovaných objektů, jako jsou: konstanty, argumenty, funkce.

Uživatelem definované konstanty[3]

Konstantní t = Nový Konstantní(„t = 2 * pi“);Výraz E = Nový Výraz(„hřích (t)“, t);dvojnásobek proti = E.vypočítat();

Uživatelem definované argumenty[3]

Argument X = Nový Argument(„x = 5“);Argument y = Nový Argument(„y = 2 * x“, X);Výraz E = Nový Výraz(„sin (x) + y“, X, y);dvojnásobek proti = E.vypočítat();

Uživatelem definované funkce[3]

Funkce F = Nový Funkce("f (x, y) = sin (x) + cos (y)");Výraz E = Nový Výraz("f (1,2)", F);dvojnásobek proti = E.vypočítat();

Uživatelem definované variadické funkce[3]

Funkce F = Nový Funkce("f (...) = součet (i, 1, [npar], par (i))");Výraz E = Nový Výraz(„f (1,2,3,4)“, F);dvojnásobek proti = E.vypočítat();

Definováno uživatelem rekurze[3]

Funkce fib = Nový Funkce("fib (n) = iff (n> 1, fib (n-1) + fib (n-2); n = 1, 1; n = 0, 0))");Výraz E = Nový Výraz(„fib (10)“, fib);   dvojnásobek proti = E.vypočítat();

Požadavky[3]

Dokumentace

mXparser - zdrojový kód

Zdrojový kód je udržován a sdílen dne GitHub.[5]

Licenční podmínky

Software je volný, uvolnit a je distribuován pod Zjednodušená licence BSD.

Viz také

Reference

externí odkazy