Esempio n. 1
0
        public void CalculateGeometricMeanTest(double firstValue, double secondValue, double expected)
        {
            ITwoArgumentsCalculator calculator = new GeometricMean();
            double result = calculator.Calculate(4, 4);

            Assert.AreEqual(4, result);
        }
Esempio n. 2
0
        public void CalculateTest(double firstValue, double secondValue, double expected)
        {
            var calculator   = new GeometricMean();
            var actualResult = calculator.Calculate(firstValue, secondValue);

            Assert.AreEqual(expected, actualResult);
        }
Esempio n. 3
0
        public void CalculationTest(double value, double value2, double answer)
        {
            var    calculator = new GeometricMean();
            double actual     = calculator.calculate(value, value2);

            Assert.AreEqual(answer, actual, 0.001);
        }
Esempio n. 4
0
        public void Calcpr(
            double firstElement,
            double secondElement,
            double expected)
        {
            var calculator   = new GeometricMean();
            var actualResult = calculator.Calculate(firstElement, secondElement);

            Assert.AreEqual(expected, actualResult, 0.01);
        }
Esempio n. 5
0
        public void calculateMeans()
        {
            double sum               = 0;
            double inverseSum        = 0;
            double product           = 1;
            int    numberOfResults   = 0;
            double arithmeticalSum   = 0;
            double arithmeticalTotal = 0;

            foreach (BenchmarkStatisticsResult benchmarkStatisticsResult in this)
            {
                if (benchmarkStatisticsResult.Accuracy != double.NaN && benchmarkStatisticsResult.Accuracy > 0)
                {
                    arithmeticalTotal += benchmarkStatisticsResult.NumberOfBranches;
                    arithmeticalSum   += benchmarkStatisticsResult.NumberOfCorrectPredictions;
                    sum        += benchmarkStatisticsResult.Accuracy;
                    inverseSum += 1.0d / benchmarkStatisticsResult.Accuracy;
                    product    *= benchmarkStatisticsResult.Accuracy;
                    numberOfResults++;
                }
            }
            if (numberOfResults != 0)
            {
                ArithmeticMean.Accuracy = sum / numberOfResults;
                GeometricMean.Accuracy  = Math.Pow(product, 1.0d / numberOfResults);
                HarmonicMean.Accuracy   = numberOfResults / inverseSum;
            }
            else
            {
                ArithmeticMean.Accuracy = 0;
                GeometricMean.Accuracy  = 0;
                HarmonicMean.Accuracy   = 0;
            }

            ArithmeticMean.NotifyPropertyChanged(StatisticsResult.PercentAccuracyPropertyChangedEventArgs);
            GeometricMean.NotifyPropertyChanged(StatisticsResult.PercentAccuracyPropertyChangedEventArgs);
            HarmonicMean.NotifyPropertyChanged(StatisticsResult.PercentAccuracyPropertyChangedEventArgs);
        }
Esempio n. 6
0
        public void NegativeGeometricMeanTest()
        {
            var calculator = new GeometricMean();

            Assert.Throws <Exception>(() => calculator.Calculate(-1, 1));
        }
 /// <summary>
 /// SQL Server sends data over in chunks, not all at once
 /// we need to add the groups together
 /// </summary>
 /// <param name="Group"></param>
 public void Merge(GeometricMean Group)
 {
     this.ld.AddRange(Group.ld.ToArray());
 }
Esempio n. 8
0
        public void Exception()
        {
            var calculator = new GeometricMean();

            Assert.Throws <Exception>(() => calculator.Calculate(-10, 10));
        }