Class XoRoShiRo128StarStar

java.lang.Object
org.apache.commons.rng.core.BaseProvider
org.apache.commons.rng.core.source64.LongProvider
org.apache.commons.rng.core.source64.XoRoShiRo128StarStar
All Implemented Interfaces:
RandomLongSource, RestorableUniformRandomProvider, UniformRandomProvider

public class XoRoShiRo128StarStar
extends LongProvider
A fast all-purpose 64-bit generator.

This is a member of the Xor-Shift-Rotate family of generators. Memory footprint is 128 bits and the period is 2128-1. Speed is expected to be similar to XoShiRo256StarStar.

Since:
1.3
See Also:
Original source code, xorshiro / xoroshiro generators
  • Field Details

    • state0

      protected long state0
      State 0 of the generator.
    • state1

      protected long state1
      State 1 of the generator.
  • Constructor Details

    • XoRoShiRo128StarStar

      public XoRoShiRo128StarStar​(long[] seed)
      Creates a new instance.
      Parameters:
      seed - Initial seed. If the length is larger than 2, only the first 2 elements will be used; if smaller, the remaining elements will be automatically set. A seed containing all zeros will create a non-functional generator.
    • XoRoShiRo128StarStar

      public XoRoShiRo128StarStar​(long seed0, long seed1)
      Creates a new instance using a 2 element seed. A seed containing all zeros will create a non-functional generator.
      Parameters:
      seed0 - Initial seed element 0.
      seed1 - Initial seed element 1.
  • Method Details