public void StdDevTest() { var s = new Descriptives(); s.AddSample(0); s.AddSample(2); Assert.IsTrue(Math.Abs(s.StdDev()-Math.Sqrt(2)) < 1e-12); }
public void WeightedMeanTest() { var s = new Descriptives(); s.AddSample(1,2); Assert.AreEqual(s.Mean(), 1); s.AddSample(2); Assert.IsTrue(System.Math.Abs(s.Mean() - (4.0/3)) < 1e-12); s.AddSample(3, 2); Assert.IsTrue(System.Math.Abs(s.Mean() - 2) < 1e-12); }
public void MeanTest() { var s = new Descriptives(); Assert.IsTrue(Double.IsNaN(s.Mean())); s.AddSample(1); Assert.AreEqual(s.Mean(), 1); s.AddSample(2); Assert.IsTrue(System.Math.Abs(s.Mean() - 1.5) < 1e-12); s.AddSample(3); Assert.IsTrue(System.Math.Abs(s.Mean() - 2) < 1e-12); }
public void MassTest() { var s = new Descriptives(); Assert.AreEqual(s.Mass(),0); s.AddSample(1,0); Assert.AreEqual(s.Mass(),0); s.AddSample(1); Assert.AreEqual(s.Mass(),1); s.AddSample(1,9); Assert.AreEqual(s.Mass(),10); }
public void MinMaxTest() { var s = new Descriptives(); s.AddSample(1); Assert.AreEqual(s.Min(), 1); Assert.AreEqual(s.Max(), 1); s.AddSample(0); Assert.AreEqual(s.Min(), 0); Assert.AreEqual(s.Max(), 1); s.AddSample(2); Assert.AreEqual(s.Min(), 0); Assert.AreEqual(s.Max(), 2); }
/// <summary> /// simulate one ant farm, return true (continue) unless max cube count has been reached /// </summary> private bool Run1() { var s = new Descriptives(); // departure time statistics for this cube var cube = new Cube(m_nAnts, this); for (int t = 0; t < m_nMaxTime; ++t) { int escaped = cube.Step(); s.AddSample(t + 1, escaped); // if escaped on step 0, it's at time 1. if (cube.Empty) break; } double completed; lock (m_summarystats) { completed = m_summarystats.Mass(); if (completed < m_nCubes) m_summarystats.AddSample(s.Mean()); } if (completed+1 == m_nCubes && m_OnCompletion != null) m_OnCompletion(m_summarystats); return completed+1 < m_nCubes; }