Exp4j

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in Module:Infobox at line 199: malformed pattern (missing ']').

exp4j is a small Java library for evaluation of mathematical expressions. It implements Dijkstra's Shunting-yard algorithm to translate expressions from infix notation to Reverse Polish notation and calculates the result using a simple Stack algorithm.

Features

  • Variables can be used in expressions
  • exp4j comes with a set of common built-in functions
  • Users can create and use their own custom operators
  • Users can create and use their own custom functions

License terms

exp4j is released under the terms of the Apache License 2.0

Examples of usage

Calculating the result of 3 * \frac{\sin{(\pi)} - 2}{e} can be done in the following way:

Expression e = new ExpressionBuilder("3 * (sin(pi) - 2 )/ e")
        .variables("pi", "e")
        .build()
        .setVariable("pi", Math.PI)
        .setVariable("e", Math.E);
double result = e.evaluate();

See also

References

<templatestyles src="Reflist/styles.css" />

Cite error: Invalid <references> tag; parameter "group" is allowed only.

Use <references />, or <references group="..." />