ComplexMatrixTranspose Method |
Namespace: Novacta.Analytics
Let and
be the
number of rows and columns, respectively, of this instance, and consider its generic entry
The method returns the transpose of this instance, i.e. a matrix, say ,
having rows and
columns, whose generic
entry is:
In the following example, the transpose of a matrix is computed.
using System; using System.Numerics; namespace Novacta.Analytics.CodeExamples { public class ComplexOutPlaceTransposeExample0 { public void Main() { // Create a matrix. var data = new Complex[6] { new Complex(1, -1), new Complex(5, -5), new Complex(2, -2), new Complex(6, -6), new Complex(3, -3), new Complex(7, -7) }; var matrix = ComplexMatrix.Dense(3, 2, data, StorageOrder.RowMajor); Console.WriteLine("The data matrix:"); Console.WriteLine(matrix); // Return its transpose. var transposedMatrix = matrix.Transpose(); Console.WriteLine(); Console.WriteLine("Matrix transpose:"); Console.WriteLine(transposedMatrix); // Compute the transpose using a read-only wrapper of the data matrix. ReadOnlyComplexMatrix readOnlyMatrix = matrix.AsReadOnly(); var transposedReadOnlyMatrix = readOnlyMatrix.Transpose(); Console.WriteLine(); Console.WriteLine("Read only matrix transpose:"); Console.WriteLine(transposedReadOnlyMatrix); } } } // Executing method Main() produces the following output: // // The data matrix: // ( 1, -1) ( 5, -5) // ( 2, -2) ( 6, -6) // ( 3, -3) ( 7, -7) // // // // Matrix transpose: // ( 1, -1) ( 2, -2) ( 3, -3) // ( 5, -5) ( 6, -6) ( 7, -7) // // // // Read only matrix transpose: // ( 1, -1) ( 2, -2) ( 3, -3) // ( 5, -5) ( 6, -6) ( 7, -7) //