diff options
Diffstat (limited to 'commons-math3-3.6.1/docs/apidocs/org/apache/commons/math3/random/RandomDataGenerator.html')
-rw-r--r-- | commons-math3-3.6.1/docs/apidocs/org/apache/commons/math3/random/RandomDataGenerator.html | 1252 |
1 files changed, 1252 insertions, 0 deletions
diff --git a/commons-math3-3.6.1/docs/apidocs/org/apache/commons/math3/random/RandomDataGenerator.html b/commons-math3-3.6.1/docs/apidocs/org/apache/commons/math3/random/RandomDataGenerator.html new file mode 100644 index 0000000..22c0aac --- /dev/null +++ b/commons-math3-3.6.1/docs/apidocs/org/apache/commons/math3/random/RandomDataGenerator.html @@ -0,0 +1,1252 @@ +<!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.6.1 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.6.1 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: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor_summary">Constr</a> | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor_detail">Constr</a> | </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/7/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/7/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/7/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/7/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/7/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/7/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/7/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">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"> </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> 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"> </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,%20double)">nextBeta</a></strong>(double alpha, + double 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,%20double)">nextBinomial</a></strong>(int numberOfTrials, + double 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,%20double)">nextCauchy</a></strong>(double median, + double 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 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 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,%20double)">nextF</a></strong>(double numeratorDf, + double 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,%20double)">nextGamma</a></strong>(double shape, + double 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,%20double)">nextGaussian</a></strong>(double mu, + double 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/7/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 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,%20int,%20int)">nextHypergeometric</a></strong>(int populationSize, + int numberOfSuccesses, + int 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,%20int)">nextInt</a></strong>(int lower, + int 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,%20long)">nextLong</a></strong>(long lower, + long 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,%20double)">nextPascal</a></strong>(int r, + double 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,%20int)">nextPermutation</a></strong>(int n, + int 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 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/7/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,%20int)">nextSample</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a><?> c, + int 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/7/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 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,%20int)">nextSecureInt</a></strong>(int lower, + int 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,%20long)">nextSecureLong</a></strong>(long lower, + long 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 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,%20double)">nextUniform</a></strong>(double lower, + double 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,%20double,%20boolean)">nextUniform</a></strong>(double lower, + double upper, + boolean 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,%20double)">nextWeibull</a></strong>(double shape, + double 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,%20double)">nextZipf</a></strong>(int numberOfElements, + double 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 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 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,%20java.lang.String)">setSecureAlgorithm</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> algorithm, + <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> 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 java.lang.<a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" 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 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 RandomDataGenerator(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a> 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 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> nextHexString(int 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> in interface <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 <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextInt(int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextInt</h4> +<pre>public int nextInt(int lower, + int 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,%20int)"><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,%20int)">nextInt</a></code> in interface <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 >= upper</code></dd></dl> +</li> +</ul> +<a name="nextLong(long, long)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextLong</h4> +<pre>public long nextLong(long lower, + long 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,%20long)"><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,%20long)">nextLong</a></code> in interface <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 >= upper</code></dd></dl> +</li> +</ul> +<a name="nextSecureHexString(int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextSecureHexString</h4> +<pre>public <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> nextSecureHexString(int 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> in interface <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 <= 0</code></dd></dl> +</li> +</ul> +<a name="nextSecureInt(int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextSecureInt</h4> +<pre>public int nextSecureInt(int lower, + int 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,%20int)"><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,%20int)">nextSecureInt</a></code> in interface <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 >= upper</code>.</dd></dl> +</li> +</ul> +<a name="nextSecureLong(long, long)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextSecureLong</h4> +<pre>public long nextSecureLong(long lower, + long 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,%20long)"><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,%20long)">nextSecureLong</a></code> in interface <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 >= upper</code>.</dd></dl> +</li> +</ul> +<a name="nextPoisson(double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextPoisson</h4> +<pre>public long nextPoisson(double 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> in interface <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 <= 0</code></dd></dl> +</li> +</ul> +<a name="nextGaussian(double, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextGaussian</h4> +<pre>public double nextGaussian(double mu, + double 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,%20double)">nextGaussian</a></code> in interface <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 <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextExponential(double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextExponential</h4> +<pre>public double nextExponential(double 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> in interface <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 <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextGamma(double, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextGamma</h4> +<pre>public double nextGamma(double shape, + double 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 <= 0</code> or + <code>scale <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextHypergeometric(int, int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextHypergeometric</h4> +<pre>public int nextHypergeometric(int populationSize, + int numberOfSuccesses, + int 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 > populationSize</code>, + or <code>sampleSize > 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 <= 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 < 0</code>.</dd></dl> +</li> +</ul> +<a name="nextPascal(int, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextPascal</h4> +<pre>public int nextPascal(int r, + double 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 double nextT(double 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 <= 0</code></dd></dl> +</li> +</ul> +<a name="nextWeibull(double, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextWeibull</h4> +<pre>public double nextWeibull(double shape, + double 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 <= 0</code> or + <code>scale <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextZipf(int, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextZipf</h4> +<pre>public int nextZipf(int numberOfElements, + double 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 <= 0</code> + or <code>exponent <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextBeta(double, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextBeta</h4> +<pre>public double nextBeta(double alpha, + double 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 int nextBinomial(int numberOfTrials, + double 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 double nextCauchy(double median, + double 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 double nextChiSquare(double 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 double nextF(double numeratorDf, + double 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 <= 0</code> or <code>denominatorDf <= 0</code>.</dd></dl> +</li> +</ul> +<a name="nextUniform(double, double)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>nextUniform</h4> +<pre>public double nextUniform(double lower, + double 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,%20double)">nextUniform</a></code> in interface <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 >= 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 double nextUniform(double lower, + double upper, + boolean 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,%20double,%20boolean)">nextUniform</a></code> in interface <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 >= 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 int[] nextPermutation(int n, + int 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[],%20org.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,%20int)">nextPermutation</a></code> in interface <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 > 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 <= 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 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] nextSample(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a><?> c, + int 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,%20int)"><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,%20int)">nextSample</a></code> in interface <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 > 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 <= 0</code>.</dd></dl> +</li> +</ul> +<a name="reSeed(long)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>reSeed</h4> +<pre>public void reSeed(long 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 void 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 void reSeedSecure(long 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 void 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 void setSecureAlgorithm(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> algorithm, + <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> provider) + throws <a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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 <a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a> 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: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor_summary">Constr</a> | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor_detail">Constr</a> | </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 © 2003–2016 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> +</body> +</html> |