|
|
|
@ -52,7 +52,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -8.388608e6, double.PositiveInfinity, double.NegativeInfinity)] |
|
|
|
public void CanComputeComplexCosine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).Cosine(); |
|
|
|
var actual = new Complex(real, imag).Cos(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
@ -73,7 +73,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -8.388608e6, double.NegativeInfinity, double.NegativeInfinity)] |
|
|
|
public void CanComputeComplexSine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).Sine(); |
|
|
|
var actual = new Complex(real, imag).Sin(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
@ -94,7 +94,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-8.388608e6, -1.19209289550780998537e-7, 0.47934123862653449, -1.4659977233982276e-7)] |
|
|
|
public void CanComputeComplexTangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).Tangent(); |
|
|
|
var actual = new Complex(real, imag).Tan(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
@ -111,7 +111,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -8388608.0000000376)] |
|
|
|
public void CanComputeCosecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.Cosecant(value); |
|
|
|
var actual = Trig.Csc(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
|
|
|
|
@ -127,7 +127,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, 0.99999999999999289)] |
|
|
|
public void CanComputeCosine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.Cosine(value); |
|
|
|
var actual = Trig.Cos(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -143,7 +143,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -8388607.999999978)] |
|
|
|
public void CanComputeCotangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.Cotangent(value); |
|
|
|
var actual = Trig.Cot(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
|
|
|
|
@ -159,7 +159,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -8388607.9999999978)] |
|
|
|
public void CanComputeHyperbolicCosecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.HyperbolicCosecant(value); |
|
|
|
var actual = Trig.Csch(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -175,7 +175,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, 1.0000000000000071)] |
|
|
|
public void CanComputeHyperbolicCosine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.HyperbolicCosine(value); |
|
|
|
var actual = Trig.Cosh(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -191,7 +191,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -8388608.0000000574)] |
|
|
|
public void CanComputeHyperbolicCotangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.HyperbolicCotangent(value); |
|
|
|
var actual = Trig.Coth(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -207,7 +207,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, 0.99999999999999289)] |
|
|
|
public void CanComputeHyperbolicSecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.HyperbolicSecant(value); |
|
|
|
var actual = Trig.Sech(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -222,7 +222,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.1920928955078128e-7)] |
|
|
|
public void CanComputeHyperbolicSine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.HyperbolicSine(value); |
|
|
|
var actual = Trig.Sinh(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -238,7 +238,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.1920928955078043e-7)] |
|
|
|
public void CanComputeHyperbolicTangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.HyperbolicTangent(value); |
|
|
|
var actual = Trig.Tanh(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -253,7 +253,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1, -1.5707963267948966)] |
|
|
|
public void CanComputeInverseCosecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseCosecant(value); |
|
|
|
var actual = Trig.Acsc(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -268,7 +268,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, 1.5707964460041861)] |
|
|
|
public void CanComputeInverseCosine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseCosine(value); |
|
|
|
var actual = Trig.Acos(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 15); |
|
|
|
} |
|
|
|
|
|
|
|
@ -284,7 +284,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.5707962075856071)] |
|
|
|
public void CanComputeInverseCotangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseCotangent(value); |
|
|
|
var actual = Trig.Acot(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -300,7 +300,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -16.635532333438693)] |
|
|
|
public void CanComputeInverseHyperbolicCosecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseHyperbolicCosecant(value); |
|
|
|
var actual = Trig.Acsch(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -313,7 +313,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(8388608, 16.635532333438682)] |
|
|
|
public void CanComputeInverseHyperbolicCosine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseHyperbolicCosine(value); |
|
|
|
var actual = Trig.Acosh(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -328,7 +328,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1, double.NegativeInfinity)] |
|
|
|
public void CanComputeInverseHyperbolicCotangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseHyperbolicCotangent(value); |
|
|
|
var actual = Trig.Acoth(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -342,7 +342,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(1, 0.0)] |
|
|
|
public void CanComputeInverseHyperbolicSecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseHyperbolicSecant(value); |
|
|
|
var actual = Trig.Asech(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -358,7 +358,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.1920928955078072e-7)] |
|
|
|
public void CanComputeInverseHyperbolicSine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseHyperbolicSine(value); |
|
|
|
var actual = Trig.Asinh(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -374,7 +374,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.19209289550780998537e-7)] |
|
|
|
public void CanComputeInverseHyperbolicTangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseHyperbolicTangent(value); |
|
|
|
var actual = Trig.Atanh(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -389,7 +389,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.0, 3.1415926535897932)] |
|
|
|
public void CanComputeInverseSecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseSecant(value); |
|
|
|
var actual = Trig.Asec(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -405,7 +405,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.1920928955078128e-7)] |
|
|
|
public void CanComputeInverseSine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseSine(value); |
|
|
|
var actual = Trig.Asin(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -421,7 +421,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.19209289550780998537e-7)] |
|
|
|
public void CanComputeInverseTangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.InverseTangent(value); |
|
|
|
var actual = Trig.Atan(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -437,7 +437,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, 1.0000000000000071)] |
|
|
|
public void CanComputeSecant(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.Secant(value); |
|
|
|
var actual = Trig.Sec(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|
|
|
|
@ -453,7 +453,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.1920928955078072e-7)] |
|
|
|
public void CanComputeSine(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.Sine(value); |
|
|
|
var actual = Trig.Sin(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
|
|
|
|
@ -469,7 +469,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-1.19209289550780998537e-7, -1.1920928955078157e-7)] |
|
|
|
public void CanComputeTangent(double value, double expected) |
|
|
|
{ |
|
|
|
var actual = Trig.Tangent(value); |
|
|
|
var actual = Trig.Tan(value); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
|
|
|
|
@ -543,7 +543,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-8.388608e6, -1.19209289550780998537e-7, 2.0861964701080704, 6.3803383253713457e-7)] |
|
|
|
public void CanComputeComplexCotangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).Cotangent(); |
|
|
|
var actual = new Complex(real, imag).Cot(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
@ -564,7 +564,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-8.388608e6, -1.19209289550780998537e-7, -1.1089490624226177, 6.3367488045143761e-8)] |
|
|
|
public void CanComputeComplexSecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).Secant(); |
|
|
|
var actual = new Complex(real, imag).Sec(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
@ -585,7 +585,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-8.388608e6, -1.19209289550780998537e-7, -2.3134856195557596, -5.7534999050657057e-7)] |
|
|
|
public void CanComputeComplexCosecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).Cosecant(); |
|
|
|
var actual = new Complex(real, imag).Csc(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 13); |
|
|
|
} |
|
|
|
@ -607,7 +607,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.45730415318424922, -0.54061268571315335)] |
|
|
|
public void CanComputeComplexHyperbolicSine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).HyperbolicSine(); |
|
|
|
var actual = new Complex(real, imag).Sinh(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -629,7 +629,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.9895848833999199, -0.24982639750046154)] |
|
|
|
public void CanComputeComplexHyperbolicCosine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).HyperbolicCosine(); |
|
|
|
var actual = new Complex(real, imag).Cosh(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -651,7 +651,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.56408314126749848, -0.40389645531602575)] |
|
|
|
public void CanComputeComplexHyperbolicTangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).HyperbolicTangent(); |
|
|
|
var actual = new Complex(real, imag).Tanh(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -673,7 +673,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 1.1719451445243514, -0.8391395790248311)] |
|
|
|
public void CanComputeComplexHyperbolicCotangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).HyperbolicCotangent(); |
|
|
|
var actual = new Complex(real, imag).Coth(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -695,7 +695,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.94997886761549463, 0.23982763093808804)] |
|
|
|
public void CanComputeComplexHyperbolicSecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).HyperbolicSecant(); |
|
|
|
var actual = new Complex(real, imag).Sech(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -717,7 +717,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.91207426403881078, 1.0782296946540223)] |
|
|
|
public void CanComputeComplexHyperbolicCosecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).HyperbolicCosecant(); |
|
|
|
var actual = new Complex(real, imag).Csch(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -741,7 +741,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-123400000000d, 0d, -1.57079632679489661923, 26.23184412897764390497)] |
|
|
|
public void CanComputeComplexInverseSine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseSine(); |
|
|
|
var actual = new Complex(real, imag).Asin(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -765,7 +765,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(-123400000000d, 0d, 3.14159265358979323846, -26.23184412897764390497)] |
|
|
|
public void CanComputeComplexInverseCosine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseCosine(); |
|
|
|
var actual = new Complex(real, imag).Acos(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -787,7 +787,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.5535743588970452, -0.40235947810852507)] |
|
|
|
public void CanComputeComplexInverseTangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseTangent(); |
|
|
|
var actual = new Complex(real, imag).Atan(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -809,7 +809,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 1.0172219678978514, 0.40235947810852509)] |
|
|
|
public void CanComputeComplexInverseCotangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseCotangent(); |
|
|
|
var actual = new Complex(real, imag).Acot(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -830,7 +830,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.90455689430238136, -1.0612750619050357)] |
|
|
|
public void CanComputeComplexInverseSecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseSecant(); |
|
|
|
var actual = new Complex(real, imag).Asec(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -851,7 +851,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.66623943249251526, 1.0612750619050357)] |
|
|
|
public void CanComputeComplexInverseCosecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseCosecant(); |
|
|
|
var actual = new Complex(real, imag).Acsc(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -872,7 +872,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.53063753095251787, -0.4522784471511907)] |
|
|
|
public void CanComputeComplexInverseHyperbolicSine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseHyperbolicSine(); |
|
|
|
var actual = new Complex(real, imag).Asinh(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -893,7 +893,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.53063753095251787, -1.1185178796437059)] |
|
|
|
public void CanComputeComplexInverseHyperbolicCosine(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseHyperbolicCosine(); |
|
|
|
var actual = new Complex(real, imag).Acosh(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -914,7 +914,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.40235947810852509, -0.55357435889704525)] |
|
|
|
public void CanComputeComplexInverseHyperbolicTangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseHyperbolicTangent(); |
|
|
|
var actual = new Complex(real, imag).Atanh(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -935,7 +935,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 0.40235947810852509, 1.0172219678978514)] |
|
|
|
public void CanComputeComplexInverseHyperbolicCotangent(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseHyperbolicCotangent(); |
|
|
|
var actual = new Complex(real, imag).Acoth(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -956,7 +956,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 1.0612750619050357, 0.90455689430238136)] |
|
|
|
public void CanComputeComplexInverseHyperbolicSecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseHyperbolicSecant(); |
|
|
|
var actual = new Complex(real, imag).Asech(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
@ -977,7 +977,7 @@ namespace MathNet.Numerics.UnitTests |
|
|
|
[TestCase(0.5, -0.5, 1.0612750619050357, 0.66623943249251526)] |
|
|
|
public void CanComputeComplexInverseHyperbolicCosecant(double real, double imag, double expectedReal, double expectedImag) |
|
|
|
{ |
|
|
|
var actual = new Complex(real, imag).InverseHyperbolicCosecant(); |
|
|
|
var actual = new Complex(real, imag).Acsch(); |
|
|
|
var expected = new Complex(expectedReal, expectedImag); |
|
|
|
AssertHelpers.AlmostEqual(expected, actual, 14); |
|
|
|
} |
|
|
|
|