ev(1)

ev1

Evaluate expressions

Usage

ev 'expr' ..

Overview

Ev evaluates expressions given on the command line, and sends the results to the standard output, one per line. An expression contains real numbers, function calls, and the following operators:

+ - * / ^

Operators are evaluated left to right, except '^', which is right associative. Powers have the highest precedence; multiplication and division are evaluated before addition and subtraction. Expressions can be grouped with parentheses. All values are double precision real.

The following library of functions is available:

if(cond, then, else)

if cond is greater than zero, then is evaluated, otherwise else is evaluated.

select(N, a1, a2, ..)

return aN (N is rounded to the nearest integer). If N is zero, the number of available arguments is returned.

rand(x)

compute a random number between 0 and 1 based on x.

floor(x)

return largest integer not greater than x.

ceil(x)

return smallest integer not less than x.

sqrt(x)

return square root of x.

exp(x)

compute e to the power of x (e approx = 2.718281828).

log(x)

compute the logarithm of x to the base e.

log10(x)

compute the logarithm of x to the base 10.

sin(x), cos(x), tan(x)

trigonometric functions.

asin(x), acos(x), atan(x)

inverse trigonometric functions.

atan2(y, x)

inverse tangent of y/x (range -pi to pi).

Examples

To pass the square root of two and the sine of .5 to a program:

program `ev 'sqrt(2)' 'sin(.5)'`

Releases

Unchanged in 3 releases since Debian 5.0 (Lenny).

  1. 5.0–7

Author

Greg Ward

From radiance 4R1+20120125-1+b1 in Debian 7 (Wheezy). Parsed by carta from the page's man source.