private static void VerifyLogWithBase(Complex complex)
        {
            Double baseValue = 0.0;
            Double baseLog;

            // verify with Random Int32
            do
            {
                baseValue = Support.GetRandomInt32Value(false);
            }while (0 == baseValue);

            Complex logValue = Complex.Log(complex, baseValue);

            Complex logComplex = Complex.Log(complex);

            baseLog = Math.Log(baseValue);
            Complex expectedLog = logComplex / baseLog;

            if (false == Support.VerifyRealImaginaryProperties(logValue, expectedLog.Real, expectedLog.Imaginary))
            {
                Console.WriteLine("Error LogBase-ErrLoG01571! Log({0}, {1}):{2} != {3} as expected", complex, baseValue, logValue, expectedLog);
                Assert.True(false, "Verification Failed");
            }

            // Verify with Random Double value

            baseValue = 0.0;
            do
            {
                baseValue = Support.GetRandomDoubleValue(false);
            }while (0.0 == baseValue);

            logValue    = Complex.Log(complex, baseValue);
            logComplex  = Complex.Log(complex);
            baseLog     = Math.Log(baseValue);
            expectedLog = logComplex / baseLog;

            if (!Support.VerifyRealImaginaryProperties(logValue, expectedLog.Real, expectedLog.Imaginary))
            {
                Console.WriteLine("Error LogBaseDbL-ErrLoG1598! Log({0}, {1}):{2} != {3} as expected", complex, baseValue, logValue, expectedLog);
                Assert.True(false, "Verification Failed");
            }
        }
Exemplo n.º 2
0
        public static void RunTests_ZeroOneImaginaryOne()
        {
            Complex logValue = Complex.Log(Complex.Zero);

            Support.VerifyRealImaginaryProperties(logValue, double.NegativeInfinity, 0.0, "Verify log of zero");

            // Verify log10 with Zero
            logValue = Complex.Log10(Complex.Zero);
            Support.VerifyRealImaginaryProperties(logValue, double.NegativeInfinity, 0.0, "Verify log10 of zero");

            // Verify log base with Zero
            double baseValue = Support.GetRandomInt32Value(false);

            logValue = Complex.Log(Complex.Zero, baseValue);
            Support.VerifyRealImaginaryProperties(logValue, double.NegativeInfinity, double.NaN, "Verify log base of zero");

            // Verify test results with Zero - One
            VerifyLogWithProperties(Complex.One, Complex.Zero);

            // Verify test results with One - ImaginaryOne
            VerifyLogWithProperties(Complex.One, Complex.ImaginaryOne);
        }
        public static void RunTests_Int32ImplicitCastToComplex()
        {
            VerifyInt32ImplicitCastToComplex(Int32.MinValue);

            for (int i = 0; i < Support.RandomSampleCount; ++i)
            {
                Int32 randomValue = Support.GetRandomInt32Value(true);
                VerifyInt32ImplicitCastToComplex(randomValue);
            }

            VerifyInt32ImplicitCastToComplex(-1);
            VerifyInt32ImplicitCastToComplex(0);
            VerifyInt32ImplicitCastToComplex(1);

            for (int i = 0; i < Support.RandomSampleCount; ++i)
            {
                Int32 randomValue = Support.GetRandomInt32Value(false);
                VerifyInt32ImplicitCastToComplex(randomValue);
            }

            VerifyInt32ImplicitCastToComplex(Int32.MaxValue);
        }
Exemplo n.º 4
0
        private static void VerifyLogWithBase(Complex complex)
        {
            double baseValue = 0.0;
            double baseLog;

            // Verify with Random Int32
            do
            {
                baseValue = Support.GetRandomInt32Value(false);
            }while (0 == baseValue);

            Complex logValue = Complex.Log(complex, baseValue);

            Complex logComplex = Complex.Log(complex);

            baseLog = Math.Log(baseValue);
            Complex expectedLog = logComplex / baseLog;

            Support.VerifyRealImaginaryProperties(logValue, expectedLog.Real, expectedLog.Imaginary,
                                                  string.Format("Log({0}, {1}):{2} != {3} as expected", complex, baseValue, logValue, expectedLog));

            // Verify with Random double value
            baseValue = 0.0;
            do
            {
                baseValue = Support.GetRandomDoubleValue(false);
            }while (0.0 == baseValue);

            logValue    = Complex.Log(complex, baseValue);
            logComplex  = Complex.Log(complex);
            baseLog     = Math.Log(baseValue);
            expectedLog = logComplex / baseLog;

            Support.VerifyRealImaginaryProperties(logValue, expectedLog.Real, expectedLog.Imaginary,
                                                  string.Format("Log({0}, {1}):{2} != {3} as expected", complex, baseValue, logValue, expectedLog));
        }