public void DerivativeTest2(double a, double b, double c, double x)
        {
            var secondOrderPolynomial = new SecondOrderPolynomial(a, b, c);
            var actualResult          = secondOrderPolynomial.GetNumericalDerivativeValue(x);

            var expectedValue = secondOrderPolynomial.GetDerivativeValue(x);

            Assert.AreEqual(expectedValue, actualResult, 1E-12);
        }
        public void DerivativeTest(double a, double b, double c, double x, double h)
        {
            var secondOrderPolynomial = new SecondOrderPolynomial(a, b, c);

            var derivedPolynomialNum = new NumericDerivative(secondOrderPolynomial, h);
            var actualResult         = derivedPolynomialNum.GetValue(x);

            var expectedValue = secondOrderPolynomial.GetDerivativeValue(x);

            Assert.AreEqual(expectedValue, actualResult, 1E-12);
        }