public void FirstDerivative() { IInterpolation ip = new StepInterpolation(_t, _y); Assert.That(ip.Differentiate(-3.0), Is.EqualTo(0.0)); Assert.That(ip.Differentiate(-2.0), Is.EqualTo(double.NaN)); Assert.That(ip.Differentiate(-1.5), Is.EqualTo(0.0)); Assert.That(ip.Differentiate(-1.0), Is.EqualTo(double.NaN)); Assert.That(ip.Differentiate(-0.5), Is.EqualTo(0.0)); Assert.That(ip.Differentiate(0.0), Is.EqualTo(double.NaN)); Assert.That(ip.Differentiate(0.5), Is.EqualTo(0.0)); Assert.That(ip.Differentiate(1.0), Is.EqualTo(double.NaN)); Assert.That(ip.Differentiate(2.0), Is.EqualTo(double.NaN)); Assert.That(ip.Differentiate(3.0), Is.EqualTo(double.NaN)); Assert.That(ip.Differentiate(4.0), Is.EqualTo(0.0)); }