public void FitTest()
{
double expectedMean = 1.125;
double expectedSigma = 1.01775897605147;
NormalDistribution target;
target = new NormalDistribution();
double[] observations = { 0.10, 0.40, 2.00, 2.00 };
double[] weights = { 0.25, 0.25, 0.25, 0.25 };
target.Fit(observations, weights);
Assert.AreEqual(expectedMean, target.Mean);
Assert.AreEqual(expectedSigma, target.StandardDeviation, 1e-6);
target = new NormalDistribution();
double[] observations2 = { 0.10, 0.10, 0.40, 2.00 };
double[] weights2 = { 0.125, 0.125, 0.25, 0.50 };
target.Fit(observations2, weights2);
Assert.AreEqual(expectedMean, target.Mean);
}