📄 poissondistributiontest.java
字号:
package com.aliasi.test.unit.stats;import com.aliasi.stats.PoissonDistribution;import com.aliasi.test.unit.BaseTestCase;public class PoissonDistributionTest extends BaseTestCase { public void testOne() { PoissonDistribution dist = new PoissonTest(2.0); assertPoissonTwo(dist); } public void testExceptions() { PoissonDistribution dist = new PoissonTest(2.0); assertTrue(Double.NEGATIVE_INFINITY == dist.log2Probability(-1)); assertEquals(0.0,dist.probability(-1),0.005); dist = new PoissonTest(-1.0); try { dist.log2Probability(5); fail(); } catch (IllegalStateException e) { assertTrue(true); } } static void assertSumOne(PoissonDistribution dist) { double sum = 0.0; for (int i = 0; i < 100; ++i) { double logProbI = dist.log2Probability(i); double probI = Math.pow(2.0,logProbI); sum += probI; } assertEquals(1.0,sum,0.005); } static void assertPoissonTwo(PoissonDistribution dist) { assertSumOne(dist); assertEquals(0l,dist.minOutcome()); assertEquals(Long.MAX_VALUE,dist.maxOutcome()); assertEquals(2.0,dist.mean(),0.0001); assertEquals(2.0,dist.variance(),0.0001); } static class PoissonTest extends PoissonDistribution { private final double mLambda; public PoissonTest(double lambda) { mLambda = lambda; } public double mean() { return mLambda; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -