public void TestIntegralExp() { var exp = RrFunctions.Exp(0.1); var step = new StepFunction(new[] { 0.0, 5.0 }, new[] { 0.015, 0.010 }, 0.0); var f = exp * step; var integral = f.Integral(0.0); var testVal = integral.Eval(10.0); var expintegral = exp.Integral(0.0); var refVal = 0.015 * (expintegral.Eval(5.0) - expintegral.Eval(0.0)) + 0.01 * (expintegral.Eval(10.0) - expintegral.Eval(5.0)); Assert.IsTrue(DoubleUtils.Equality(testVal, refVal, 1.5 * DoubleUtils.MachineEpsilon)); }