public void TestCase() { var a = new Scalar(0.5); var b = new Complex<Scalar>(new Scalar(0.5), new Scalar(0.0)); var c = new Dual<Scalar>(new Scalar(0.5), new Scalar(0.0)); var aSin = a.Sin(); var bSin = b.Sin(); var cSin = c.Sin(); Assert.True(aSin.Value == bSin.A.Value); Assert.True(aSin.Value == cSin.A.Value); var aCos = a.Cos(); var bCos = b.Cos(); var cCos = c.Cos(); Assert.True(aCos.Value == bCos.A.Value); Assert.True(aCos.Value == cCos.A.Value); var aSinh = a.Sinh(); var bSinh = b.Sinh(); var cSinh = c.Sinh(); Assert.True(aSinh.Value == bSinh.A.Value); Assert.True(aSinh.Value == cSinh.A.Value); var aCosh = a.Cosh(); var bCosh = b.Cosh(); var cCosh = c.Cosh(); Assert.True(aCosh.Value == bCosh.A.Value); Assert.True(aCosh.Value == cCosh.A.Value); var aExp = a.Exp(); var bExp = b.Exp(); var cExp = c.Exp(); Assert.True(aExp.Value == bExp.A.Value); Assert.True(aExp.Value == cExp.A.Value); }