Complex Complex Complex Complex Struct

定義

複素数を表します。Represents a complex number.

public value class Complex : IEquatable<System::Numerics::Complex>, IFormattable
[System.Serializable]
public struct Complex : IEquatable<System.Numerics.Complex>, IFormattable
type Complex = struct
    interface IFormattable
Public Structure Complex
Implements IEquatable(Of Complex), IFormattable
継承
属性
実装

注釈

複素数は、実数部と虚数部で構成される数値です。A complex number is a number that comprises a real number part and an imaginary number part. 通常、複素数 z は z = x + yi の形式で記述されます。ここで、 xyは実数で、 iはプロパティi2 =-1 を持つ虚数単位です。A complex number z is usually written in the form z = x + yi, where x and y are real numbers, and i is the imaginary unit that has the property i2 = -1. 複素数の実数部はxで表され、複素数の虚数部はyで表されます。The real part of the complex number is represented by x, and the imaginary part of the complex number is represented by y.

このComplex型は、複素数をインスタンス化および操作するときに、デカルト座標系 (real, 虚数) を使用します。The Complex type uses the Cartesian coordinate system (real, imaginary) when instantiating and manipulating complex numbers. 複素数は、複合平面と呼ばれる2次元座標系の点として表すことができます。A complex number can be represented as a point in a two-dimensional coordinate system, which is known as the complex plane. 複素数の実数部が x 軸 (水平軸) に配置され、虚数部は y 軸 (縦軸) に配置されています。The real part of the complex number is positioned on the x-axis (the horizontal axis), and the imaginary part is positioned on the y-axis (the vertical axis).

また、極座標系を使用して、その絶対値に基づいて複合平面内の任意のポイントを表現することもできます。Any point in the complex plane can also be expressed based on its absolute value, by using the polar coordinate system. 極座標では、点は次の2つの数値によって特徴付けられます。In polar coordinates, a point is characterized by two numbers:

  • 原点からのポイントまでの距離 (つまり、0、0、または x 軸と y 軸が交差する点) の大きさです (つまり、0、0、またはその位置)。Its magnitude, which is the distance of the point from the origin (that is, 0,0, or the point at which the x-axis and the y-axis intersect).

  • そのフェーズ。これは、実際の軸と、原点からポイントまでの線の間の角度です。Its phase, which is the angle between the real axis and the line drawn from the origin to the point.

複素数のインスタンス化Instantiating a Complex Number

次のいずれかの方法で、複素数に値を割り当てることができます。You can assign a value to a complex number in one of the following ways:

  • 2つDoubleの値をコンストラクターに渡す。By passing two Double values to its constructor. 最初の値は複素数の実数部を表し、2番目の値は虚数部を表します。The first value represents the real part of the complex number, and the second value represents its imaginary part. これらの値は、2次元デカルト座標系の複素数の位置を表します。These values represent the position of the complex number in the two-dimensional Cartesian coordinate system.

  • 静的な (Shared Visual Basic) Complex.FromPolarCoordinatesメソッドを呼び出して、極座標から複素数を作成する。By calling the static (Shared in Visual Basic) Complex.FromPolarCoordinates method to create a complex number from its polar coordinates.

  • 、、、 Byte、、、 UInt16Int32、、またUInt64Single UInt32 Int16 SByteの値Int64をオブジェクトComplexに割り当てる。 DoubleBy assigning a Byte, SByte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single, or Double value to a Complex object. 値は複素数の実数部になり、虚数部は0になります。The value becomes the real part of the complex number, and its imaginary part equals 0.

  • Decimal またはBigInteger値をC#オブジェクトにキャスト(in)または変換(VisualBasic)Complexする。By casting (in C#) or converting (in Visual Basic) a Decimal or BigInteger value to a Complex object. 値は複素数の実数部になり、虚数部は0になります。The value becomes the real part of the complex number, and its imaginary part equals 0.

  • メソッドまたは演算子によって返される複素数をComplexオブジェクトに代入する。By assigning the complex number that is returned by a method or operator to a Complex object. たとえば、 Complex.Addは2つの複素数の合計である複素数を返す静的メソッドで、演算子はComplex.Addition 2 つの複素数を加算し、その結果を返します。For example, Complex.Add is a static method that returns a complex number that is the sum of two complex numbers, and the Complex.Addition operator adds two complex numbers and returns the result.

