Transcendental Library
The Transcendental Library
4. Introduction
The Transcendental library implements some common mathematical functions and constants, such as sine and cosine. All functions in the Transcendental library signal errors when given invalid arguments, and Dylan floating point precision contagion rules are obeyed. Precise contagion rules are given for each function below.
Note: The Transcendental library is not available on all platforms. At present, it will work only under HP/UX and Microsoft Windows.
5. Exported Names
The following names are exported from the Transcendental module of the Transcendental library:
$single-pi [Constant]
The value of pi as a <single-float>.
$double-pi [Constant]
The value of pi as a <double-float>.
sin (x :: <real>) => (y :: <float>) [Function]
cos (x :: <real>) => (y :: <float>) [Function]
tan (x :: <real>) => (y :: <float>) [Function]
Returns the sine, cosine, or tangent of x, respectively. x is given in radians.
The floating point precision of the result is given by the precision of x. The result will be a <single-float> if x is an integer.
asin (y :: <real>) => (x :: <float>), -1 <= y <= +1 [Function]
acos (y :: <real>) => (x :: <float>), -1 <= y <= +1 [Function]
Returns the arc sine or arc cosine of y, in radians. If y is not in the range [-1, +1], an error is signalled.
The floating point precision of the result is given by the precision of y. The result will be a <single-float> if y is an integer.
atan (y :: <real>) => (x :: <float>) [Function]
Returns the arc tangent of y, in radians.
The floating point precision of the result is given by the precision of y. The result will be a <single-float> if y is an integer.
atan2 (y :: <real>, x :: <real>) => (z :: <float>) [Function]
Returns the arc tangent of y/x, in radians. x may be zero if y is not zero. The signs of x and y are used to derived what quadrant the angle falls in.
The floating point precision of the result is given by the precision of y/x. The result will be a <single-float> if y/x is an integer.
sinh (x :: <real>) => (y :: <float>) [Function]
cosh (x :: <real>) => (y :: <float>) [Function]
tanh (x :: <real>) => (y :: <float>) [Function]
Returns the hyperbolic sine, hyperbolic cosine, or hyperbolic tangent of x, respectively.
The floating point precision of the result is given by the precision of x. The result will be a <single-float> if x is an integer.
$single-e [Constant]
The value of e as a <single-float>.
$double-e [Constant]
The value of e as a <double-float>.
log (x :: <real>, #key base) => (y :: <float>), x > 0, base > 1 [Function]
Returns the natural logarithm of x in base base. base defaults to the mathematical value of e. If x <= 0 or base <= 1, an error is signalled.
The floating point precision of the result is given by the precision of x. The result will be a <single-float> if x is an integer.
exp (x :: <real>) => (y :: <float>) [Function]
Returns e raised to the power x.
The floating point precision of the result is given by the precision of x.
\^ (b :: <real>, x :: <real>) => (y :: <float>) [G.F. method]
Returns b raised to the power x. If b is 0 and x is not positive, an error is signalled. If b is negative and x is not an integer, an error is signalled.
The floating point precision of the result is given by the precision of b. The result will be a <single-float> if b is an integer.
\^ (b :: <integer>, x :: <integer>) => (y :: <integer>) [G.F. method]
Returns an integer result giving b raised to the power x. If b is 0 and x is not positive, an error is signalled. If x is negative, an error is signalled.
sqrt (x :: <real>) => (y :: <float>), x >= 0 [Function]
Returns the square root of x. If x < 0, an error is signalled.
The floating point precision of the result is given by the precision of x. The result will be a <single-float> if x is an integer.
isqrt (x :: <integer>) => (y :: <integer>), x >= 0 [Function]
Returns the integer square root of x, that is, the greatest integer less than or equal to the exact positive square root of x.
If x < 0, an error is signalled.
6. Unimplemented Functions
We intend to someday implement the following functions, but havent done so yet:
asinh (y :: <real>) => (x :: <float>) [Function]
acosh (y :: <real>) => (x :: <float>) [Function]
atanh (y :: <real>) => (x :: <float>) [Function]
Returns the hyperbolic arc sine, hyperbolic arc cosine, or hyperbolic arc tangent of y, respectively.
The floating point precision of the result is given by the precision of y. The result will be a <single-float> if y is an integer.
Copyright 1994, 1995, 1996, 1997 Carnegie Mellon University. All rights reserved.
Send comments and bug reports to gwydion-bugs@cs.cmu.edu