DRand
cern.jet.random.engine

Class DRand

  • All Implemented Interfaces:
    DoubleFunction, IntFunction, Serializable, Cloneable


    public class DRandextends RandomEngine
    Quick medium quality uniform pseudo-random number generator. Produces uniformly distributed int's and long's in the closed intervals [Integer.MIN_VALUE,Integer.MAX_VALUE] and [Long.MIN_VALUE,Long.MAX_VALUE], respectively, as well as float's and double's in the open unit intervals (0.0f,1.0f) and (0.0,1.0), respectively.

    The seed can be any integer satisfying 0 < 4*seed+1 < 232. In other words, there must hold seed >= 0 && seed < 1073741823.

    Quality: This generator follows the multiplicative congruential method of the form

    z(i+1) = a * z(i) (mod m) with a=663608941 (=0X278DDE6DL), m=232.
    z(i) assumes all different values 0 < 4*seed+1 < m during a full period of 230.

    Performance: TO_DO

    Implementation: TO_DO

    Note that this implementation is not synchronized.

    See Also:
    MersenneTwister, Random, Serialized Form
    • Constructor Detail

      • DRand

        public DRand()
        Constructs and returns a random number generator with a default seed, which is a constant.
      • DRand

        public DRand(int seed)
        Constructs and returns a random number generator with the given seed.
        Parameters:
        seed - should not be 0, in such a case DRand.DEFAULT_SEED is substituted.
      • DRand

        public DRand(Date d)
        Constructs and returns a random number generator seeded with the given date.
        Parameters:
        d - typically new java.util.Date()
    • Method Detail

      • nextInt

        public int nextInt()
        Returns a 32 bit uniformly distributed random number in the closed interval [Integer.MIN_VALUE,Integer.MAX_VALUE] (including Integer.MIN_VALUE and Integer.MAX_VALUE).
        Specified by:
        nextInt in class RandomEngine

SCaVis 2.1 © jWork.ORG