次の例では、複素数に値を代入するこれらの5つの方法を示します。The following example demonstrates each of these five ways of assigning a value to a complex number.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      // Create a complex number by calling its class constructor.
      Complex c1 = new Complex(12, 6);
      Console.WriteLine(c1);
      
      // Assign a Double to a complex number.
      Complex c2 = 3.14;
      Console.WriteLine(c2);
      
      // Cast a Decimal to a complex number.
      Complex c3 = (Complex) 12.3m;
      Console.WriteLine(c3);
      
      // Assign the return value of a method to a Complex variable.
      Complex c4 = Complex.Pow(Complex.One, -1);
      Console.WriteLine(c4);
      
      // Assign the value returned by an operator to a Complex variable.
      Complex c5 = Complex.One + Complex.One;
      Console.WriteLine(c5);

      // Instantiate a complex number from its polar coordinates.
      Complex c6 = Complex.FromPolarCoordinates(10, .524);
      Console.WriteLine(c6);
   }
}
// The example displays the following output:
//       (12, 6)
//       (3.14, 0)
//       (12.3, 0)
//       (1, 0)
//       (2, 0)
//       (8.65824721882145, 5.00347430269914)
Imports System.Numerics

Module Example
   Public Sub Main()
      ' Create a complex number by calling its class constructor.
      Dim c1 As New Complex(12, 6)
      Console.WriteLine(c1)
      
      ' Assign a Double to a complex number.
      Dim c2 As Complex = 3.14
      Console.WriteLine(c2)
      
      ' Cast a Decimal to a complex number.
      Dim c3 As Complex = CType(12.3d, Complex)
      Console.WriteLine(c3)
      
      ' Assign the return value of a method to a Complex variable.
      Dim c4 As Complex = Complex.Pow(Complex.One, -1)
      Console.WriteLine(c4)
      
      ' Assign the value returned by an operator to a Complex variable.
      Dim c5 As Complex = Complex.One + Complex.One
      Console.WriteLine(c5)

      ' Instantiate a complex number from its polar coordinates.
      Dim c6 As Complex = Complex.FromPolarCoordinates(10, .524)
      Console.WriteLine(c6)
   End Sub
End Module
' The example displays the following output:
'       (12, 6)
'       (3.14, 0)
'       (12.3000001907349, 0)
'       (1, 0)
'       (2, 0)
'       (8.65824721882145, 5.00347430269914)

複素数を持つ演算Operations with Complex Numbers

.NET Framework Complexの構造体には、次の機能を提供するメンバーが含まれています。The Complex structure in the .NET Framework includes members that provide the following functionality:

  • 2つの複素数を比較して等しいかどうかを判断するメソッド。Methods to compare two complex numbers to determine whether they are equal.

  • 複素数に対して算術演算を実行する演算子。Operators to perform arithmetic operations on complex numbers. Complex演算子を使用すると、複素数の加算、減算、乗算、除算、および単項否定を実行できます。Complex operators enable you to perform addition, subtraction, multiplication, division, and unary negation with complex numbers.

  • 複素数に対して他の数値演算を実行するメソッド。Methods to perform other numerical operations on complex numbers. 4つの基本的な算術演算に加えて、複素数を指定された指数で累乗し、複素数の平方根を検索し、複素数の絶対値を取得することができます。In addition to the four basic arithmetic operations, you can raise a complex number to a specified power, find the square root of a complex number, and get the absolute value of a complex number.

  • 複素数に対して三角関数演算を実行するメソッド。Methods to perform trigonometric operations on complex numbers. たとえば、複素数によって表される角度のタンジェントを計算できます。For example, you can calculate the tangent of an angle represented by a complex number.

プロパティReal ComplexImaginaryプロパティは読み取り専用であるため、既存のオブジェクトの値は変更できないことに注意してください。Note that, because the Real and Imaginary properties are read-only, you cannot modify the value of an existing Complex object. Complex数値に対して操作を実行するすべてのメソッド (戻り値が型Complexの場合は、新しいComplex数値が返されます)。All methods that perform an operation on a Complex number, if their return value is of type Complex, return a new Complex number.

有効桁数と複素数Precision and Complex Numbers

複素数の実数部と虚数部は、2つの倍精度浮動小数点値で表されます。The real and imaginary parts of a complex number are represented by two double-precision floating-point values. これは、 Complex倍精度浮動小数点値などの値が数値演算の結果として有効桁数を失う可能性があることを意味します。This means that Complex values, like double-precision floating-point values, can lose precision as a result of numerical operations. これは、2つの値のComplex等価性の厳密な比較が、精度の低下によって発生した場合でも失敗する可能性があることを意味します。This means that strict comparisons for equality of two Complex values may fail, even if the difference between the two values is due to a loss of precision. 詳細については、「Double」を参照してください。For more information, see Double.

たとえば、数値の対数に対して指数演算を実行すると、元の数値が返されます。For example, performing exponentiation on the logarithm of a number should return the original number. ただし、次の例に示すように、浮動小数点値の精度が失われると、2つの値の差が若干異なる場合があります。However, in some cases, the loss of precision of floating-point values can cause slight differences between the two values, as the following example illustrates.

Complex value = new Complex(Double.MinValue/2, Double.MinValue/2);
Complex value2 = Complex.Exp(Complex.Log(value));
Console.WriteLine("{0} \n{1} \nEqual: {2}", value, value2, 
                                            value == value2);
