commit | 97d23965e8c8770b2b52263b3576681ece4c43a0 | [log] [tgz] |
---|---|---|
author | aherbert <aherbert@apache.org> | Wed Sep 11 17:10:26 2019 +0100 |
committer | aherbert <aherbert@apache.org> | Wed Sep 11 17:10:26 2019 +0100 |
tree | ce77fa0ce9e8b0f9bc62bb18afa04b57eba2b9bc | |
parent | 7977dfeabc46275afbf99d6dfd24723d095e35ab [diff] |
LogisticsDistribution: Fix the variance computation
diff --git a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/LogisticDistribution.java b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/LogisticDistribution.java index ecf9efb..985e289 100644 --- a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/LogisticDistribution.java +++ b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/LogisticDistribution.java
@@ -105,7 +105,7 @@ /** {@inheritDoc} */ @Override public double getVariance() { - return oneOverScale * oneOverScale * PI_SQUARED_OVER_THREE; + return scale * scale * PI_SQUARED_OVER_THREE; } /** {@inheritDoc} */
diff --git a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LogisticsDistributionTest.java b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LogisticsDistributionTest.java index 1aa6d0e..310d8d8 100644 --- a/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LogisticsDistributionTest.java +++ b/commons-statistics-distribution/src/test/java/org/apache/commons/statistics/distribution/LogisticsDistributionTest.java
@@ -40,6 +40,16 @@ Assertions.assertTrue(d.isSupportConnected()); } + @Test + public void testMeanAndVariance() { + LogisticDistribution d = makeDistribution(); + // Constructor 'location' parameter = mean + Assertions.assertEquals(2.0, d.getMean()); + // Variance = (s^2 * pi^2) / 3 + // Constructor 'scale' parameter = s + Assertions.assertEquals(5 * 5 * Math.PI * Math.PI / 3, d.getVariance()); + } + @Override public LogisticDistribution makeDistribution() { return new LogisticDistribution(2, 5);