Class XoRoShiRo128Plus

java.lang.Object
All Implemented Interfaces:
RandomLongSource, RestorableUniformRandomProvider, UniformRandomProvider

public class XoRoShiRo128Plus
extends LongProvider
A fast 64-bit generator suitable for double generation. This is slightly faster than the all-purpose generator XoRoShiRo128StarStar.

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 XoShiRo256Plus.

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

    • XoRoShiRo128Plus

      public XoRoShiRo128Plus​(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.
    • XoRoShiRo128Plus

      public XoRoShiRo128Plus​(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