// The example displays the following output:
//    (-8.98846567431158E+307, -8.98846567431158E+307)
//    (-8.98846567431161E+307, -8.98846567431161E+307)
//    Equal: False
Dim value As New Complex(Double.MinValue/2, Double.MinValue/2)
Dim value2 As Complex = Complex.Exp(Complex.Log(value))
Console.WriteLine("{0} {3}{1} {3}Equal: {2}", value, value2, 
                                              value = value2,
                                              vbCrLf)
' The example displays the following output:
'    (-8.98846567431158E+307, -8.98846567431158E+307)
'    (-8.98846567431161E+307, -8.98846567431161E+307)
'    Equal: False

同様に、 Complex数値の平方根を計算する次の例では、.NET Framework の32ビットバージョンと IA64 バージョンでわずかに異なる結果が生成されます。Similarly, the following example, which calculates the square root of a Complex number, produces slightly different results on the 32-bit and IA64 versions of the .NET Framework.

Complex minusOne = new Complex(-1, 0);
Console.WriteLine(Complex.Sqrt(minusOne));
// The example displays the following output:
//    (6.12303176911189E-17, 1) on 32-bit systems.
//    (6.12323399573677E-17,1) on IA64 systems.
Dim minusOne As New Complex(-1, 0)
Console.WriteLine(Complex.Sqrt(minusOne))
' The example displays the following output:
'    (6.12303176911189E-17, 1) on 32-bit systems.
'    (6.12323399573677E-17,1) on IA64 systems.

複素数、無限大、および NaNComplex Numbers, Infinity, and NaN

複素数の実数部と虚数部は、値によっDoubleて表されます。The real and imaginary parts of a complex number are represented by Double values. からDouble.MinValue Double.PositiveInfinity Double.NegativeInfinity Double.NaNまでの範囲に加えて、複素数の実数部または虚数部は、、、またはの値を持つことができます。Double.MaxValueIn addition to ranging from Double.MinValue to Double.MaxValue, the real or imaginary part of a complex number can have a value of Double.PositiveInfinity, Double.NegativeInfinity, or Double.NaN. Double.PositiveInfinityDouble.NegativeInfinity、およびDouble.NaNはすべて、算術演算または三角演算に反映されます。Double.PositiveInfinity, Double.NegativeInfinity, and Double.NaN all propagate in any arithmetic or trigonometric operation.

次の例では、除算Zeroによって、実数部と虚数部が両方Double.NaNとも複素数が生成されます。In the following example, division by Zero produces a complex number whose real and imaginary parts are both Double.NaN. 結果として、この値を使用して乗算を実行すると、実数部とDouble.NaN虚数部がある複素数も生成されます。As a result, performing multiplication with this value also produces a complex number whose real and imaginary parts are Double.NaN. 同様に、 Double型の範囲をオーバーフローする乗算を実行すると、実数部がDouble.NaNで、虚数部がDouble.PositiveInfinityである複素数が生成されます。Similarly, performing a multiplication that overflows the range of the Double type produces a complex number whose real part is Double.NaN and whose imaginary part is Double.PositiveInfinity. その後、この複素数で除算を実行すると、実数部がDouble.NaNで、虚数部がDouble.PositiveInfinityである複素数が返されます。Subsequently performing division with this complex number returns a complex number whose real part is Double.NaN and whose imaginary part is Double.PositiveInfinity.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex c1 = new Complex(Double.MaxValue / 2, Double.MaxValue /2);

      Complex c2 = c1 / Complex.Zero;
      Console.WriteLine(c2.ToString());
      c2 = c2 * new Complex(1.5, 1.5);
      Console.WriteLine(c2.ToString());
      Console.WriteLine();
      
      Complex c3 = c1 * new Complex(2.5, 3.5);
      Console.WriteLine(c3.ToString());
      c3 = c3 + new Complex(Double.MinValue / 2, Double.MaxValue / 2); 
      Console.WriteLine(c3);
   }
}
// The example displays the following output:
//       (NaN, NaN)
//       (NaN, NaN)
//       (NaN, Infinity)
//       (NaN, Infinity)
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c1 As Complex = New Complex(Double.MaxValue / 2, Double.MaxValue /2)

      Dim c2 As Complex = c1 / Complex.Zero
      Console.WriteLine(c2.ToString())
      c2 = c2 * New Complex(1.5, 1.5)
      Console.WriteLine(c2.ToString())
      Console.WriteLine()
      
      Dim c3 As Complex = c1 * New Complex(2.5, 3.5)
      Console.WriteLine(c3.ToString())
      c3 = c3 + New Complex(Double.MinValue / 2, Double.MaxValue / 2) 
      Console.WriteLine(c3)     
   End Sub
End Module
' The example displays the following output:
'       (NaN, NaN)
'       (NaN, NaN)
'
'       (NaN, Infinity)
'       (NaN, Infinity)

