Gaussian RNG with min,mid,max constrains
func gaussianRandMMM(min, mid, max float64) float64 {
stdDev := (max - mid) / 3.0
for {
val := rand.NormFloat64()*stdDev + mid
if val < min || val > max {
continue
}
return val
}
}
func gaussianRandMMM(min, mid, max float64) float64 {
stdDev := (max - mid) / 3.0
for {
val := rand.NormFloat64()*stdDev + mid
if val < min || val > max {
continue
}
return val
}
}