1998-08-10 16:42:37 -03:00
|
|
|
\section{\module{math} ---
|
1999-04-21 13:29:57 -03:00
|
|
|
Mathematical functions}
|
1998-07-23 14:59:49 -03:00
|
|
|
|
1999-04-21 13:29:57 -03:00
|
|
|
\declaremodule{builtin}{math}
|
1998-07-23 14:59:49 -03:00
|
|
|
\modulesynopsis{Mathematical functions (\function{sin()} etc.).}
|
1994-01-01 21:22:07 -04:00
|
|
|
|
1999-04-21 13:29:57 -03:00
|
|
|
This module is always available. It provides access to the
|
2000-04-03 17:13:55 -03:00
|
|
|
mathematical functions defined by the C standard.
|
|
|
|
|
|
|
|
These functions cannot be used with complex numbers; use the functions
|
|
|
|
of the same name from the \refmodule{cmath} module if you require
|
|
|
|
support for complex numbers. The distinction between functions which
|
|
|
|
support complex numbers and those which don't is made since most users
|
|
|
|
do not want to learn quite as much mathematics as required to
|
|
|
|
understand complex numbers. Receiving an exception instead of a
|
|
|
|
complex result allows earlier detection of the unexpected complex
|
|
|
|
number used as a parameter, so that the programmer can determine how
|
|
|
|
and why it was generated in the first place.
|
|
|
|
|
|
|
|
The following functions provided by this module:
|
1997-09-30 18:59:27 -03:00
|
|
|
|
1994-01-01 21:22:07 -04:00
|
|
|
\begin{funcdesc}{acos}{x}
|
1997-09-30 18:59:27 -03:00
|
|
|
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}
|
|
|
|
|
1998-12-08 12:10:44 -04:00
|
|
|
\begin{funcdesc}{atan2}{y, x}
|
|
|
|
Return \code{atan(\var{y} / \var{x})}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{ceil}{x}
|
1998-01-22 13:37:50 -04:00
|
|
|
Return the ceiling of \var{x} as a real.
|
1997-09-30 18:59:27 -03:00
|
|
|
\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}
|
1997-11-24 21:00:40 -04:00
|
|
|
Return \code{e**\var{x}}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{fabs}{x}
|
|
|
|
Return the absolute value of the real \var{x}.
|
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{floor}{x}
|
1998-01-22 13:37:50 -04:00
|
|
|
Return the floor of \var{x} as a real.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{fmod}{x, y}
|
1998-01-09 17:26:51 -04:00
|
|
|
Return \code{\var{x} \%\ \var{y}}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{frexp}{x}
|
2000-07-03 03:38:17 -03:00
|
|
|
% Blessed by Tim.
|
|
|
|
Return the mantissa and exponent of \var{x} as the pair
|
|
|
|
\code{(\var{m}, \var{e})}. \var{m} is a float and \var{e} is an
|
|
|
|
integer such that \code{\var{x} == \var{m} * 2**\var{e}}.
|
|
|
|
If \var{x} is zero, returns \code{(0.0, 0)}, otherwise
|
|
|
|
\code{0.5 <= abs(\var{m}) < 1}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{hypot}{x, y}
|
1998-01-09 17:26:51 -04:00
|
|
|
Return the Euclidean distance, \code{sqrt(\var{x}*\var{x} + \var{y}*\var{y})}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{ldexp}{x, i}
|
1997-11-24 21:00:40 -04:00
|
|
|
Return \code{\var{x} * (2**\var{i})}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
1998-01-22 13:37:50 -04:00
|
|
|
\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}
|
|
|
|
|
1997-09-30 18:59:27 -03:00
|
|
|
\begin{funcdesc}{modf}{x}
|
|
|
|
Return the fractional and integer parts of \var{x}. Both results
|
1998-01-22 13:37:50 -04:00
|
|
|
carry the sign of \var{x}. The integer part is returned as a real.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{pow}{x, y}
|
1997-11-24 21:00:40 -04:00
|
|
|
Return \code{\var{x}**\var{y}}.
|
1997-09-30 18:59:27 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
2000-05-11 15:19:42 -03:00
|
|
|
\begin{funcdesc}{rint}{x, y}
|
|
|
|
Return the integer nearest to \var{x} as a real.
|
2000-05-11 15:42:27 -03:00
|
|
|
(Only available on platforms where this is in the standard C math library.)
|
2000-05-11 15:19:42 -03:00
|
|
|
\end{funcdesc}
|
|
|
|
|
1997-09-30 18:59:27 -03:00
|
|
|
\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}
|
1994-01-01 21:22:07 -04:00
|
|
|
|
1998-01-22 13:37:50 -04:00
|
|
|
Note that \function{frexp()} and \function{modf()} have a different
|
1999-04-21 13:29:57 -03:00
|
|
|
call/return pattern than their C equivalents: they take a single
|
1998-01-22 13:37:50 -04:00
|
|
|
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).
|
1994-01-01 21:22:07 -04:00
|
|
|
|
|
|
|
The module also defines two mathematical constants:
|
1997-09-30 18:59:27 -03:00
|
|
|
|
1994-01-01 21:22:07 -04:00
|
|
|
\begin{datadesc}{pi}
|
1997-09-30 18:59:27 -03:00
|
|
|
The mathematical constant \emph{pi}.
|
|
|
|
\end{datadesc}
|
|
|
|
|
|
|
|
\begin{datadesc}{e}
|
|
|
|
The mathematical constant \emph{e}.
|
1994-01-01 21:22:07 -04:00
|
|
|
\end{datadesc}
|
1997-07-17 13:34:52 -03:00
|
|
|
|
1997-10-13 19:06:17 -03:00
|
|
|
\begin{seealso}
|
|
|
|
\seemodule{cmath}{Complex number versions of many of these functions.}
|
|
|
|
\end{seealso}
|