示例#1
0
        public void Atanh()
        {
            Complex      cd1 = new Complex(1.1, -2.2);
            Complex      cd2 = new Complex(0, -2.2);
            Complex      cd3 = new Complex(1.1, 0);
            Complex      cd4 = new Complex(-1.1, 2.2);
            ComplexFloat cf1 = new ComplexFloat(1.1f, -2.2f);
            ComplexFloat cf2 = new ComplexFloat(0, -2.2f);
            ComplexFloat cf3 = new ComplexFloat(1.1f, 0);
            ComplexFloat cf4 = new ComplexFloat(-1.1f, 2.2f);

            Complex cdt = ComplexMath.Atanh(cd1);

            Assert.AreEqual(cdt.Real, 0.161, TOLERENCE);
            Assert.AreEqual(cdt.Imag, -1.212, TOLERENCE);

            cdt = ComplexMath.Atanh(cd2);
            Assert.AreEqual(cdt.Real, 0, TOLERENCE);
            Assert.AreEqual(cdt.Imag, -1.144, TOLERENCE);

            cdt = ComplexMath.Atanh(cd3);
            Assert.AreEqual(cdt.Real, 1.522, TOLERENCE);
            Assert.AreEqual(cdt.Imag, -1.571, TOLERENCE);

            cdt = ComplexMath.Atanh(cd4);
            Assert.AreEqual(cdt.Real, -0.161, TOLERENCE);
            Assert.AreEqual(cdt.Imag, 1.212, TOLERENCE);

            ComplexFloat cft = ComplexMath.Atanh(cf1);

            Assert.AreEqual(cft.Real, 0.161, TOLERENCE);
            Assert.AreEqual(cft.Imag, -1.212, TOLERENCE);

            cft = ComplexMath.Atanh(cf2);
            Assert.AreEqual(cft.Real, 0, TOLERENCE);
            Assert.AreEqual(cft.Imag, -1.144, TOLERENCE);

            cft = ComplexMath.Atanh(cf3);
            Assert.AreEqual(cft.Real, 1.522, TOLERENCE);
            Assert.AreEqual(cft.Imag, -1.571, TOLERENCE);

            cft = ComplexMath.Atanh(cf4);
            Assert.AreEqual(cft.Real, -0.161, TOLERENCE);
            Assert.AreEqual(cft.Imag, 1.212, TOLERENCE);
        }