\section{\module{math} ---
         Mathematical functions}

\declaremodule{builtin}{math}
\modulesynopsis{Mathematical functions (\function{sin()} etc.).}

This module is always available.  It provides access to the
mathematical functions defined by the C standard.  They are:

\begin{funcdesc}{acos}{x}
Return the arc cosine of \var{x}.
\end{funcdesc}

\begin{funcdesc}{asin}{x}
Return the arc sine of \var{x}.
\end{funcdesc}

\begin{funcdesc}{atan}{x}
Return the arc tangent of \var{x}.
\end{funcdesc}

\begin{funcdesc}{atan2}{y, x}
Return \code{atan(\var{y} / \var{x})}.
\end{funcdesc}

\begin{funcdesc}{ceil}{x}
Return the ceiling of \var{x} as a real.
\end{funcdesc}

\begin{funcdesc}{cos}{x}
Return the cosine of \var{x}.
\end{funcdesc}

\begin{funcdesc}{cosh}{x}
Return the hyperbolic cosine of \var{x}.
\end{funcdesc}

\begin{funcdesc}{exp}{x}
Return \code{e**\var{x}}.
\end{funcdesc}

\begin{funcdesc}{fabs}{x}
Return the absolute value of the real \var{x}.
\end{funcdesc}

\begin{funcdesc}{floor}{x}
Return the floor of \var{x} as a real.
\end{funcdesc}

\begin{funcdesc}{fmod}{x, y}
Return \code{\var{x} \%\ \var{y}}.
\end{funcdesc}

\begin{funcdesc}{frexp}{x}
Return the matissa and exponent for \var{x}.  The mantissa is
positive.
\end{funcdesc}

\begin{funcdesc}{hypot}{x, y}
Return the Euclidean distance, \code{sqrt(\var{x}*\var{x} + \var{y}*\var{y})}.
\end{funcdesc}

\begin{funcdesc}{ldexp}{x, i}
Return \code{\var{x} * (2**\var{i})}.
\end{funcdesc}

\begin{funcdesc}{log}{x}
Return the natural logarithm of \var{x}.
\end{funcdesc}

\begin{funcdesc}{log10}{x}
Return the base-10 logarithm of \var{x}.
\end{funcdesc}

\begin{funcdesc}{modf}{x}
Return the fractional and integer parts of \var{x}.  Both results
carry the sign of \var{x}.  The integer part is returned as a real.
\end{funcdesc}

\begin{funcdesc}{pow}{x, y}
Return \code{\var{x}**\var{y}}.
\end{funcdesc}

\begin{funcdesc}{sin}{x}
Return the sine of \var{x}.
\end{funcdesc}

\begin{funcdesc}{sinh}{x}
Return the hyperbolic sine of \var{x}.
\end{funcdesc}

\begin{funcdesc}{sqrt}{x}
Return the square root of \var{x}.
\end{funcdesc}

\begin{funcdesc}{tan}{x}
Return the tangent of \var{x}.
\end{funcdesc}

\begin{funcdesc}{tanh}{x}
Return the hyperbolic tangent of \var{x}.
\end{funcdesc}

Note that \function{frexp()} and \function{modf()} have a different
call/return pattern than their C equivalents: they take a single
argument and return a pair of values, rather than returning their
second return value through an `output parameter' (there is no such
thing in Python).

The module also defines two mathematical constants:

\begin{datadesc}{pi}
The mathematical constant \emph{pi}.
\end{datadesc}

\begin{datadesc}{e}
The mathematical constant \emph{e}.
\end{datadesc}

\begin{seealso}
  \seemodule{cmath}{Complex number versions of many of these functions.}
\end{seealso}
