summaryrefslogtreecommitdiffstats
path: root/Doc/librandom.tex
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1997-04-03 22:41:49 (GMT)
committerGuido van Rossum <guido@python.org>1997-04-03 22:41:49 (GMT)
commit571391b963058d5071a5372a4e55cb20c5476622 (patch)
tree263330f7ec90621008ae3a6426e284d1dd73805b /Doc/librandom.tex
parent6191551ad6b122d49878843cb2aab8070f10c180 (diff)
downloadcpython-571391b963058d5071a5372a4e55cb20c5476622.zip
cpython-571391b963058d5071a5372a4e55cb20c5476622.tar.gz
cpython-571391b963058d5071a5372a4e55cb20c5476622.tar.bz2
New stuff by AMK.
Diffstat (limited to 'Doc/librandom.tex')
-rw-r--r--Doc/librandom.tex71
1 files changed, 71 insertions, 0 deletions
diff --git a/Doc/librandom.tex b/Doc/librandom.tex
new file mode 100644
index 0000000..3bc92ce
--- /dev/null
+++ b/Doc/librandom.tex
@@ -0,0 +1,71 @@
+\section{Standard Module \sectcode{random}}
+\stmodindex{random}
+
+This module implements pseudo-random number generators for various
+distributions: on the real line, there are functions to compute normal
+or Gaussian, lognormal, negative exponential, gamma, and beta
+distributions. For generating distribution of angles, the circular
+uniform and von Mises distributions are available.
+
+The module exports the following functions, which are exactly
+equivalent to those in the \code{whrandom} module: \code{choice},
+\code{randint}, \code{random}, \code{uniform}. See the documentation
+for the \code{whrandom} module for these functions.
+
+The following functions specific to the \code{random} module are also
+defined, and all return real values. Function parameters are named
+after the corresponding variables in the distribution's equation, as
+used in common mathematical practice; most of these equations can be
+found in any statistics text.
+
+\renewcommand{\indexsubitem}{(in module random)}
+\begin{funcdesc}{betavariate}{alpha\, beta}
+Beta distribution. Conditions on the parameters are \code{alpha>-1}
+and \code{beta>-1}.
+Returned values will range between 0 and 1.
+\end{funcdesc}
+
+\begin{funcdesc}{cunifvariate}{mean\, arc}
+Circular uniform distribution. \var{mean} is the mean angle, and
+\var{arc} is the range of the distribution, centered around the mean
+angle. Both values must be expressed in radians, and can range
+between 0 and \code{pi}. Returned values will range between
+\code{mean - arc/2} and \code{mean + arc/2}.
+\end{funcdesc}
+
+\begin{funcdesc}{expovariate}{lambd}
+Exponential distribution. \var{lambd} is 1.0 divided by the desired mean.
+(The parameter would be called ``lambda'', but that's also a reserved
+word in Python.) Returned values will range from 0 to positive infinity.
+\end{funcdesc}
+
+\begin{funcdesc}{gamma}{alpha\, beta}
+Gamma distribution. (\emph{Not} the gamma function!)
+Conditions on the parameters are \code{alpha>-1} and \code{beta>0}.
+\end{funcdesc}
+
+\begin{funcdesc}{gauss}{mu\, sigma}
+Gaussian distribution. \var{mu} is the mean, and \var{sigma} is the
+standard deviation. This is slightly faster than the
+\code{normalvariate} function defined below.
+\end{funcdesc}
+
+\begin{funcdesc}{lognormvariate}{mu\, sigma}
+Log normal distribution. If you take the natural logarithm of this
+distribution, you'll get a normal distribution with mean \var{mu} and
+standard deviation \var{sigma} \var{mu} can have any value, and \var{sigma}
+must be greater than zero.
+\end{funcdesc}
+
+\begin{funcdesc}{normalvariate}{mu\, sigma}
+Normal distribution. \var{mu} is the mean, and \var{sigma} is the
+standard deviation.
+\end{funcdesc}
+
+\begin{funcdesc}{vonmisesvariate}{mu\, kappa}
+\var{mu} is the mean angle, expressed in radians between 0 and pi,
+and \var{kappa} is the concentration parameter, which must be greater
+then or equal to zero. If \var{kappa} is equal to zero, this
+distribution reduces to a uniform random angle over the range 0 to
+\code{2*pi}.
+\end{funcdesc}