複素数が無効であるか、またはDoubleデータ型の範囲をオーバーフローしている数値演算は、例外をスローしません。Mathematical operations with complex numbers that are invalid or that overflow the range of the Double data type do not throw an exception. 代わりに、次の条件Double.PositiveInfinityDouble.NegativeInfinityではDouble.NaN 、、またはが返されます。Instead, they return a Double.PositiveInfinity, Double.NegativeInfinity, or Double.NaN under the following conditions:

これは、メソッドによって実行されるすべての中間計算に適用されることに注意してください。Note that this applies to any intermediate calculations performed by a method. たとえば、のnew Complex(9e308, 9e308) and new Complex(2.5, 3.5)乗算では、数式 (ac bd) + (ad + bc) i が使用されます。For example, the multiplication of new Complex(9e308, 9e308) and new Complex(2.5, 3.5) uses the formula (ac - bd) + (ad + bc)i. 乗算の結果として得られる実際のコンポーネントの計算では、式 9e308 * 2.5-9e308 * 3.5 が評価されます。The calculation of the real component that results from the multiplication evaluates the expression 9e308 * 2.5 - 9e308 * 3.5. この式の各中間乗算はDouble.PositiveInfinityを返し、からDouble.PositiveInfinity減算Double.PositiveInfinityしようとしDouble.NaNた場合はを返します。Each intermediate multiplication in this expression returns Double.PositiveInfinity, and the attempt to subtract Double.PositiveInfinity from Double.PositiveInfinity returns Double.NaN.

複素数の書式設定Formatting a Complex Number

