Class StableRandomGenerator

  • All Implemented Interfaces:
    NormalizedRandomGenerator

    public class StableRandomGenerator
    extends java.lang.Object
    implements NormalizedRandomGenerator

    This class provides a stable normalized random generator. It samples from a stable distribution with location parameter 0 and scale 1.

    The implementation uses the Chambers-Mallows-Stuck method as described in Handbook of computational statistics: concepts and methods by James E. Gentle, Wolfgang Härdle, Yuichi Mori.

    Since:
    3.0
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      double nextNormalizedDouble()
      Generate a random scalar with zero location and unit scale.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • StableRandomGenerator

        public StableRandomGenerator​(RandomGenerator generator,
                                     double alpha,
                                     double beta)
                              throws NullArgumentException,
                                     OutOfRangeException
        Create a new generator.
        Parameters:
        generator - underlying random generator to use
        alpha - Stability parameter. Must be in range (0, 2]
        beta - Skewness parameter. Must be in range [-1, 1]
        Throws:
        NullArgumentException - if generator is null
        OutOfRangeException - if alpha <= 0 or alpha > 2 or beta < -1 or beta > 1
    • Method Detail

      • nextNormalizedDouble

        public double nextNormalizedDouble()
        Generate a random scalar with zero location and unit scale.
        Specified by:
        nextNormalizedDouble in interface NormalizedRandomGenerator
        Returns:
        a random scalar with zero location and unit scale