Class ComplexMatrix
  
  Static class ComplexExtensions. Defines a set of extension methods
that operates mainly on multidimensional arrays and vectors of
AForge.NET's  data type.
 
  
  
    Inheritance
    System.Object
    ComplexMatrix
   
  
  Assembly: ISynergy.Framework.Mathematics.dll
  Syntax
  
    public static class ComplexMatrix : object
   
  Methods
  
  
  
    View Source
  
  
  Abs(Complex[])
  Computes the absolute value of an array of complex numbers.
 
  
  Declaration
  
    public static Complex[] Abs(this Complex[] x)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        x | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | Complex[] | 
         | 
      
    
  
  
  
    View Source
  
  
  Conjugate(Complex[])
  Gets the conjugate of every complex number in an array.
 
  
  Declaration
  
    public static Complex[] Conjugate(this Complex[] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | Complex[] | 
         | 
      
    
  
  
  
    View Source
  
  
  Conjugate(Complex[][])
  Gets the conjugate of every complex number in a matrix.
 
  
  Declaration
  
    public static Complex[][] Conjugate(this Complex[][] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[][] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | Complex[][] | 
         | 
      
    
  
  
  
    View Source
  
  
  Conjugate(Complex[,])
  Gets the conjugate of every complex number in a matrix.
 
  
  Declaration
  
    public static Complex[, ] Conjugate(this Complex[, ] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[,] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | Complex[,] | 
         | 
      
    
  
  
  
    View Source
  
  
  Im(Complex[])
  Returns the imaginary vector part of the complex vector c.
 
  
  Declaration
  
    public static double[] Im(this Complex[] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        c | 
        A vector of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[] | 
        A vector of scalars with the imaginary part of the complex numbers. 
 | 
      
    
  
  
  
    View Source
  
  
  Im(Complex[][])
  Returns the imaginary matrix part of the complex matrix c.
 
  
  Declaration
  
    public static double[][] Im(this Complex[][] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[][] | 
        c | 
        A matrix of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[][] | 
        A matrix of scalars with the imaginary part of the complex numbers. 
 | 
      
    
  
  
  
    View Source
  
  
  Im(Complex[,])
  Returns the imaginary matrix part of the complex matrix c.
 
  
  Declaration
  
    public static double[, ] Im(this Complex[, ] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[,] | 
        c | 
        A matrix of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[,] | 
        A matrix of scalars with the imaginary part of the complex numbers. 
 | 
      
    
  
  
  
    View Source
  
  
  IsEqual(Complex[], Complex[], Double)
  Compares two vectors for equality, considering an acceptance threshold.
 
  
  Declaration
  
    public static bool IsEqual(this Complex[] objA, Complex[] objB, double threshold)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        objA | 
         | 
      
      
        | Complex[] | 
        objB | 
         | 
      
      
        | System.Double | 
        threshold | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
    View Source
  
  
  IsEqual(Complex[][], Complex[][], Double)
  Compares two matrices for equality, considering an acceptance threshold.
 
  
  Declaration
  
    public static bool IsEqual(this Complex[][] objA, Complex[][] objB, double threshold)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[][] | 
        objA | 
         | 
      
      
        | Complex[][] | 
        objB | 
         | 
      
      
        | System.Double | 
        threshold | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
    View Source
  
  
  Magnitude(Complex[])
  Gets the magnitude of every complex number in an array.
 
  
  Declaration
  
    public static double[] Magnitude(this Complex[] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[] | 
         | 
      
    
  
  
  
    View Source
  
  
  Magnitude(Complex[][])
  Gets the magnitude of every complex number in a matrix.
 
  
  Declaration
  
    public static double[][] Magnitude(this Complex[][] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[][] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[][] | 
         | 
      
    
  
  
  
    View Source
  
  
  Magnitude(Complex[,])
  Gets the magnitude of every complex number in a matrix.
 
  
  Declaration
  
    public static double[, ] Magnitude(this Complex[, ] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[,] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[,] | 
         | 
      
    
  
  
  
    View Source
  
  
  Multiply(Complex[], Complex[])
  Elementwise multiplication of two complex vectors.
 
  
  Declaration
  
    public static Complex[] Multiply(this Complex[] a, Complex[] b)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        a | 
         | 
      
      
        | Complex[] | 
        b | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | Complex[] | 
         | 
      
    
  
  
  
    View Source
  
  
  Phase(Complex[])
  Gets the phase of every complex number in an array.
 
  
  Declaration
  
    public static double[] Phase(this Complex[] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[] | 
         | 
      
    
  
  
  
    View Source
  
  
  Phase(Complex[][])
  Gets the phase of every complex number in a matrix.
 
  
  Declaration
  
    public static double[][] Phase(this Complex[][] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[][] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[][] | 
         | 
      
    
  
  
  
    View Source
  
  
  Phase(Complex[,])
  Gets the phase of every complex number in a matrix.
 
  
  Declaration
  
    public static double[, ] Phase(this Complex[, ] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[,] | 
        c | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[,] | 
         | 
      
    
  
  
  
    View Source
  
  
  Range(Complex[])
  Gets the range of the magnitude values in a complex number vector.
 
  
  Declaration
  
    public static NumericRange Range(this Complex[] array)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        array | 
        A complex number vector. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | NumericRange | 
        The range of magnitude values in the complex vector. 
 | 
      
    
  
  
  
    View Source
  
  
  Re(Complex[])
  Returns the real vector part of the complex vector c.
 
  
  Declaration
  
    public static double[] Re(this Complex[] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        c | 
        A vector of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[] | 
        A vector of scalars with the real part of the complex numbers. 
 | 
      
    
  
  
  
    View Source
  
  
  Re(Complex[][])
  Returns the real matrix part of the complex matrix c.
 
  
  Declaration
  
    public static double[][] Re(this Complex[][] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[][] | 
        c | 
        A matrix of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[][] | 
        A matrix of scalars with the real part of the complex numbers. 
 | 
      
    
  
  
  
    View Source
  
  
  Re(Complex[,])
  Returns the real matrix part of the complex matrix c.
 
  
  Declaration
  
    public static double[, ] Re(this Complex[, ] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[,] | 
        c | 
        A matrix of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[,] | 
        A matrix of scalars with the real part of the complex numbers. 
 | 
      
    
  
  
  
    View Source
  
  
  SquaredMagnitude(Complex)
  Gets the squared magnitude of a complex number.
 
  
  Declaration
  
    public static double SquaredMagnitude(this Complex value)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex | 
        value | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double | 
         | 
      
    
  
  
  
    View Source
  
  
  Sum(Complex[])
  Computes the sum of an array of complex numbers.
 
  
  Declaration
  
    public static Complex Sum(this Complex[] x)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        x | 
         | 
      
    
  
  Returns
  
  
  
    View Source
  
  
  ToArray(Complex[])
  Converts a complex number to a matrix of scalar values
in which the first column contains the real values and
the second column contains the imaginary values.
 
  
  Declaration
  
    public static double[, ] ToArray(this Complex[] c)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Complex[] | 
        c | 
        An array of complex numbers. 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Double[,] | 
         | 
      
    
  
  
  
    View Source
  
  
  ToComplex(Double[], Double[])
  Combines a vector of real and a vector of
imaginary numbers to form complex numbers.
 
  
  Declaration
  
    public static Complex[] ToComplex(this double[] real, double[] imag)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Double[] | 
        real | 
        The real part of the complex numbers. 
 | 
      
      
        | System.Double[] | 
        imag | 
        The imaginary part of the complex numbers 
 | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | Complex[] | 
        A vector of complex number with the given
real numbers as their real components and
imaginary numbers as their imaginary parts. 
 |