既定では、複素数の文字列表現は実際,虚数)(いう形式になります。ここで、実数虚数Double 、複素数の実数部と虚数部を形成する値。By default, the string representation of a complex number takes the form (real, imaginary), where real and imaginary are the string representations of the Double values that form the complex number's real and imaginary components. メソッドの一部のToStringオーバーロードでは、これらDoubleの値の文字列形式をカスタマイズして、特定のカルチャの書式指定規則を反映したり、標準またはカスタムの数値で定義された特定の形式で表示したりすることができます。書式設定文字列。Some overloads of the ToString method allow customization of the string representations of these Double values to reflect the formatting conventions of a particular culture or to appear in a particular format defined by a standard or custom numeric format string. (詳細については、「標準の数値書式指定文字列」および「カスタム数値書式指定文字列」を参照してください)。(For more information, see Standard Numeric Format Strings and Custom Numeric Format Strings.)

複素数の文字列表現を表現する一般的な方法の1つとして、a + bi という形式があります。ここで、は複素数の実数コンポーネントで、b は複素数の虚数部です。One of the more common ways of expressing the string representation of a complex number takes the form a + bi, where a is the complex number's real component, and b is the complex number's imaginary component. 電気工学では、通常、複素数が + bj として表現されます。In electrical engineering, a complex number is most commonly expressed as a + bj. この2つの形式のいずれかで、複素数の文字列形式を返すことができます。You can return the string representation of a complex number in either of these two forms. これを行うには、インターフェイスICustomFormatterIFormatProviderインターフェイスを実装してカスタム書式プロバイダーを定義しString.Format(IFormatProvider, String, Object[]) 、メソッドを呼び出します。To do this, define a custom format provider by implementing the ICustomFormatter and IFormatProvider interfaces, and then call the String.Format(IFormatProvider, String, Object[]) method.

次の例ではComplexFormatter 、+ bi または + bj の形式の文字列として複素数を表すクラスを定義しています。The following example defines a ComplexFormatter class that represents a complex number as a string in the form of either a + bi or a + bj.

using System;
using System.Numerics;

public class ComplexFormatter :IFormatProvider, ICustomFormatter
{
   public object GetFormat(Type formatType) 
   {   
      if (formatType == typeof(ICustomFormatter))
         return this;
      else
         return null;
   }
   
   public string Format(string format, object arg, 
                        IFormatProvider provider)
   {
      if (arg is Complex)
      {
         Complex c1 = (Complex) arg; 
         // Check if the format string has a precision specifier.
         int precision;
         string fmtString = String.Empty;
         if (format.Length > 1) {
            try {
               precision = Int32.Parse(format.Substring(1));
            }
            catch (FormatException) {
               precision = 0;
            }
            fmtString = "N" + precision.ToString();
         }
         if (format.Substring(0, 1).Equals("I", StringComparison.OrdinalIgnoreCase))
            return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "i";
         else if (format.Substring(0, 1).Equals("J", StringComparison.OrdinalIgnoreCase))
            return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "j";
         else
            return c1.ToString(format, provider);
      }
      else
      {
         if (arg is IFormattable)
            return ((IFormattable) arg).ToString(format, provider);
         else if (arg != null) 
            return arg.ToString();
         else
            return String.Empty;
      }                        
   }
}
Imports System.Numerics

Public Class ComplexFormatter 
             Implements IFormatProvider, ICustomFormatter
   
   Public Function GetFormat(formatType As Type) As Object _
                   Implements IFormatProvider.GetFormat
      If formatType Is GetType(ICustomFormatter) Then
         Return Me
      Else
         Return Nothing
      End If
   End Function
   
   Public Function Format(fmt As String, arg As Object, 
                          provider As IFormatProvider) As String _
                   Implements ICustomFormatter.Format
      If TypeOf arg Is Complex Then
         Dim c1 As Complex = DirectCast(arg, Complex)
         ' Check if the format string has a precision specifier.
         Dim precision As Integer
         Dim fmtString As String = String.Empty
         If fmt.Length > 1 Then
            Try
               precision = Int32.Parse(fmt.Substring(1))
            Catch e As FormatException
               precision = 0
            End Try
            fmtString = "N" + precision.ToString()
         End If
         If fmt.Substring(0, 1).Equals("I", StringComparison.OrdinalIgnoreCase) Then
            Return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "i"
         ElseIf fmt.Substring(0, 1).Equals("J", StringComparison.OrdinalIgnoreCase) Then
            Return c1.Real.ToString(fmtString) + " + " + c1.Imaginary.ToString(fmtString) + "j"
         Else
            Return c1.ToString(fmt, provider)
         End If
      Else
         If Typeof arg Is IFormattable Then
            Return DirectCast(arg, IFormattable).ToString(fmt, provider)
         ElseIf arg IsNot Nothing Then
            Return arg.ToString()
         Else
            Return String.Empty
         End If   
      End If                        
   End Function
End Class

次の例では、このカスタムフォーマッタを使用して、複素数の文字列形式を表示します。The following example then uses this custom formatter to display the string representation of a complex number.

public class Example
{
   public static void Main()
   {
      Complex c1 = new Complex(12.1, 15.4);
      Console.WriteLine("Formatting with ToString():       " + 
                        c1.ToString());
      Console.WriteLine("Formatting with ToString(format): " + 
                        c1.ToString("N2"));
      Console.WriteLine("Custom formatting with I0:        " + 
                        String.Format(new ComplexFormatter(), "{0:I0}", c1));
      Console.WriteLine("Custom formatting with J3:        " + 
                        String.Format(new ComplexFormatter(), "{0:J3}", c1));
   }
}
// The example displays the following output:
//    Formatting with ToString():       (12.1, 15.4)
//    Formatting with ToString(format): (12.10, 15.40)
//    Custom formatting with I0:        12 + 15i
//    Custom formatting with J3:        12.100 + 15.400j
Module Example
   Public Sub Main()
      Dim c1 As Complex = New Complex(12.1, 15.4)
      Console.WriteLine("Formatting with ToString():       " + 
                        c1.ToString())
      Console.WriteLine("Formatting with ToString(format): " + 
                        c1.ToString("N2"))
      Console.WriteLine("Custom formatting with I0:        " + 
                        String.Format(New ComplexFormatter(), "{0:I0}", c1))
      Console.WriteLine("Custom formatting with J3:        " + 
                        String.Format(New ComplexFormatter(), "{0:J3}", c1))
   End Sub
End Module
' The example displays the following output:
'    Formatting with ToString():       (12.1, 15.4)
'    Formatting with ToString(format): (12.10, 15.40)
'    Custom formatting with I0:        12 + 15i
'    Custom formatting with J3:        12.100 + 15.400j

コンストラクター

Complex(Double, Double) Complex(Double, Double) Complex(Double, Double) Complex(Double, Double)

指定した実数値と虚数値を使用して Complex 構造体の新しいインスタンスを初期化します。Initializes a new instance of the Complex structure using the specified real and imaginary values.

フィールド

ImaginaryOne ImaginaryOne ImaginaryOne ImaginaryOne

実数が 0 で虚数が 1 の新しい Complex インスタンスを返します。Returns a new Complex instance with a real number equal to zero and an imaginary number equal to one.

Infinity Infinity Infinity Infinity

無限大を複素数として表します。Represents infinity as a complex number.

NaN NaN NaN NaN

非数 (NaN) の複素インスタンスを表します。Represents a complex instance that is not a number (NaN).

One One One One

実数が 1 で虚数が 0 の新しい Complex インスタンスを返します。Returns a new Complex instance with a real number equal to one and an imaginary number equal to zero.

Zero Zero Zero Zero

実数が 0 で虚数が 0 の新しい Complex インスタンスを返します。Returns a new Complex instance with a real number equal to zero and an imaginary number equal to zero.

プロパティ

Imaginary Imaginary Imaginary Imaginary

現在の Complex オブジェクトの虚数部を取得します。Gets the imaginary component of the current Complex object.

Magnitude Magnitude Magnitude Magnitude

複素数の大きさ (または絶対値) を取得します。Gets the magnitude (or absolute value) of a complex number.

Phase Phase Phase Phase

複素数のフェーズを取得します。Gets the phase of a complex number.

Real Real Real Real

現在の Complex オブジェクトの実数部を取得します。Gets the real component of the current Complex object.

メソッド

Abs(Complex) Abs(Complex) Abs(Complex) Abs(Complex)

複素数の絶対値 (または大きさ) を取得します。Gets the absolute value (or magnitude) of a complex number.

Acos(Complex) Acos(Complex) Acos(Complex) Acos(Complex)

指定した複素数のアーク コサインである角度を返します。Returns the angle that is the arc cosine of the specified complex number.

Add(Double, Complex) Add(Double, Complex) Add(Double, Complex) Add(Double, Complex)

倍精度実数を複素数に加算し、その結果を返します。Adds a double-precision real number to a complex number and returns the result.

Add(Complex, Double) Add(Complex, Double) Add(Complex, Double) Add(Complex, Double)

複素数を倍精度実数に加算し、その結果を返します。Adds a complex number to a double-precision real number and returns the result.

Add(Complex, Complex) Add(Complex, Complex) Add(Complex, Complex) Add(Complex, Complex)

2 つの複素数を加算し、その結果を返します。Adds two complex numbers and returns the result.

Asin(Complex) Asin(Complex) Asin(Complex) Asin(Complex)

指定した複素数のアーク サインである角度を返します。Returns the angle that is the arc sine of the specified complex number.

Atan(Complex) Atan(Complex) Atan(Complex) Atan(Complex)

指定した複素数のアーク タンジェントである角度を返します。Returns the angle that is the arc tangent of the specified complex number.

Conjugate(Complex) Conjugate(Complex) Conjugate(Complex) Conjugate(Complex)

複素数の共役を計算し、結果を返します。Computes the conjugate of a complex number and returns the result.

Cos(Complex) Cos(Complex) Cos(Complex) Cos(Complex)

指定した複素数のコサインを返します。Returns the cosine of the specified complex number.

Cosh(Complex) Cosh(Complex) Cosh(Complex) Cosh(Complex)

指定した複素数のハイパーボリック コサインを返します。Returns the hyperbolic cosine of the specified complex number.

Divide(Double, Complex) Divide(Double, Complex) Divide(Double, Complex) Divide(Double, Complex)

倍精度実数を複素数で除算し、その結果を返します。Divides one double-precision real number by a complex number and returns the result.

Divide(Complex, Double) Divide(Complex, Double) Divide(Complex, Double) Divide(Complex, Double)

複素数を倍精度実数で除算し、その結果を返します。Divides one complex number by a double-precision real number and returns the result.

Divide(Complex, Complex) Divide(Complex, Complex) Divide(Complex, Complex) Divide(Complex, Complex)

複素数を別の複素数で除算し、その結果を返します。Divides one complex number by another and returns the result.

Equals(Complex) Equals(Complex) Equals(Complex) Equals(Complex)

現在のインスタンスの値と指定した複素数の値が等しいかどうかを示す値を返します。Returns a value that indicates whether the current instance and a specified complex number have the same value.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

現在のインスタンスの値と指定されたオブジェクトの値が等しいかどうかを示す値を返します。Returns a value that indicates whether the current instance and a specified object have the same value.

Exp(Complex) Exp(Complex) Exp(Complex) Exp(Complex)

e を指定した複素数で累乗した値を返します。Returns e raised to the power specified by a complex number.

FromPolarCoordinates(Double, Double) FromPolarCoordinates(Double, Double) FromPolarCoordinates(Double, Double) FromPolarCoordinates(Double, Double)

ポイントの極座標から複素数を作成します。Creates a complex number from a point's polar coordinates.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

現在の Complex オブジェクトのハッシュ コードを返します。Returns the hash code for the current Complex object.

IsFinite(Complex) IsFinite(Complex) IsFinite(Complex) IsFinite(Complex)

指定した複素数が有限かどうかを判定します。Determines whether the specified complex number is finite.

IsInfinity(Complex) IsInfinity(Complex) IsInfinity(Complex) IsInfinity(Complex)

指定した複素数が無限大と評価されるかどうかを示す値を返します。Returns a value indicating whether the specified complex number evaluates to infinity.

IsNaN(Complex) IsNaN(Complex) IsNaN(Complex) IsNaN(Complex)

指定した複素数インスタンスが非数値 (NaN) かどうかを示す値を返します。Returns a value that indicates whether the specified complex instance is not a number (NaN).

Log(Complex) Log(Complex) Log(Complex) Log(Complex)

指定した複素数の自然 (底 e) 対数を返します。Returns the natural (base e) logarithm of a specified complex number.

Log(Complex, Double) Log(Complex, Double) Log(Complex, Double) Log(Complex, Double)

指定した複素数の指定した底での対数を返します。Returns the logarithm of a specified complex number in a specified base.

Log10(Complex) Log10(Complex) Log10(Complex) Log10(Complex)

指定した複素数の底 10 の対数を返します。Returns the base-10 logarithm of a specified complex number.

Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex)

