blob: e5d7979bfa1d0e3ccc1156965cab26f99253011d [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>RandomDataGenerator (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="RandomDataGenerator (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/RandomDataGenerator.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/random/RandomData.html" title="interface in org.apache.commons.math3.random"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/random/RandomDataGenerator.html" target="_top">Frames</a></li>
<li><a href="RandomDataGenerator.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>Field&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.random</div>
<h2 title="Class RandomDataGenerator" class="title">Class RandomDataGenerator</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>org.apache.commons.math3.random.RandomDataGenerator</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/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">RandomDataGenerator</span>
extends <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>
implements <a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a>, <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></pre>
<div class="block">Implements the <a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random"><code>RandomData</code></a> interface using a <a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a>
instance to generate non-secure data and a <a href="http://docs.oracle.com/javase/6/docs/api/java/security/SecureRandom.html?is-external=true" title="class or interface in java.security"><code>SecureRandom</code></a>
instance to provide data for the <code>nextSecureXxx</code> methods. If no
<code>RandomGenerator</code> is provided in the constructor, the default is
to use a <a href="../../../../../org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random"><code>Well19937c</code></a> generator. To plug in a different
implementation, either implement <code>RandomGenerator</code> directly or
extend <a href="../../../../../org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random"><code>AbstractRandomGenerator</code></a>.
<p>
Supports reseeding the underlying pseudo-random number generator (PRNG). The
<code>SecurityProvider</code> and <code>Algorithm</code> used by the
<code>SecureRandom</code> instance can also be reset.
</p>
<p>
For details on the default PRNGs, see <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Random.html?is-external=true" title="class or interface in java.util"><code>Random</code></a> and
<a href="http://docs.oracle.com/javase/6/docs/api/java/security/SecureRandom.html?is-external=true" title="class or interface in java.security"><code>SecureRandom</code></a>.
</p>
<p>
<strong>Usage Notes</strong>:
<ul>
<li>
Instance variables are used to maintain <code>RandomGenerator</code> and
<code>SecureRandom</code> instances used in data generation. Therefore, to
generate a random sequence of values or strings, you should use just
<strong>one</strong> <code>RandomDataImpl</code> instance repeatedly.</li>
<li>
The "secure" methods are *much* slower. These should be used only when a
cryptographically secure random sequence is required. A secure random
sequence is a sequence of pseudo-random values which, in addition to being
well-dispersed (so no subsequence of values is an any more likely than other
subsequence of the the same length), also has the additional property that
knowledge of values generated up to any point in the sequence does not make
it any easier to predict subsequent values.</li>
<li>
When a new <code>RandomDataImpl</code> is created, the underlying random
number generators are <strong>not</strong> initialized. If you do not
explicitly seed the default non-secure generator, it is seeded with the
current time in milliseconds plus the system identity hash code on first use.
The same holds for the secure generator. If you provide a <code>RandomGenerator</code>
to the constructor, however, this generator is not reseeded by the constructor
nor is it reseeded on first use.</li>
<li>
The <code>reSeed</code> and <code>reSeedSecure</code> methods delegate to the
corresponding methods on the underlying <code>RandomGenerator</code> and
<code>SecureRandom</code> instances. Therefore, <code>reSeed(long)</code>
fully resets the initial state of the non-secure random number generator (so
that reseeding with a specific value always results in the same subsequent
random sequence); whereas reSeedSecure(long) does <strong>not</strong>
reinitialize the secure random number generator (so secure sequences started
with calls to reseedSecure(long) won't be identical).</li>
<li>
This implementation is not synchronized. The underlying <code>RandomGenerator</code>
or <code>SecureRandom</code> instances are not protected by synchronization and
are not guaranteed to be thread-safe. Therefore, if an instance of this class
is concurrently utilized by multiple threads, it is the responsibility of
client code to synchronize access to seeding and data generation methods.
</li>
</ul>
</p></div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="strong">Version:</span></dt>
<dd>$Id: RandomDataGenerator.java 1538368 2013-11-03 13:57:37Z erans $</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../serialized-form.html#org.apache.commons.math3.random.RandomDataGenerator">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== 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/random/RandomDataGenerator.html#RandomDataGenerator()">RandomDataGenerator</a></strong>()</code>
<div class="block">Construct a RandomDataGenerator, using a default random generator as the source
of randomness.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#RandomDataGenerator(org.apache.commons.math3.random.RandomGenerator)">RandomDataGenerator</a></strong>(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rand)</code>
<div class="block">Construct a RandomDataGenerator using the supplied <a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> as
the source of (non-secure) random data.</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><a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#getRandomGenerator()">getRandomGenerator</a></strong>()</code>
<div class="block">Returns the RandomGenerator used to generate non-secure random data.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextBeta(double, double)">nextBeta</a></strong>(double&nbsp;alpha,
double&nbsp;beta)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Beta Distribution</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextBinomial(int, double)">nextBinomial</a></strong>(int&nbsp;numberOfTrials,
double&nbsp;probabilityOfSuccess)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Binomial Distribution</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextCauchy(double, double)">nextCauchy</a></strong>(double&nbsp;median,
double&nbsp;scale)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Cauchy Distribution</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextChiSquare(double)">nextChiSquare</a></strong>(double&nbsp;df)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution"><code>ChiSquare Distribution</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextExponential(double)">nextExponential</a></strong>(double&nbsp;mean)</code>
<div class="block">Generates a random value from the exponential distribution
with specified mean.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextF(double, double)">nextF</a></strong>(double&nbsp;numeratorDf,
double&nbsp;denominatorDf)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution"><code>F Distribution</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextGamma(double, double)">nextGamma</a></strong>(double&nbsp;shape,
double&nbsp;scale)</code>
<div class="block">Generates a random value from the
<a href="../../../../../org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Gamma Distribution</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextGaussian(double, double)">nextGaussian</a></strong>(double&nbsp;mu,
double&nbsp;sigma)</code>
<div class="block">Generates a random value from the Normal (or Gaussian) distribution with
specified mean and standard deviation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextHexString(int)">nextHexString</a></strong>(int&nbsp;len)</code>
<div class="block">Generates a random string of hex characters of length <code>len</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextHypergeometric(int, int, int)">nextHypergeometric</a></strong>(int&nbsp;populationSize,
int&nbsp;numberOfSuccesses,
int&nbsp;sampleSize)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Hypergeometric Distribution</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextInt(int, int)">nextInt</a></strong>(int&nbsp;lower,
int&nbsp;upper)</code>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
and <code>upper</code> (endpoints included).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextLong(long, long)">nextLong</a></strong>(long&nbsp;lower,
long&nbsp;upper)</code>
<div class="block">Generates a uniformly distributed random long integer between
<code>lower</code> and <code>upper</code> (endpoints included).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextPascal(int, double)">nextPascal</a></strong>(int&nbsp;r,
double&nbsp;p)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Pascal Distribution</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextPermutation(int, int)">nextPermutation</a></strong>(int&nbsp;n,
int&nbsp;k)</code>
<div class="block">Generates an integer array of length <code>k</code> whose entries are selected
randomly, without repetition, from the integers <code>0, ..., n - 1</code>
(inclusive).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextPoisson(double)">nextPoisson</a></strong>(double&nbsp;mean)</code>
<div class="block">Generates a random value from the Poisson distribution with the given
mean.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextSample(java.util.Collection, int)">nextSample</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;c,
int&nbsp;k)</code>
<div class="block">Returns an array of <code>k</code> objects selected randomly from the
Collection <code>c</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextSecureHexString(int)">nextSecureHexString</a></strong>(int&nbsp;len)</code>
<div class="block">Generates a random string of hex characters from a secure random
sequence.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextSecureInt(int, int)">nextSecureInt</a></strong>(int&nbsp;lower,
int&nbsp;upper)</code>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
and <code>upper</code> (endpoints included) from a secure random sequence.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextSecureLong(long, long)">nextSecureLong</a></strong>(long&nbsp;lower,
long&nbsp;upper)</code>
<div class="block">Generates a uniformly distributed random long integer between
<code>lower</code> and <code>upper</code> (endpoints included) from a secure random
sequence.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextT(double)">nextT</a></strong>(double&nbsp;df)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><code>T Distribution</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextUniform(double, double)">nextUniform</a></strong>(double&nbsp;lower,
double&nbsp;upper)</code>
<div class="block">Generates a uniformly distributed random value from the open interval
<code>(lower, upper)</code> (i.e., endpoints excluded).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextUniform(double, double, boolean)">nextUniform</a></strong>(double&nbsp;lower,
double&nbsp;upper,
boolean&nbsp;lowerInclusive)</code>
<div class="block">Generates a uniformly distributed random value from the interval
<code>(lower, upper)</code> or the interval <code>[lower, upper)</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/random/RandomDataGenerator.html#nextWeibull(double, double)">nextWeibull</a></strong>(double&nbsp;shape,
double&nbsp;scale)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Weibull Distribution</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextZipf(int, double)">nextZipf</a></strong>(int&nbsp;numberOfElements,
double&nbsp;exponent)</code>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Zipf Distribution</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#reSeed()">reSeed</a></strong>()</code>
<div class="block">Reseeds the random number generator with
<code>System.currentTimeMillis() + System.identityHashCode(this))</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#reSeed(long)">reSeed</a></strong>(long&nbsp;seed)</code>
<div class="block">Reseeds the random number generator with the supplied seed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#reSeedSecure()">reSeedSecure</a></strong>()</code>
<div class="block">Reseeds the secure random number generator with the current time in
milliseconds.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#reSeedSecure(long)">reSeedSecure</a></strong>(long&nbsp;seed)</code>
<div class="block">Reseeds the secure random number generator with the supplied seed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#setSecureAlgorithm(java.lang.String, java.lang.String)">setSecureAlgorithm</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;algorithm,
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;provider)</code>
<div class="block">Sets the PRNG algorithm for the underlying SecureRandom instance using
the Security Provider API.</div>
</td>
</tr>
</table>
<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="RandomDataGenerator()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>RandomDataGenerator</h4>
<pre>public&nbsp;RandomDataGenerator()</pre>
<div class="block">Construct a RandomDataGenerator, using a default random generator as the source
of randomness.
<p>The default generator is a <a href="../../../../../org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random"><code>Well19937c</code></a> seeded
with <code>System.currentTimeMillis() + System.identityHashCode(this))</code>.
The generator is initialized and seeded on first use.</p></div>
</li>
</ul>
<a name="RandomDataGenerator(org.apache.commons.math3.random.RandomGenerator)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RandomDataGenerator</h4>
<pre>public&nbsp;RandomDataGenerator(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rand)</pre>
<div class="block">Construct a RandomDataGenerator using the supplied <a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> as
the source of (non-secure) random data.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rand</code> - the source of (non-secure) random data
(may be null, resulting in the default generator)</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="nextHexString(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextHexString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nextHexString(int&nbsp;len)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random string of hex characters of length <code>len</code>.
<p>
The generated string will be random, but not cryptographically
secure. To generate cryptographically secure strings, use
<a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSecureHexString(int)"><code>RandomData.nextSecureHexString(int)</code></a>.
</p>
<p>
<strong>Algorithm Description:</strong> hex strings are generated using a
2-step process.
<ol>
<li><code>len / 2 + 1</code> binary bytes are generated using the underlying
Random</li>
<li>Each binary byte is translated into 2 hex digits</li>
</ol>
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextHexString(int)">nextHexString</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - the desired string length.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the random string.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>len &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextInt(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextInt</h4>
<pre>public&nbsp;int&nbsp;nextInt(int&nbsp;lower,
int&nbsp;upper)
throws <a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></pre>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
and <code>upper</code> (endpoints included).
<p>
The generated integer will be random, but not cryptographically secure.
To generate cryptographically secure integer sequences, use
<a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSecureInt(int, int)"><code>RandomData.nextSecureInt(int, int)</code></a>.
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextInt(int, int)">nextInt</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>lower</code> - lower bound for generated integer</dd><dd><code>upper</code> - upper bound for generated integer</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random integer greater than or equal to <code>lower</code>
and less than or equal to <code>upper</code></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>lower &gt;= upper</code></dd></dl>
</li>
</ul>
<a name="nextLong(long, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextLong</h4>
<pre>public&nbsp;long&nbsp;nextLong(long&nbsp;lower,
long&nbsp;upper)
throws <a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></pre>
<div class="block">Generates a uniformly distributed random long integer between
<code>lower</code> and <code>upper</code> (endpoints included).
<p>
The generated long integer values will be random, but not
cryptographically secure. To generate cryptographically secure sequences
of longs, use <a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSecureLong(long, long)"><code>RandomData.nextSecureLong(long, long)</code></a>.
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextLong(long, long)">nextLong</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>lower</code> - lower bound for generated long integer</dd><dd><code>upper</code> - upper bound for generated long integer</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random long integer greater than or equal to <code>lower</code> and
less than or equal to <code>upper</code></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>lower &gt;= upper</code></dd></dl>
</li>
</ul>
<a name="nextSecureHexString(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextSecureHexString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nextSecureHexString(int&nbsp;len)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random string of hex characters from a secure random
sequence.
<p>
If cryptographic security is not required, use
<a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextHexString(int)"><code>RandomData.nextHexString(int)</code></a>.
</p>
<p>
<strong>Algorithm Description:</strong> hex strings are generated in
40-byte segments using a 3-step process.
<ol>
<li>
20 random bytes are generated using the underlying
<code>SecureRandom</code>.</li>
<li>
SHA-1 hash is applied to yield a 20-byte binary digest.</li>
<li>
Each byte of the binary digest is converted to 2 hex digits.</li>
</ol>
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSecureHexString(int)">nextSecureHexString</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - the length of the string to be generated</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random string of hex characters of length <code>len</code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>len &lt;= 0</code></dd></dl>
</li>
</ul>
<a name="nextSecureInt(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextSecureInt</h4>
<pre>public&nbsp;int&nbsp;nextSecureInt(int&nbsp;lower,
int&nbsp;upper)
throws <a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></pre>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
and <code>upper</code> (endpoints included) from a secure random sequence.
<p>
Sequences of integers generated using this method will be
cryptographically secure. If cryptographic security is not required,
<a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextInt(int, int)"><code>RandomData.nextInt(int, int)</code></a> should be used instead of this method.</p>
<p>
<strong>Definition</strong>:
<a href="http://en.wikipedia.org/wiki/Cryptographically_secure_pseudo-random_number_generator">
Secure Random Sequence</a></p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSecureInt(int, int)">nextSecureInt</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>lower</code> - lower bound for generated integer</dd><dd><code>upper</code> - upper bound for generated integer</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random integer greater than or equal to <code>lower</code> and less
than or equal to <code>upper</code>.</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>lower &gt;= upper</code>.</dd></dl>
</li>
</ul>
<a name="nextSecureLong(long, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextSecureLong</h4>
<pre>public&nbsp;long&nbsp;nextSecureLong(long&nbsp;lower,
long&nbsp;upper)
throws <a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></pre>
<div class="block">Generates a uniformly distributed random long integer between
<code>lower</code> and <code>upper</code> (endpoints included) from a secure random
sequence.
<p>
Sequences of long values generated using this method will be
cryptographically secure. If cryptographic security is not required,
<a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextLong(long, long)"><code>RandomData.nextLong(long, long)</code></a> should be used instead of this method.</p>
<p>
<strong>Definition</strong>:
<a href="http://en.wikipedia.org/wiki/Cryptographically_secure_pseudo-random_number_generator">
Secure Random Sequence</a></p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSecureLong(long, long)">nextSecureLong</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>lower</code> - lower bound for generated integer</dd><dd><code>upper</code> - upper bound for generated integer</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random long integer greater than or equal to <code>lower</code> and
less than or equal to <code>upper</code>.</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>lower &gt;= upper</code>.</dd></dl>
</li>
</ul>
<a name="nextPoisson(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextPoisson</h4>
<pre>public&nbsp;long&nbsp;nextPoisson(double&nbsp;mean)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the Poisson distribution with the given
mean.
<p>
<strong>Definition</strong>:
<a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda366j.htm">
Poisson Distribution</a></p>
<p>
<strong>Algorithm Description</strong>:
<ul><li> For small means, uses simulation of a Poisson process
using Uniform deviates, as described
<a href="http://irmi.epfl.ch/cmos/Pmmi/interactive/rng7.htm"> here.</a>
The Poisson process (and hence value returned) is bounded by 1000 * mean.</li>
<li> For large means, uses the rejection algorithm described in <br/>
Devroye, Luc. (1981).<i>The Computer Generation of Poisson Random Variables</i>
<strong>Computing</strong> vol. 26 pp. 197-207.</li></ul></p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextPoisson(double)">nextPoisson</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>mean</code> - the mean of the Poisson distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random value following the specified Poisson distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>len &lt;= 0</code></dd></dl>
</li>
</ul>
<a name="nextGaussian(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextGaussian</h4>
<pre>public&nbsp;double&nbsp;nextGaussian(double&nbsp;mu,
double&nbsp;sigma)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the Normal (or Gaussian) distribution with
specified mean and standard deviation.
<p>
<strong>Definition</strong>:
<a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda3661.htm">
Normal Distribution</a></p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextGaussian(double, double)">nextGaussian</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>mu</code> - the mean of the distribution</dd><dd><code>sigma</code> - the standard deviation of the distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random value following the specified Gaussian distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>sigma &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextExponential(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextExponential</h4>
<pre>public&nbsp;double&nbsp;nextExponential(double&nbsp;mean)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the exponential distribution
with specified mean.
<p>
<strong>Definition</strong>:
<a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda3667.htm">
Exponential Distribution</a></p>
<p>
<strong>Algorithm Description</strong>: Uses the Algorithm SA (Ahrens)
from p. 876 in:
[1]: Ahrens, J. H. and Dieter, U. (1972). Computer methods for
sampling from the exponential and normal distributions.
Communications of the ACM, 15, 873-882.
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextExponential(double)">nextExponential</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>mean</code> - the mean of the distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random value following the specified exponential distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>mean &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextGamma(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextGamma</h4>
<pre>public&nbsp;double&nbsp;nextGamma(double&nbsp;shape,
double&nbsp;scale)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block"><p>Generates a random value from the
<a href="../../../../../org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Gamma Distribution</code></a>.</p>
<p>This implementation uses the following algorithms: </p>
<p>For 0 < shape < 1: <br/>
Ahrens, J. H. and Dieter, U., <i>Computer methods for
sampling from gamma, beta, Poisson and binomial distributions.</i>
Computing, 12, 223-246, 1974.</p>
<p>For shape >= 1: <br/>
Marsaglia and Tsang, <i>A Simple Method for Generating
Gamma Variables.</i> ACM Transactions on Mathematical Software,
Volume 26 Issue 3, September, 2000.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>shape</code> - the median of the Gamma distribution</dd><dd><code>scale</code> - the scale parameter of the Gamma distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Gamma(shape, scale) distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>shape &lt;= 0</code> or
<code>scale &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextHypergeometric(int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextHypergeometric</h4>
<pre>public&nbsp;int&nbsp;nextHypergeometric(int&nbsp;populationSize,
int&nbsp;numberOfSuccesses,
int&nbsp;sampleSize)
throws <a href="../../../../../org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a>,
<a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a>,
<a href="../../../../../org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Hypergeometric Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>populationSize</code> - the population size of the Hypergeometric distribution</dd><dd><code>numberOfSuccesses</code> - number of successes in the population of the Hypergeometric distribution</dd><dd><code>sampleSize</code> - the sample size of the Hypergeometric distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Hypergeometric(numberOfSuccesses, sampleSize) 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>numberOfSuccesses &gt; populationSize</code>,
or <code>sampleSize &gt; populationSize</code>.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>populationSize &lt;= 0</code>.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a></code> - if <code>numberOfSuccesses &lt; 0</code>.</dd></dl>
</li>
</ul>
<a name="nextPascal(int, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextPascal</h4>
<pre>public&nbsp;int&nbsp;nextPascal(int&nbsp;r,
double&nbsp;p)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a>,
<a href="../../../../../org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Pascal Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>r</code> - the number of successes of the Pascal distribution</dd><dd><code>p</code> - the probability of success of the Pascal distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Pascal(r, p) distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if the number of successes is not positive</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></code> - if the probability of success is not in the
range <code>[0, 1]</code>.</dd></dl>
</li>
</ul>
<a name="nextT(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextT</h4>
<pre>public&nbsp;double&nbsp;nextT(double&nbsp;df)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><code>T Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>df</code> - the degrees of freedom of the T distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value from the T(df) distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>df &lt;= 0</code></dd></dl>
</li>
</ul>
<a name="nextWeibull(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextWeibull</h4>
<pre>public&nbsp;double&nbsp;nextWeibull(double&nbsp;shape,
double&nbsp;scale)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Weibull Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>shape</code> - the shape parameter of the Weibull distribution</dd><dd><code>scale</code> - the scale parameter of the Weibull distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Weibull(shape, size) distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>shape &lt;= 0</code> or
<code>scale &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextZipf(int, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextZipf</h4>
<pre>public&nbsp;int&nbsp;nextZipf(int&nbsp;numberOfElements,
double&nbsp;exponent)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Zipf Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>numberOfElements</code> - the number of elements of the ZipfDistribution</dd><dd><code>exponent</code> - the exponent of the ZipfDistribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Zipf(numberOfElements, exponent) distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>numberOfElements &lt;= 0</code>
or <code>exponent &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextBeta(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextBeta</h4>
<pre>public&nbsp;double&nbsp;nextBeta(double&nbsp;alpha,
double&nbsp;beta)</pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Beta Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>alpha</code> - first distribution shape parameter</dd><dd><code>beta</code> - second distribution shape parameter</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the beta(alpha, beta) distribution</dd></dl>
</li>
</ul>
<a name="nextBinomial(int, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextBinomial</h4>
<pre>public&nbsp;int&nbsp;nextBinomial(int&nbsp;numberOfTrials,
double&nbsp;probabilityOfSuccess)</pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Binomial Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>numberOfTrials</code> - number of trials of the Binomial distribution</dd><dd><code>probabilityOfSuccess</code> - probability of success of the Binomial distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Binomial(numberOfTrials, probabilityOfSuccess) distribution</dd></dl>
</li>
</ul>
<a name="nextCauchy(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextCauchy</h4>
<pre>public&nbsp;double&nbsp;nextCauchy(double&nbsp;median,
double&nbsp;scale)</pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Cauchy Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>median</code> - the median of the Cauchy distribution</dd><dd><code>scale</code> - the scale parameter of the Cauchy distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the Cauchy(median, scale) distribution</dd></dl>
</li>
</ul>
<a name="nextChiSquare(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextChiSquare</h4>
<pre>public&nbsp;double&nbsp;nextChiSquare(double&nbsp;df)</pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution"><code>ChiSquare Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>df</code> - the degrees of freedom of the ChiSquare distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the ChiSquare(df) distribution</dd></dl>
</li>
</ul>
<a name="nextF(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextF</h4>
<pre>public&nbsp;double&nbsp;nextF(double&nbsp;numeratorDf,
double&nbsp;denominatorDf)
throws <a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates a random value from the <a href="../../../../../org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution"><code>F Distribution</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>numeratorDf</code> - the numerator degrees of freedom of the F distribution</dd><dd><code>denominatorDf</code> - the denominator degrees of freedom of the F distribution</dd>
<dt><span class="strong">Returns:</span></dt><dd>random value sampled from the F(numeratorDf, denominatorDf) distribution</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if
<code>numeratorDf &lt;= 0</code> or <code>denominatorDf &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextUniform(double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextUniform</h4>
<pre>public&nbsp;double&nbsp;nextUniform(double&nbsp;lower,
double&nbsp;upper)
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/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a>,
<a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></pre>
<div class="block">Generates a uniformly distributed random value from the open interval
<code>(lower, upper)</code> (i.e., endpoints excluded).
<p>
<strong>Definition</strong>:
<a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda3662.htm">
Uniform Distribution</a> <code>lower</code> and <code>upper - lower</code> are the
<a href = "http://www.itl.nist.gov/div898/handbook/eda/section3/eda364.htm">
location and scale parameters</a>, respectively.</p>
<p>
<strong>Algorithm Description</strong>: scales the output of
Random.nextDouble(), but rejects 0 values (i.e., will generate another
random double if Random.nextDouble() returns 0). This is necessary to
provide a symmetric output interval (both endpoints excluded).
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextUniform(double, double)">nextUniform</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>lower</code> - the exclusive lower bound of the support</dd><dd><code>upper</code> - the exclusive upper bound of the support</dd>
<dt><span class="strong">Returns:</span></dt><dd>a uniformly distributed random value between lower and upper
(exclusive)</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>lower &gt;= upper</code></dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a></code> - if one of the bounds is infinite</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></code> - if one of the bounds is NaN</dd></dl>
</li>
</ul>
<a name="nextUniform(double, double, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextUniform</h4>
<pre>public&nbsp;double&nbsp;nextUniform(double&nbsp;lower,
double&nbsp;upper,
boolean&nbsp;lowerInclusive)
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/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a>,
<a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></pre>
<div class="block">Generates a uniformly distributed random value from the interval
<code>(lower, upper)</code> or the interval <code>[lower, upper)</code>. The lower
bound is thus optionally included, while the upper bound is always
excluded.
<p>
<strong>Definition</strong>:
<a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda3662.htm">
Uniform Distribution</a> <code>lower</code> and <code>upper - lower</code> are the
<a href = "http://www.itl.nist.gov/div898/handbook/eda/section3/eda364.htm">
location and scale parameters</a>, respectively.</p>
<p>
<strong>Algorithm Description</strong>: if the lower bound is excluded,
scales the output of Random.nextDouble(), but rejects 0 values (i.e.,
will generate another random double if Random.nextDouble() returns 0).
This is necessary to provide a symmetric output interval (both
endpoints excluded).
</p></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextUniform(double, double, boolean)">nextUniform</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>lower</code> - the lower bound of the support</dd><dd><code>upper</code> - the exclusive upper bound of the support</dd><dd><code>lowerInclusive</code> - <code>true</code> if the lower bound is inclusive</dd>
<dt><span class="strong">Returns:</span></dt><dd>uniformly distributed random value in the <code>(lower, upper)</code>
interval, if <code>lowerInclusive</code> is <code>false</code>, or in the
<code>[lower, upper)</code> interval, if <code>lowerInclusive</code> is
<code>true</code></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>lower &gt;= upper</code></dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a></code> - if one of the bounds is infinite</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></code> - if one of the bounds is NaN</dd></dl>
</li>
</ul>
<a name="nextPermutation(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextPermutation</h4>
<pre>public&nbsp;int[]&nbsp;nextPermutation(int&nbsp;n,
int&nbsp;k)
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/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Generates an integer array of length <code>k</code> whose entries are selected
randomly, without repetition, from the integers <code>0, ..., n - 1</code>
(inclusive).
<p>
Generated arrays represent permutations of <code>n</code> taken <code>k</code> at a
time.</p>
This method calls <a href="../../../../../org/apache/commons/math3/util/MathArrays.html#shuffle(int[], org.apache.commons.math3.random.RandomGenerator)"><code>MathArrays.shuffle</code></a> in order to create a random shuffle of the set
of natural numbers <code>{ 0, 1, ..., n - 1 }</code>.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextPermutation(int, int)">nextPermutation</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>n</code> - the domain of the permutation</dd><dd><code>k</code> - the size of the permutation</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random <code>k</code>-permutation of <code>n</code>, as an array of
integers</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>k &gt; n</code>.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>k &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="nextSample(java.util.Collection, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextSample</h4>
<pre>public&nbsp;<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>[]&nbsp;nextSample(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;c,
int&nbsp;k)
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/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></pre>
<div class="block">Returns an array of <code>k</code> objects selected randomly from the
Collection <code>c</code>.
<p>
Sampling from <code>c</code> is without replacement; but if <code>c</code> contains
identical objects, the sample may include repeats. If all elements of
<code>c</code> are distinct, the resulting object array represents a
<a href="http://rkb.home.cern.ch/rkb/AN16pp/node250.html#SECTION0002500000000000000000">
Simple Random Sample</a> of size <code>k</code> from the elements of
<code>c</code>.</p>
This method calls <a href="../../../../../org/apache/commons/math3/random/RandomDataGenerator.html#nextPermutation(int, int)"><code>nextPermutation(c.size(), k)</code></a>
in order to sample the collection.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/random/RandomData.html#nextSample(java.util.Collection, int)">nextSample</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>c</code> - the collection to be sampled</dd><dd><code>k</code> - the size of the sample</dd>
<dt><span class="strong">Returns:</span></dt><dd>a random sample of <code>k</code> elements from <code>c</code></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>k &gt; c.size()</code>.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></code> - if <code>k &lt;= 0</code>.</dd></dl>
</li>
</ul>
<a name="reSeed(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reSeed</h4>
<pre>public&nbsp;void&nbsp;reSeed(long&nbsp;seed)</pre>
<div class="block">Reseeds the random number generator with the supplied seed.
<p>
Will create and initialize if null.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>seed</code> - the seed value to use</dd></dl>
</li>
</ul>
<a name="reSeedSecure()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reSeedSecure</h4>
<pre>public&nbsp;void&nbsp;reSeedSecure()</pre>
<div class="block">Reseeds the secure random number generator with the current time in
milliseconds.
<p>
Will create and initialize if null.
</p></div>
</li>
</ul>
<a name="reSeedSecure(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reSeedSecure</h4>
<pre>public&nbsp;void&nbsp;reSeedSecure(long&nbsp;seed)</pre>
<div class="block">Reseeds the secure random number generator with the supplied seed.
<p>
Will create and initialize if null.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>seed</code> - the seed value to use</dd></dl>
</li>
</ul>
<a name="reSeed()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reSeed</h4>
<pre>public&nbsp;void&nbsp;reSeed()</pre>
<div class="block">Reseeds the random number generator with
<code>System.currentTimeMillis() + System.identityHashCode(this))</code>.</div>
</li>
</ul>
<a name="setSecureAlgorithm(java.lang.String, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSecureAlgorithm</h4>
<pre>public&nbsp;void&nbsp;setSecureAlgorithm(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;algorithm,
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;provider)
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/security/NoSuchAlgorithmException.html?is-external=true" title="class or interface in java.security">NoSuchAlgorithmException</a>,
<a href="http://docs.oracle.com/javase/6/docs/api/java/security/NoSuchProviderException.html?is-external=true" title="class or interface in java.security">NoSuchProviderException</a></pre>
<div class="block">Sets the PRNG algorithm for the underlying SecureRandom instance using
the Security Provider API. The Security Provider API is defined in <a
href =
"http://java.sun.com/j2se/1.3/docs/guide/security/CryptoSpec.html#AppA">
Java Cryptography Architecture API Specification & Reference.</a>
<p>
<strong>USAGE NOTE:</strong> This method carries <i>significant</i>
overhead and may take several seconds to execute.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>algorithm</code> - the name of the PRNG algorithm</dd><dd><code>provider</code> - the name of the provider</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/security/NoSuchAlgorithmException.html?is-external=true" title="class or interface in java.security">NoSuchAlgorithmException</a></code> - if the specified algorithm is not available</dd>
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/security/NoSuchProviderException.html?is-external=true" title="class or interface in java.security">NoSuchProviderException</a></code> - if the specified provider is not installed</dd></dl>
</li>
</ul>
<a name="getRandomGenerator()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getRandomGenerator</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;getRandomGenerator()</pre>
<div class="block">Returns the RandomGenerator used to generate non-secure random data.
<p>
Creates and initializes a default generator if null. Uses a <a href="../../../../../org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random"><code>Well19937c</code></a>
generator with <code>System.currentTimeMillis() + System.identityHashCode(this))</code>
as the default seed.
</p></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the Random used to generate random data</dd><dt><span class="strong">Since:</span></dt>
<dd>3.2</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/RandomDataGenerator.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/random/RandomData.html" title="interface in org.apache.commons.math3.random"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/random/RandomDataGenerator.html" target="_top">Frames</a></li>
<li><a href="RandomDataGenerator.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>Field&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>