Node:Primitive Numerics,
Next:Bitwise Operations,
Previous:Scientific,
Up:Numbers
21.2.13 Primitive Numeric Functions
Many of Guile's numeric procedures which accept any kind of numbers as
arguments, including complex numbers, are implemented as Scheme
procedures that use the following real numberbased primitives. These
primitives signal an error if they are called with complex arguments.
Return the absolute value of x.

Return the square root of x.

$expt x y

Scheme Procedure 
scm_sys_expt (x, y)

C Function 
Return x raised to the power of y. This
procedure does not accept complex arguments.

Return the arccosine of x.

Return the arctangent of x in the range PI/2 to PI/2.

$atan2 x y

Scheme Procedure 
scm_sys_atan2 (x, y)

C Function 
Return the arc tangent of the two arguments x and
y. This is similar to calculating the arc tangent of
x / y, except that the signs of both arguments
are used to determine the quadrant of the result. This
procedure does not accept complex arguments.

Return e to the power of x, where e is the base of natural
logarithms (2.71828...).

Return the natural logarithm of x.

Return the hyperbolic sine of x.

Return the hyperbolic cosine of x.

Return the hyperbolic tangent of x.

$asinh x

Scheme Procedure 
Return the hyperbolic arcsine of x.

$acosh x

Scheme Procedure 
Return the hyperbolic arccosine of x.

$atanh x

Scheme Procedure 
Return the hyperbolic arctangent of x.

For the hyperbolic arcfunctions, the Guile library exports C functions
corresponding to these Scheme procedures, but taking and returning
arguments of type double
rather than the usual SCM
.
double scm_asinh (double x)

C Function 
double scm_acosh (double x)

C Function 
double scm_atanh (double x)

C Function 
Return the hyperbolic arcsine, arccosine or arctangent of x
respectively.

For all the other Scheme procedures above, except expt
and
atan2
(whose entries specifically mention an equivalent C
function), the equivalent C functions are those provided by the standard
mathematics library. The mapping is as follows.
 Scheme Procedure  C Function

 $abs  fabs

 $sqrt  sqrt

 $sin  sin

 $cos  cos

 $tan  tan

 $asin  asin

 $acos  acos

 $atan  atan

 $exp  exp

 $log  log

 $sinh  sinh

 $cosh  cosh

 $tanh  tanh

Naturally, these C functions expect and return double
arguments.