2 つの複素数の積を返します。Returns the product of two complex numbers.

Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex)

倍精度実数と複素数の積を返します。Returns the product of a double-precision real number and a complex number.

Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double)

複素数と倍精度実数の積を返します。Returns the product of a complex number and a double-precision real number.

Negate(Complex) Negate(Complex) Negate(Complex) Negate(Complex)

指定した複素数の加法に関する逆元を返します。Returns the additive inverse of a specified complex number.

Pow(Complex, Double) Pow(Complex, Double) Pow(Complex, Double) Pow(Complex, Double)

倍精度浮動小数点数で指定した値で複素数を累乗した値を返します。Returns a specified complex number raised to a power specified by a double-precision floating-point number.

Pow(Complex, Complex) Pow(Complex, Complex) Pow(Complex, Complex) Pow(Complex, Complex)

別の複素数で指定した値で複素数を累乗した値を返します。Returns a specified complex number raised to a power specified by a complex number.

Reciprocal(Complex) Reciprocal(Complex) Reciprocal(Complex) Reciprocal(Complex)

複素数の逆数を返します。Returns the multiplicative inverse of a complex number.

Sin(Complex) Sin(Complex) Sin(Complex) Sin(Complex)

指定した複素数のサインを返します。Returns the sine of the specified complex number.

