blob: 6046f1e2d5a7b3d40721a20f5834a6df3b20ced2 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>TriangularDistribution (Apache Commons Math 3.3 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="TriangularDistribution (Apache Commons Math 3.3 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/TriangularDistribution.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/distribution/TriangularDistribution.html" target="_top">Frames</a></li>
<li><a href="TriangularDistribution.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.commons.math3.distribution.AbstractRealDistribution">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.math3.distribution</div>
<h2 title="Class TriangularDistribution" class="title">Class TriangularDistribution</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">org.apache.commons.math3.distribution.AbstractRealDistribution</a></li>
<li>
<ul class="inheritance">
<li>org.apache.commons.math3.distribution.TriangularDistribution</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../../org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">TriangularDistribution</span>
extends <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></pre>
<div class="block">Implementation of the triangular real distribution.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.0</dd>
<dt><span class="strong">Version:</span></dt>
<dd>$Id: TriangularDistribution.java 1416643 2012-12-03 19:37:14Z tn $</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="http://en.wikipedia.org/wiki/Triangular_distribution">
Triangular distribution (Wikipedia)</a>,
<a href="../../../../../serialized-form.html#org.apache.commons.math3.distribution.TriangularDistribution">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.commons.math3.distribution.AbstractRealDistribution">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.commons.math3.distribution.<a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></h3>
<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#random">random</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#randomData">randomData</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#SOLVER_DEFAULT_ABSOLUTE_ACCURACY">SOLVER_DEFAULT_ABSOLUTE_ACCURACY</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#TriangularDistribution(double, double, double)">TriangularDistribution</a></strong>(double&nbsp;a,
double&nbsp;c,
double&nbsp;b)</code>
<div class="block">Creates a triangular real distribution using the given lower limit,
upper limit, and mode.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#TriangularDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">TriangularDistribution</a></strong>(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rng,
double&nbsp;a,
double&nbsp;c,
double&nbsp;b)</code>
<div class="block">Creates a triangular distribution.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#cumulativeProbability(double)">cumulativeProbability</a></strong>(double&nbsp;x)</code>
<div class="block">For a random variable <code>X</code> whose values are distributed according
to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#density(double)">density</a></strong>(double&nbsp;x)</code>
<div class="block">Returns the probability density function (PDF) of this distribution
evaluated at the specified point <code>x</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#getMode()">getMode</a></strong>()</code>
<div class="block">Returns the mode <code>c</code> of this distribution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#getNumericalMean()">getNumericalMean</a></strong>()</code>
<div class="block">Use this method to get the numerical value of the mean of this
distribution.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#getNumericalVariance()">getNumericalVariance</a></strong>()</code>
<div class="block">Use this method to get the numerical value of the variance of this
distribution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy</a></strong>()</code>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#getSupportLowerBound()">getSupportLowerBound</a></strong>()</code>
<div class="block">Access the lower bound of the support.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#getSupportUpperBound()">getSupportUpperBound</a></strong>()</code>
<div class="block">Access the upper bound of the support.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability</a></strong>(double&nbsp;p)</code>
<div class="block">Computes the quantile function of this distribution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#isSupportConnected()">isSupportConnected</a></strong>()</code>
<div class="block">Use this method to get information about whether the support is connected,
i.e.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive</a></strong>()</code>
<div class="block">Whether or not the lower bound of support is in the domain of the density
function.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive</a></strong>()</code>
<div class="block">Whether or not the upper bound of support is in the domain of the density
function.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.commons.math3.distribution.AbstractRealDistribution">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.commons.math3.distribution.<a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></h3>
<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#cumulativeProbability(double, double)">cumulativeProbability</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#logDensity(double)">logDensity</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#probability(double)">probability</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#probability(double, double)">probability</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#sample()">sample</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#sample(int)">sample</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="TriangularDistribution(double, double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TriangularDistribution</h4>
<pre>public&nbsp;TriangularDistribution(double&nbsp;a,
double&nbsp;c,
double&nbsp;b)
throws <a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a>,
<a href="../../../../../org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></pre>
<div class="block">Creates a triangular real distribution using the given lower limit,
upper limit, and mode.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>a</code> - Lower limit of this distribution (inclusive).</dd><dd><code>b</code> - Upper limit of this distribution (inclusive).</dd><dd><code>c</code> - Mode of this distribution.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></code> - if <code>a &gt;= b</code> or if <code>c &gt; b</code>.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></code> - if <code>c &lt; a</code>.</dd></dl>
</li>
</ul>
<a name="TriangularDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>TriangularDistribution</h4>
<pre>public&nbsp;TriangularDistribution(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rng,
double&nbsp;a,
double&nbsp;c,
double&nbsp;b)
throws <a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a>,
<a href="../../../../../org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></pre>
<div class="block">Creates a triangular distribution.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rng</code> - Random number generator.</dd><dd><code>a</code> - Lower limit of this distribution (inclusive).</dd><dd><code>b</code> - Upper limit of this distribution (inclusive).</dd><dd><code>c</code> - Mode of this distribution.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></code> - if <code>a &gt;= b</code> or if <code>c &gt; b</code>.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></code> - if <code>c &lt; a</code>.</dd><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getMode()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMode</h4>
<pre>public&nbsp;double&nbsp;getMode()</pre>
<div class="block">Returns the mode <code>c</code> of this distribution.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the mode <code>c</code> of this distribution</dd></dl>
</li>
</ul>
<a name="getSolverAbsoluteAccuracy()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSolverAbsoluteAccuracy</h4>
<pre>protected&nbsp;double&nbsp;getSolverAbsoluteAccuracy()</pre>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.
You can override this method in order to use a Brent solver with an
absolute accuracy different from the default.
<p>
For this distribution, the returned value is not really meaningful,
since exact formulas are implemented for the computation of the
<a href="../../../../../org/apache/commons/math3/distribution/TriangularDistribution.html#inverseCumulativeProbability(double)"><code>inverseCumulativeProbability(double)</code></a> (no solver is invoked).
</p>
<p>
For lower limit <code>a</code> and upper limit <code>b</code>, the current
implementation returns <code>max(ulp(a), ulp(b)</code>.
</p></div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the maximum absolute error in inverse cumulative probability estimates</dd></dl>
</li>
</ul>
<a name="density(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>density</h4>
<pre>public&nbsp;double&nbsp;density(double&nbsp;x)</pre>
<div class="block">Returns the probability density function (PDF) of this distribution
evaluated at the specified point <code>x</code>. In general, the PDF is
the derivative of the <a href="../../../../../org/apache/commons/math3/distribution/RealDistribution.html#cumulativeProbability(double)"><code>CDF</code></a>.
If the derivative does not exist at <code>x</code>, then an appropriate
replacement should be returned, e.g. <code>Double.POSITIVE_INFINITY</code>,
<code>Double.NaN</code>, or the limit inferior or limit superior of the
difference quotient.
For lower limit <code>a</code>, upper limit <code>b</code> and mode <code>c</code>, the
PDF is given by
<ul>
<li><code>2 * (x - a) / [(b - a) * (c - a)]</code> if <code>a &lt;= x &lt; c</code>,</li>
<li><code>2 / (b - a)</code> if <code>x = c</code>,</li>
<li><code>2 * (b - x) / [(b - a) * (b - c)]</code> if <code>c &lt; x &lt;= b</code>,</li>
<li><code>0</code> otherwise.
</ul></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>x</code> - the point at which the PDF is evaluated</dd>
<dt><span class="strong">Returns:</span></dt><dd>the value of the probability density function at point <code>x</code></dd></dl>
</li>
</ul>
<a name="cumulativeProbability(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cumulativeProbability</h4>
<pre>public&nbsp;double&nbsp;cumulativeProbability(double&nbsp;x)</pre>
<div class="block">For a random variable <code>X</code> whose values are distributed according
to this distribution, this method returns <code>P(X &lt;= x)</code>. In other
words, this method represents the (cumulative) distribution function
(CDF) for this distribution.
For lower limit <code>a</code>, upper limit <code>b</code> and mode <code>c</code>, the
CDF is given by
<ul>
<li><code>0</code> if <code>x &lt; a</code>,</li>
<li><code>(x - a)^2 / [(b - a) * (c - a)]</code> if <code>a &lt;= x &lt; c</code>,</li>
<li><code>(c - a) / (b - a)</code> if <code>x = c</code>,</li>
<li><code>1 - (b - x)^2 / [(b - a) * (b - c)]</code> if <code>c &lt; x &lt;= b</code>,</li>
<li><code>1</code> if <code>x &gt; b</code>.</li>
</ul></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>x</code> - the point at which the CDF is evaluated</dd>
<dt><span class="strong">Returns:</span></dt><dd>the probability that a random variable with this
distribution takes a value less than or equal to <code>x</code></dd></dl>
</li>
</ul>
<a name="getNumericalMean()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumericalMean</h4>
<pre>public&nbsp;double&nbsp;getNumericalMean()</pre>
<div class="block">Use this method to get the numerical value of the mean of this
distribution.
For lower limit <code>a</code>, upper limit <code>b</code>, and mode <code>c</code>,
the mean is <code>(a + b + c) / 3</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the mean or <code>Double.NaN</code> if it is not defined</dd></dl>
</li>
</ul>
<a name="getNumericalVariance()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumericalVariance</h4>
<pre>public&nbsp;double&nbsp;getNumericalVariance()</pre>
<div class="block">Use this method to get the numerical value of the variance of this
distribution.
For lower limit <code>a</code>, upper limit <code>b</code>, and mode <code>c</code>,
the variance is <code>(a^2 + b^2 + c^2 - a * b - a * c - b * c) / 18</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the variance (possibly <code>Double.POSITIVE_INFINITY</code> as
for certain cases in <a href="../../../../../org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><code>TDistribution</code></a>) or <code>Double.NaN</code> if it
is not defined</dd></dl>
</li>
</ul>
<a name="getSupportLowerBound()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSupportLowerBound</h4>
<pre>public&nbsp;double&nbsp;getSupportLowerBound()</pre>
<div class="block">Access the lower bound of the support. This method must return the same
value as <code>inverseCumulativeProbability(0)</code>. In other words, this
method must return
<p><code>inf {x in R | P(X <= x) > 0}</code>.</p>
The lower bound of the support is equal to the lower limit parameter
<code>a</code> of the distribution.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>lower bound of the support</dd></dl>
</li>
</ul>
<a name="getSupportUpperBound()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSupportUpperBound</h4>
<pre>public&nbsp;double&nbsp;getSupportUpperBound()</pre>
<div class="block">Access the upper bound of the support. This method must return the same
value as <code>inverseCumulativeProbability(1)</code>. In other words, this
method must return
<p><code>inf {x in R | P(X <= x) = 1}</code>.</p>
The upper bound of the support is equal to the upper limit parameter
<code>b</code> of the distribution.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>upper bound of the support</dd></dl>
</li>
</ul>
<a name="isSupportLowerBoundInclusive()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSupportLowerBoundInclusive</h4>
<pre>public&nbsp;boolean&nbsp;isSupportLowerBoundInclusive()</pre>
<div class="block">Whether or not the lower bound of support is in the domain of the density
function. Returns true iff <code>getSupporLowerBound()</code> is finite and
<code>density(getSupportLowerBound())</code> returns a non-NaN, non-infinite
value.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>true if the lower bound of support is finite and the density
function returns a non-NaN, non-infinite value there</dd></dl>
</li>
</ul>
<a name="isSupportUpperBoundInclusive()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSupportUpperBoundInclusive</h4>
<pre>public&nbsp;boolean&nbsp;isSupportUpperBoundInclusive()</pre>
<div class="block">Whether or not the upper bound of support is in the domain of the density
function. Returns true iff <code>getSupportUpperBound()</code> is finite and
<code>density(getSupportUpperBound())</code> returns a non-NaN, non-infinite
value.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>true if the upper bound of support is finite and the density
function returns a non-NaN, non-infinite value there</dd></dl>
</li>
</ul>
<a name="isSupportConnected()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSupportConnected</h4>
<pre>public&nbsp;boolean&nbsp;isSupportConnected()</pre>
<div class="block">Use this method to get information about whether the support is connected,
i.e. whether all values between the lower and upper bound of the support
are included in the support.
The support of this distribution is connected.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>true</code></dd></dl>
</li>
</ul>
<a name="inverseCumulativeProbability(double)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>inverseCumulativeProbability</h4>
<pre>public&nbsp;double&nbsp;inverseCumulativeProbability(double&nbsp;p)
throws <a href="../../../../../org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></pre>
<div class="block"><strong>Description copied from class:&nbsp;<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#inverseCumulativeProbability(double)">AbstractRealDistribution</a></code></strong></div>
<div class="block">Computes the quantile function of this distribution. For a random
variable <code>X</code> distributed according to this distribution, the
returned value is
<ul>
<li><code>inf{x in R | P(X<=x) >= p}</code> for <code>0 &lt; p &lt;= 1</code>,</li>
<li><code>inf{x in R | P(X<=x) > 0}</code> for <code>p = 0</code>.</li>
</ul>
The default implementation returns
<ul>
<li><a href="../../../../../org/apache/commons/math3/distribution/RealDistribution.html#getSupportLowerBound()"><code>RealDistribution.getSupportLowerBound()</code></a> for <code>p = 0</code>,</li>
<li><a href="../../../../../org/apache/commons/math3/distribution/RealDistribution.html#getSupportUpperBound()"><code>RealDistribution.getSupportUpperBound()</code></a> for <code>p = 1</code>.</li>
</ul></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/distribution/RealDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>p</code> - the cumulative probability</dd>
<dt><span class="strong">Returns:</span></dt><dd>the smallest <code>p</code>-quantile of this distribution
(largest 0-quantile for <code>p = 0</code>)</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></code> - if <code>p &lt; 0</code> or <code>p &gt; 1</code></dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/TriangularDistribution.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/distribution/TriangularDistribution.html" target="_top">Frames</a></li>
<li><a href="TriangularDistribution.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.commons.math3.distribution.AbstractRealDistribution">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2003&#x2013;2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>