Class StableRandomGenerator

java.lang.Object
org.apache.commons.math3.random.StableRandomGenerator
All Implemented Interfaces:
NormalizedRandomGenerator

public class StableRandomGenerator extends 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
  • Constructor Details

    • 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 Details

    • 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