mirror of
https://github.com/golang/go
synced 2024-11-18 01:04:48 -07:00
math/rand: fix uniform distribution stddev in tests
The standard deviation of a uniform distribution is size / √12. The size of the interval [0, 255] is 256, not 255. While we're here, simplify the expression. The tests previously passed only because the error margin was large enough. Sample observed standard deviations while running tests: 73.7893634666819 73.9221651548294 73.8077961697150 73.9084236069471 73.8968446814785 73.8684209136244 73.9774618960282 73.9523483202549 255 / √12 == 73.6121593216772 256 / √12 == 73.9008344562721 Change-Id: I7bc6cdc11e5d098951f2f2133036f62489275979 Reviewed-on: https://go-review.googlesource.com/51310 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
64bd2c49b4
commit
ca19f2fc78
@ -374,7 +374,7 @@ func testReadUniformity(t *testing.T, n int, seed int64) {
|
||||
// Expect a uniform distribution of byte values, which lie in [0, 255].
|
||||
var (
|
||||
mean = 255.0 / 2
|
||||
stddev = math.Sqrt(255.0 * 255.0 / 12.0)
|
||||
stddev = 256.0 / math.Sqrt(12.0)
|
||||
errorScale = stddev / math.Sqrt(float64(n))
|
||||
)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user