ph-math/src/main/java/com/helger/numbercruncher/mathutils/RandomNormal.java
public float nextCentral ()
  {
    // Average 12 uniformly-distributed random values.
    float sum = 0.0f;
    for (int j = 0; j < 12; ++j)
      sum += GENERATOR.nextFloat ();

    // Subtract 6 to center about 0.
    return m_fStddev * (sum - 6) + m_fMean;
  }
public float nextCentral ()
  {
    // Average 12 uniformly-distributed random values.
    float sum = 0.0f;
    for (int j = 0; j < 12; ++j)
      sum += GENERATOR.nextFloat ();

    // Subtract 6 to center about 0.
    return m_fStddev * (sum - 6) + m_fMean;
  }
public float nextCentral ( ) { // Average 12 uniformly-distributed random values. float sum = 0.0f ; for ( int j = 0 ; j < 12 ; ++ j ) sum += GENERATOR . nextFloat ( ) ; // Subtract 6 to center about 0. return m_fStddev * ( sum - 6 ) + m_fMean ; }
Compute the next random value using the Central Limit Theorem, which states
that the averages of sets of uniformly-distributed random values are
normally distributed.
Compute the next random value using the Central Limit Theorem which states that the averages of sets of uniformly - distributed random values are normally distributed .