Sinh(Complex) Sinh(Complex) Sinh(Complex) Sinh(Complex)

指定した複素数のハイパーボリック サインを返します。Returns the hyperbolic sine of the specified complex number.

Sqrt(Complex) Sqrt(Complex) Sqrt(Complex) Sqrt(Complex)

指定した複素数の平方根を返します。Returns the square root of a specified complex number.

Subtract(Double, Complex) Subtract(Double, Complex) Subtract(Double, Complex) Subtract(Double, Complex)

倍精度実数から複素数を減算し、その結果を返します。Subtracts one complex number from a double-precision real number and returns the result.

Subtract(Complex, Double) Subtract(Complex, Double) Subtract(Complex, Double) Subtract(Complex, Double)

複素数から倍精度実数を減算し、その結果を返します。Subtracts one double-precision real number from a complex number and returns the result.

Subtract(Complex, Complex) Subtract(Complex, Complex) Subtract(Complex, Complex) Subtract(Complex, Complex)

複素数を別の複素数から減算し、その結果を返します。Subtracts one complex number from another and returns the result.

Tan(Complex) Tan(Complex) Tan(Complex) Tan(Complex)

指定した複素数のタンジェントを返します。Returns the tangent of the specified complex number.

Tanh(Complex) Tanh(Complex) Tanh(Complex) Tanh(Complex)

指定した複素数のハイパーボリック タンジェントを返します。Returns the hyperbolic tangent of the specified complex number.

ToString() ToString() ToString() ToString()

現在の複素数の値を等価のデカルト形式の文字列形式に変換します。Converts the value of the current complex number to its equivalent string representation in Cartesian form.

ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider)

指定したカルチャ固有の書式情報を使用して、現在の複素数を等価のデカルト形式の文字列形式に変換します。Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified culture-specific formatting information.

ToString(String) ToString(String) ToString(String) ToString(String)

実数部と虚数部で構成される指定した書式を使用して、現在の複素数を等価のデカルト形式の文字列形式に変換します。Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format for its real and imaginary parts.

ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider)

実数部と虚数部で構成される指定した書式およびカルチャ固有の書式情報を使用して、現在の複素数を等価のデカルト形式の文字列形式に変換します。Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format and culture-specific format information for its real and imaginary parts.

演算子

Addition(Complex, Complex) Addition(Complex, Complex) Addition(Complex, Complex) Addition(Complex, Complex)

2 つの複素数を加算します。Adds two complex numbers.

Addition(Double, Complex) Addition(Double, Complex) Addition(Double, Complex) Addition(Double, Complex)

倍精度実数を複素数に加算します。Adds a double-precision real number to a complex number.

Addition(Complex, Double) Addition(Complex, Double) Addition(Complex, Double) Addition(Complex, Double)

複素数を倍精度実数に加算します。Adds a complex number to a double-precision real number.

Division(Complex, Complex) Division(Complex, Complex) Division(Complex, Complex) Division(Complex, Complex)

指定した複素数を別の指定した複素数で除算します。Divides a specified complex number by another specified complex number.

Division(Complex, Double) Division(Complex, Double) Division(Complex, Double) Division(Complex, Double)

指定した複素数を指定した倍精度実数で除算します。Divides a specified complex number by a specified double-precision real number.

Division(Double, Complex) Division(Double, Complex) Division(Double, Complex) Division(Double, Complex)

