Upraviť

Zdieľať cez


Complex.Acos(Complex) Method

Definition

Returns the angle that is the arc cosine of the specified complex number.

public:
 static System::Numerics::Complex Acos(System::Numerics::Complex value);
public static System.Numerics.Complex Acos (System.Numerics.Complex value);
static member Acos : System.Numerics.Complex -> System.Numerics.Complex
Public Shared Function Acos (value As Complex) As Complex

Parameters

value
Complex

A complex number that represents a cosine.

Returns

The angle, measured in radians, which is the arc cosine of value.

Examples

The following example illustrates the Acos method. It shows that passing the value returned by the Acos method to the Cos method returns the original Complex value.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex[] values = { new Complex(.5, 2),
                           new Complex(.5, -2),
                           new Complex(-.5, 2),
                           new Complex(-.3, -.8) };
      foreach (Complex value in values)
         Console.WriteLine("Cos(ACos({0})) = {1}", value,
                           Complex.Cos(Complex.Acos(value)));
   }
}
// The example displays the following output:
//       Cos(ACos((0.5, 2))) = (0.5, 2)
//       Cos(ACos((0.5, -2))) = (0.5, -2)
//       Cos(ACos((-0.5, 2))) = (-0.5, 2)
//       Cos(ACos((-0.3, -0.8))) = (-0.3, -0.8)
open System.Numerics

let values =
    [ Complex(0.5, 2.); Complex(0.5, -2.); Complex(-0.5, 2.); Complex(-0.3, -0.8) ]

for value in values do
    printfn $"Cos(ACos({value})) = {Complex.Acos value |> Complex.Cos}"
// The example displays the following output:
//       Cos(ACos((0.5, 2))) = (0.5, 2)
//       Cos(ACos((0.5, -2))) = (0.5, -2)
//       Cos(ACos((-0.5, 2))) = (-0.5, 2)
//       Cos(ACos((-0.3, -0.8))) = (-0.3, -0.8)
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim values() As Complex = { New Complex(.5, 2), 
                                  New Complex(.5, -2),
                                  New Complex(-.5, 2),
                                  New Complex(-.3, -.8) }
      For Each value As Complex In values
         Console.WriteLine("Cos(ACos({0})) = {1}", value, 
                           Complex.Cos(Complex.Acos(value)))
      Next
   End Sub
End Module
' The example displays the following output:
'       Cos(ACos((0.5, 2))) = (0.5, 2)
'       Cos(ACos((0.5, -2))) = (0.5, -2)
'       Cos(ACos((-0.5, 2))) = (-0.5, 2)
'       Cos(ACos((-0.3, -0.8))) = (-0.3, -0.8)

Remarks

The Acos method for complex numbers corresponds to the Math.Acos method for real numbers.

The Acos method uses the following formula:

(-ImaginaryOne) * Log(value + ImaginaryOne * Sqrt(One - value * value))

Applies to

See also