\section{Built-in Module \module{cmath}} \declaremodule{builtin}{cmath} \modulesynopsis{Mathematical functions for complex numbers.} This module is always available. It provides access to mathematical functions for complex numbers. The functions are: \begin{funcdesc}{acos}{x} Return the arc cosine of \var{x}. \end{funcdesc} \begin{funcdesc}{acosh}{x} Return the hyperbolic arc cosine of \var{x}. \end{funcdesc} \begin{funcdesc}{asin}{x} Return the arc sine of \var{x}. \end{funcdesc} \begin{funcdesc}{asinh}{x} Return the hyperbolic arc sine of \var{x}. \end{funcdesc} \begin{funcdesc}{atan}{x} Return the arc tangent of \var{x}. \end{funcdesc} \begin{funcdesc}{atanh}{x} Return the hyperbolic arc tangent of \var{x}. \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 the exponential value \code{e**\var{x}}. \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}{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} The module also defines two mathematical constants: \begin{datadesc}{pi} The mathematical constant \emph{pi}, as a real. \end{datadesc} \begin{datadesc}{e} The mathematical constant \emph{e}, as a real. \end{datadesc} Note that the selection of functions is similar, but not identical, to that in module \code{math}\refbimodindex{math}. The reason for having two modules is, that some users aren't interested in complex numbers, and perhaps don't even know what they are. They would rather have \code{math.sqrt(-1)} raise an exception than return a complex number. Also note that the functions defined in \code{cmath} always return a complex number, even if the answer can be expressed as a real number (in which case the complex number has an imaginary part of zero).