DEIMOS
calc script

Name

calc -- evaluate an arbitrary arithmetic statement using GAWK

Purpose

Serve as a general-purpose calculator, evaluating arithmetic
statements of arbitrary complexity. In addition to the normal
functions provided by AWK, this script offers the trigonometric
functions available with GAWK.

Usage

calc [expr]

Arguments

expr = an arithmetic expression

Output

resultant value of the operation

Restrictions

Expressions involving parentheses "()" and/or the
multiplication operator "*" must be enclosed in double quotes
to prevent conflicts with shell expansion.

Note

In addition to all of the usual GAWK functions, the following
functions are available for user convenience:
abs(x) = absolute value of x
nint(x) = nearest integer
log10(x) = common logarithm of x

sind(x) = sine of x (x in degrees)
cosd(x) = cosine of x (x in degrees)

asin(x) = inverse sine of x (result in radians)
acos(x) = inverse cosine of x (result in radians)
atan(x) = inverse tangent of x (result in radians)
asind(x) = inverse sine of x (result in degrees)
acosd(x) = inverse cosine of x (result in degrees)
atan2d(x,y) = inverse tangent of x,y (result in degrees)

Exit values

0 = normal completion
1 = no arguments provided
2 = arithmetic error

Example

calc 1+2 # returns "3"
calc 1 + 2 + 3 # returns "6"
calc "(1+2+3)*4/6" # returns "4"
calc "(1+2+3)*4/6." # returns "3.93443"
calc "int(1.4)" # returns "1"
calc "2*pi" # returns "6.28319"

set a = 1000
calc $a+1 # returns "1001"

calc "sind(45)" # take sin of 45deg; returns "0.707107"

See Also

The shell script calc
DEIMOS script index


Go to: DEIMOS Home Page - Instruments Home Page - Keck Home Page

Last modified: Thu Oct 23 19:14:47 2008