指定した倍精度実数を指定した複素数で除算します。Divides a specified double-precision real number by a specified complex number.

Equality(Complex, Complex) Equality(Complex, Complex) Equality(Complex, Complex) Equality(Complex, Complex)

2 つの複素数が等しいかどうかを示す値を返します。Returns a value that indicates whether two complex numbers are equal.

Explicit(Decimal to Complex) Explicit(Decimal to Complex) Explicit(Decimal to Complex) Explicit(Decimal to Complex)

Decimal 値から複素数への明示的な型変換を定義します。Defines an explicit conversion of a Decimal value to a complex number.

Explicit(BigInteger to Complex) Explicit(BigInteger to Complex) Explicit(BigInteger to Complex) Explicit(BigInteger to Complex)

BigInteger 値から複素数への明示的な型変換を定義します。Defines an explicit conversion of a BigInteger value to a complex number.

Implicit(UInt64 to Complex) Implicit(UInt64 to Complex) Implicit(UInt64 to Complex) Implicit(UInt64 to Complex)

64 ビット符号なし整数値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a 64-bit unsigned integer to a complex number.

この API は、CLS に準拠していません。This API is not CLS-compliant.

Implicit(UInt32 to Complex) Implicit(UInt32 to Complex) Implicit(UInt32 to Complex) Implicit(UInt32 to Complex)

32 ビット符号なし整数値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a 32-bit unsigned integer to a complex number.

この API は、CLS に準拠していません。This API is not CLS-compliant.

Implicit(UInt16 to Complex) Implicit(UInt16 to Complex) Implicit(UInt16 to Complex) Implicit(UInt16 to Complex)

16 ビット符号なし整数値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a 16-bit unsigned integer to a complex number.

この API は、CLS に準拠していません。This API is not CLS-compliant.

Implicit(Single to Complex) Implicit(Single to Complex) Implicit(Single to Complex) Implicit(Single to Complex)

単精度浮動小数点数から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a single-precision floating-point number to a complex number.

Implicit(SByte to Complex) Implicit(SByte to Complex) Implicit(SByte to Complex) Implicit(SByte to Complex)

符号付きバイト値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a signed byte to a complex number.

この API は、CLS に準拠していません。This API is not CLS-compliant.

Implicit(Int32 to Complex) Implicit(Int32 to Complex) Implicit(Int32 to Complex) Implicit(Int32 to Complex)

32 ビット符号付き整数値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a 32-bit signed integer to a complex number.

Implicit(Int16 to Complex) Implicit(Int16 to Complex) Implicit(Int16 to Complex) Implicit(Int16 to Complex)

16 ビット符号付き整数値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a 16-bit signed integer to a complex number.

Implicit(Double to Complex) Implicit(Double to Complex) Implicit(Double to Complex) Implicit(Double to Complex)

倍精度浮動小数点数から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a double-precision floating-point number to a complex number.

Implicit(Byte to Complex) Implicit(Byte to Complex) Implicit(Byte to Complex) Implicit(Byte to Complex)

符号なしバイト値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of an unsigned byte to a complex number.

Implicit(Int64 to Complex) Implicit(Int64 to Complex) Implicit(Int64 to Complex) Implicit(Int64 to Complex)

64 ビット符号付き整数値から複素数への暗黙の型変換を定義します。Defines an implicit conversion of a 64-bit signed integer to a complex number.

Inequality(Complex, Complex) Inequality(Complex, Complex) Inequality(Complex, Complex) Inequality(Complex, Complex)

2 つの複素数が等しくないかどうかを示す値を返します。Returns a value that indicates whether two complex numbers are not equal.

Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex) Multiply(Complex, Complex)

指定した 2 つの複素数を乗算します。Multiplies two specified complex numbers.

Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex) Multiply(Double, Complex)

指定した倍精度実数と指定した複素数を乗算します。Multiplies a specified double-precision real number by a specified complex number.

Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double) Multiply(Complex, Double)

指定した複素数と指定した倍精度実数を乗算します。Multiplies the specified complex number by a specified double-precision real number.

Subtraction(Complex, Complex) Subtraction(Complex, Complex) Subtraction(Complex, Complex) Subtraction(Complex, Complex)

複素数を別の複素数から減算します。Subtracts a complex number from another complex number.

Subtraction(Complex, Double) Subtraction(Complex, Double) Subtraction(Complex, Double) Subtraction(Complex, Double)

複素数から倍精度実数を減算します。Subtracts a double-precision real number from a complex number.

Subtraction(Double, Complex) Subtraction(Double, Complex) Subtraction(Double, Complex) Subtraction(Double, Complex)

倍精度実数から複素数を減算します。Subtracts a complex number from a double-precision real number.

UnaryNegation(Complex) UnaryNegation(Complex) UnaryNegation(Complex) UnaryNegation(Complex)

指定した複素数の加法に関する逆元を返します。Returns the additive inverse of a specified complex number.

適用対象