类 Well512a
java.lang.Object
org.hipparchus.random.AbstractWell
org.hipparchus.random.Well512a
- 所有已实现的接口:
-
Serializable
,RandomGenerator
This class implements the WELL512a pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
This generator is described in a paper by François Panneton, Pierre L'Ecuyer and Makoto Matsumoto Improved Long-Period Generators Based on Linear Recurrences Modulo 2 ACM Transactions on Mathematical Software, 32, 1 (2006). The errata for the paper are in wellrng-errata.txt.
- 另请参阅:
-
嵌套类概要
从类继承的嵌套类/接口 org.hipparchus.random.AbstractWell
AbstractWell.IndexTable
-
字段概要
从类继承的字段 org.hipparchus.random.AbstractWell
index, v
-
构造器概要
构造器说明Well512a()
Creates a new random number generator.Well512a
(int seed) Creates a new random number generator using a single int seed.Well512a
(int[] seed) Creates a new random number generator using an int array seed.Well512a
(long seed) Creates a new random number generator using a single long seed. -
方法概要
修饰符和类型方法说明protected void
Clears the cache used by the default implementation ofRandomGenerator.nextGaussian()
.boolean
Returns the next pseudorandom, uniformly distributedboolean
value from this random number generator's sequence.void
nextBytes
(byte[] bytes) Generates random bytes and places them into a user-supplied byte array.void
nextBytes
(byte[] bytes, int start, int len) Generates random bytes and places them into a user-supplied byte array.double
Returns the next pseudorandom, uniformly distributeddouble
value between0.0
and1.0
from this random number generator's sequence.float
Returns the next pseudorandom, uniformly distributedfloat
value between0.0
and1.0
from this random number generator's sequence.double
Returns the next pseudorandom, Gaussian ("normally") distributeddouble
value with mean0.0
and standard deviation1.0
from this random number generator's sequence.int
nextInt()
Returns the next pseudorandom, uniformly distributedint
value from this random number generator's sequence.int
nextInt
(int n) Returns a pseudorandom, uniformly distributedint
value between 0 (inclusive) and the specified value (exclusive), drawn from this random number generator's sequence.long
nextLong()
Returns the next pseudorandom, uniformly distributedlong
value from this random number generator's sequence.long
nextLong
(long n) Returns a pseudorandom, uniformly distributedint
value between 0 (inclusive) and the specified value (exclusive), drawn from this random number generator's sequence.void
setSeed
(int seed) Sets the seed of the underlying random number generator using anint
seed.void
setSeed
(long seed) Sets the seed of the underlying random number generator using along
seed.toString()
从类继承的方法 org.hipparchus.random.AbstractWell
setSeed
-
构造器详细资料
-
Well512a
public Well512a()Creates a new random number generator.The instance is initialized using the current time as the seed.
-
Well512a
public Well512a(int seed) Creates a new random number generator using a single int seed.- 参数:
-
seed
- the initial seed (32 bits integer)
-
Well512a
public Well512a(int[] seed) Creates a new random number generator using an int array seed.- 参数:
-
seed
- the initial seed (32 bits integers array), if null the seed of the generator will be related to the current time
-
Well512a
public Well512a(long seed) Creates a new random number generator using a single long seed.- 参数:
-
seed
- the initial seed (64 bits integer)
-
-
方法详细资料
-
nextInt
public int nextInt()Returns the next pseudorandom, uniformly distributedint
value from this random number generator's sequence.All 232 possible
int
values should be produced with (approximately) equal probability.- 指定者:
-
nextInt
在接口中RandomGenerator
- 返回:
-
the next pseudorandom, uniformly distributed
int
value from this random number generator's sequence
-
nextBoolean
public boolean nextBoolean()Returns the next pseudorandom, uniformly distributedboolean
value from this random number generator's sequence.- 返回:
-
the next pseudorandom, uniformly distributed
boolean
value from this random number generator's sequence
-
nextDouble
public double nextDouble()Returns the next pseudorandom, uniformly distributeddouble
value between0.0
and1.0
from this random number generator's sequence.- 返回:
-
the next pseudorandom, uniformly distributed
double
value between0.0
and1.0
from this random number generator's sequence
-
nextFloat
public float nextFloat()Returns the next pseudorandom, uniformly distributedfloat
value between0.0
and1.0
from this random number generator's sequence.- 返回:
-
the next pseudorandom, uniformly distributed
float
value between0.0
and1.0
from this random number generator's sequence
-
nextLong
public long nextLong()Returns the next pseudorandom, uniformly distributedlong
value from this random number generator's sequence. All 264 possiblelong
values should be produced with (approximately) equal probability.- 返回:
-
the next pseudorandom, uniformly distributed
long
value from this random number generator's sequence
-
nextBytes
public void nextBytes(byte[] bytes) Generates random bytes and places them into a user-supplied byte array. The number of random bytes produced is equal to the length of the byte array.- 参数:
-
bytes
- the non-null byte array in which to put the random bytes
-
nextBytes
public void nextBytes(byte[] bytes, int start, int len) Generates random bytes and places them into a user-supplied byte array.- 参数:
-
bytes
- the non-null byte array in which to put the random bytes -
start
- the starting index for inserting the generated bytes into the array -
len
- the number of bytes to generate
-
setSeed
public void setSeed(int seed) Sets the seed of the underlying random number generator using anint
seed.Sequences of values generated starting with the same seeds should be identical.
- 指定者:
-
setSeed
在接口中RandomGenerator
- 参数:
-
seed
- the seed value
-
setSeed
public void setSeed(long seed) Sets the seed of the underlying random number generator using along
seed.Sequences of values generated starting with the same seeds should be identical.
- 指定者:
-
setSeed
在接口中RandomGenerator
- 参数:
-
seed
- the seed value
-
nextInt
Returns a pseudorandom, uniformly distributedint
value between 0 (inclusive) and the specified value (exclusive), drawn from this random number generator's sequence.- 指定者:
-
nextInt
在接口中RandomGenerator
- 参数:
-
n
- 要返回的随机数的上限。必须是正数。 - 返回:
-
一个伪随机、均匀分布的
int
值,介于0(包括)和n(不包括)之间。 - 抛出:
-
IllegalArgumentException
- 如果n不是正数。
-
nextLong
public long nextLong(long n) 返回一个伪随机、均匀分布的int
值,介于0(包括)和指定值(不包括)之间,从此随机数生成器的序列中抽取。- 指定者:
-
nextLong
在接口中RandomGenerator
- 参数:
-
n
- 要返回的随机数的上限。必须是正数。 - 返回:
-
一个伪随机、均匀分布的
int
值,介于0(包括)和n(不包括)之间。
-
nextGaussian
public double nextGaussian()返回下一个伪随机、高斯(“正态”)分布的double
值,均值为0.0
,标准差为1.0
,从此随机数生成器的序列中。- 指定者:
-
nextGaussian
在接口中RandomGenerator
- 返回:
-
下一个伪随机、高斯(“正态”)分布的
double
值,均值为0.0
,标准差为1.0
,从此随机数生成器的序列中。
-
clearCache
protected void clearCache()清除默认实现中使用的缓存RandomGenerator.nextGaussian()
。 -
toString
-