Class L64X256Mix

    • Field Detail

      • la

        protected long la
        Per-instance LCG additive parameter (must be odd). Cannot be final to support RestorableUniformRandomProvider.
      • ls

        protected long ls
        State of the LCG generator.
    • Constructor Detail

      • L64X256Mix

        public L64X256Mix​(long[] seed)
        Creates a new instance.
        Parameters:
        seed - Initial seed. If the length is larger than 6, only the first 6 elements will be used; if smaller, the remaining elements will be automatically set. A seed containing all zeros in the last four elements will create a non-functional XBG sub-generator and a low quality output with a period of 264.

        The 1st element is used to set the LCG increment; the least significant bit is set to odd to ensure a full period LCG. The 2nd element is used to set the LCG state.

      • L64X256Mix

        public L64X256Mix​(long seed0,
                          long seed1,
                          long seed2,
                          long seed3,
                          long seed4,
                          long seed5)
        Creates a new instance using a 6 element seed. A seed containing all zeros in the last four elements will create a non-functional XBG sub-generator and a low quality output with a period of 264.

        The 1st element is used to set the LCG increment; the least significant bit is set to odd to ensure a full period LCG. The 2nd element is used to set the LCG state.

        Parameters:
        seed0 - Initial seed element 0.
        seed1 - Initial seed element 1.
        seed2 - Initial seed element 2.
        seed3 - Initial seed element 3.
        seed4 - Initial seed element 4.
        seed5 - Initial seed element 5.
      • L64X256Mix

        protected L64X256Mix​(L64X256Mix source)
        Creates a copy instance.
        Parameters:
        source - Source to copy.