blob: b75e1d5808e4813dff467d3828e39e7d4e2e40ad [file] [log] [blame]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Discrete Probability Distributions</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="../../../index.html" title="Math Toolkit">
<link rel="up" href="../stat_tut.html" title="Statistical Distributions Tutorial">
<link rel="prev" href="variates.html" title="Random Variates and Distribution Parameters">
<link rel="next" href="../dist_ref.html" title="Statistical Distributions Reference">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="variates.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../stat_tut.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../dist_ref.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="math_toolkit.dist.stat_tut.dist_params"></a><a class="link" href="dist_params.html" title="Discrete Probability Distributions"> Discrete Probability
Distributions</a>
</h4></div></div></div>
<p>
Note that the <a href="http://en.wikipedia.org/wiki/Discrete_probability_distribution" target="_top">discrete
distributions</a>, including the binomial, negative binomial, Poisson
&amp; Bernoulli, are all mathematically defined as discrete functions:
only integral values of the <a href="http://en.wikipedia.org/wiki/Random_variate" target="_top">random
variate</a> are envisaged and the functions are only defined at these
integral values. However because the method of calculation often uses continuous
functions, it is convenient to treat them as if they were continuous functions,
and permit non-integral values of their parameters.
</p>
<p>
To enforce a strict mathematical model, users may use floor or ceil functions
on the <a href="http://en.wikipedia.org/wiki/Random_variate" target="_top">random
variate</a>, prior to calling the distribution function, to enforce
integral values.
</p>
<p>
For similar reasons, in continuous distributions, parameters like degrees
of freedom that might appear to be integral, are treated as real values
(and are promoted from integer to floating-point if necessary). In this
case however, that there are a small number of situations where non-integral
degrees of freedom do have a genuine meaning.
</p>
<p>
Generally speaking there is no loss of performance from allowing real-values
parameters: the underlying special functions contain optimizations for
integer-valued arguments when applicable.
</p>
<div class="caution"><table border="0" summary="Caution">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../../../doc/src/images/caution.png"></td>
<th align="left">Caution</th>
</tr>
<tr><td align="left" valign="top">
<p>
The quantile function of a discrete distribution will by default return
an integer result that has been <span class="emphasis"><em>rounded outwards</em></span>.
That is to say lower quantiles (where the probability is less than 0.5)
are rounded downward, and upper quantiles (where the probability is greater
than 0.5) are rounded upwards. This behaviour ensures that if an X% quantile
is requested, then <span class="emphasis"><em>at least</em></span> the requested coverage
will be present in the central region, and <span class="emphasis"><em>no more than</em></span>
the requested coverage will be present in the tails.
</p>
<p>
This behaviour can be changed so that the quantile functions are rounded
differently, or even return a real-valued result using <a class="link" href="../../policy/pol_overview.html" title="Policy Overview">Policies</a>.
It is strongly recommended that you read the tutorial <a class="link" href="../../policy/pol_tutorial/understand_dis_quant.html" title="Understanding Quantiles of Discrete Distributions">Understanding
Quantiles of Discrete Distributions</a> before using the quantile
function on a discrete distribution. The <a class="link" href="../../policy/pol_ref/discrete_quant_ref.html" title="Discrete Quantile Policies">reference
docs</a> describe how to change the rounding policy for these distributions.
</p>
</td></tr>
</table></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2006 , 2007, 2008, 2009, 2010 John Maddock, Paul A. Bristow,
Hubert Holin, Xiaogang Zhang, Bruno Lalande, Johan R&#229;de, Gautam Sewani and
Thijs van den Berg<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="variates.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../stat_tut.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../dist_ref.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>