MATH-ELEM(2) MATH-ELEM(2) NAME Math: cbrt, sqrt, pow, pow10, hypot, exp, expm1, log, log10, log1p, cos, cosh, sin, sinh, tan, tanh, acos, asin, acosh, asinh, atan, atanh, atan2, lgamma, erf, erfc, j0, j1, y0, y1, jn, yn - elementary functions of applied mathematics SYNOPSIS include "math.m"; math := load Math Math->PATH; cbrt, sqrt: fn(x: real): real; pow: fn(x, y: real): real; pow10: fn(p: int): real; hypot: fn(x, y: real): real; exp, expm1, log, log10, log1p: fn(x: real): real; cos, cosh, sin, sinh, tan, tanh: fn(x: real): real; acos, asin, acosh, asinh, atan, atanh: fn(x: real): real; atan2: fn(y, x: real) of real; lgamma: fn(x: real): (int,real); erf, erfc: fn(x: real): real; j0, j1, y0, y1: fn(x: real): real; jn, yn: fn(n: int, x: real): real; DESCRIPTION These routines implement the basic elementary functions of applied mathematics. Sqrt(x) computes the square root of x, cbrt(x) the cube root. Pow(x,y) computes x raised to the exponent y; pow10 raises 10 to the integer power n. Hypot(x,y) computes sqrt(x*x+y*y). Exp(x) returns the exponential function of x, and expm1(x) is exp(x)-1. Log(x) returns the natural logarithm of x, while log10(x) returns the logarithm base 10 and log1p(x) returns the loga- rithm of 1+x. The trigonometric functions use radians. The ranges of the inverse functions are: acos in [0,J]; asin in [-J/2,J/2]; atan in [-J/2,J/2]; and atan2(y,x) = arctan(y/x) in [-J,J]; The gamma function is implemented by lgamma(x); the tuple it returns, say (s,lg), encodes the gamma function by G(x) = s*exp(lg). Page 1 Plan 9 (printed 11/22/24) MATH-ELEM(2) MATH-ELEM(2) The hyperbolic trigonometric functions sinh etc. behave as expected. Erf is the error function and erfc(x) is 1-erf(x). The Bessel functions are computed by j0, j1, jn, y0, y1, and yn. SOURCE /libinterp/math.c SEE ALSO math-intro(2) Page 2 Plan 9 (printed 11/22/24)