Eval Function

eval('expression') converts an analytic expression to numeric notation.

SMath uses its symbolic engine, and most functions can be obtained in either analytic or numeric notation. These can be evaluated with either the symbolic "→" or the numeric "=" operator. When the numeric "=" is used, the result is presented in floating-point notation, but the expression is first calculated symbolically. This can sometimes be very time-consuming, drastically reducing calculation speed. If you only need numerical values, eval() can be used to skip the symbolic calculation, significantly increasing calculation speed.

Example:

See the example below, which uses eval() (note the calculation time).

using eval()

If you point at the expression, you will also see the result of the symbolic calculation as a tooltip. Compare the symbolic (tooltip) and numeric ("=") notation.

Now compare the calculation time for the same example without eval(). Pointing at the expression will also show a tooltip saying it's too large to display.

without eval()

Finally, to make this clearer, we'll simplify the calculation above so you can see how complicated the symbolic calculation can get.

simplified example

This page is based on a legacy wiki article by Radovan Omorjan.