Поделиться через


Complex.FromPolarCoordinates(Double, Double) Метод

Определение

Создает комплексное число из полярных координат точки.

public:
 static System::Numerics::Complex FromPolarCoordinates(double magnitude, double phase);
public static System.Numerics.Complex FromPolarCoordinates (double magnitude, double phase);
static member FromPolarCoordinates : double * double -> System.Numerics.Complex
Public Shared Function FromPolarCoordinates (magnitude As Double, phase As Double) As Complex

Параметры

magnitude
Double

Величина, которая является расстоянием от источника (пересечение оси x и оси y) к числу.

phase
Double

Этап, который является углом от линии к горизонтальной оси, измеряемой в радианах.

Возвращаемое значение

Комплексное число.

Примеры

В следующем примере метод FromPolarCoordinates используется для создания экземпляра сложного числа на основе его полярных координат, а затем отображает значение его Magnitude и Phase свойств.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex c1 = Complex.FromPolarCoordinates(10, 45 * Math.PI / 180);
      Console.WriteLine("{0}:", c1);
      Console.WriteLine("   Magnitude: {0}", Complex.Abs(c1));
      Console.WriteLine("   Phase:     {0} radians", c1.Phase);
      Console.WriteLine("   Phase      {0} degrees", c1.Phase * 180/Math.PI);
      Console.WriteLine("   Atan(b/a): {0}", Math.Atan(c1.Imaginary/c1.Real));
   }
}
// The example displays the following output:
//       (7.07106781186548, 7.07106781186547):
//          Magnitude: 10
//          Phase:     0.785398163397448 radians
//          Phase      45 degrees
//          Atan(b/a): 0.785398163397448
open System
open System.Numerics

let c1 = Complex.FromPolarCoordinates(10., 45. * Math.PI / 180.)
printfn $"{c1}:"
printfn $"   Magnitude: {Complex.Abs(c1)}"
printfn $"   Phase:     {c1.Phase} radians"
printfn $"   Phase      {c1.Phase * 180. / Math.PI} degrees"
printfn $"   Atan(b/a): {Math.Atan(c1.Imaginary / c1.Real)}"
// The example displays the following output:
//       (7.07106781186548, 7.07106781186547):
//          Magnitude: 10
//          Phase:     0.785398163397448 radians
//          Phase      45 degrees
//          Atan(b/a): 0.785398163397448
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c1 As Complex = Complex.FromPolarCoordinates(10, 45 * Math.Pi / 180)
      Console.WriteLine("{0}:", c1)
      Console.WriteLine("   Magnitude: {0}", Complex.Abs(c1))
      Console.WriteLine("   Phase:     {0} radians", c1.Phase)
      Console.WriteLine("   Phase      {0} degrees", c1.Phase * 180/Math.Pi)
      Console.WriteLine("   Atan(b/a): {0}", Math.Atan(c1.Imaginary/c1.Real))
   End Sub
End Module
' The example displays the following output:
'       (7.07106781186548, 7.07106781186547):
'          Magnitude: 10
'          Phase:     0.785398163397448 radians
'          Phase      45 degrees
'          Atan(b/a): 0.785398163397448

Комментарии

Метод FromPolarCoordinates создает экземпляр комплексного числа на основе его полярных координат.

Так как на сложной плоскости существует несколько представлений точки, возвращаемое значение метода FromPolarCoordinates нормализуется. Величина нормализуется положительным числом, а фаза нормализуется значением в диапазоне от -PI до PI. В результате значения Phase и Magnitude результирующего комплексного числа могут не совпадать с исходными значениями magnitude и phase параметров.

Чтобы преобразовать значение из градусов в радианы для параметра phase, умножьте его на $\frac{\pi}{180}$.

Применяется к

См. также раздел