# SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.algebra.linear.matrix.generic.matrixtype

## Class ComplexMatrix

• java.lang.Object
• com.numericalmethod.suanshu.algebra.linear.matrix.generic.matrixtype.ComplexMatrix
• ### Constructor Summary

Constructors
Constructor and Description
ComplexMatrix(Complex[][] data)
Construct a Complex matrix.
ComplexMatrix(double[][] data)
Construct a Complex matrix.
ComplexMatrix(int nRows, int nCols)
Construct a Complex matrix.
• ### Method Summary

All Methods
Modifier and Type Method and Description
ComplexMatrix add(ComplexMatrix that)
+ : G × G → G
DenseMatrix doubleValue()
Construct a DenseMatrix equivalent of this Complex matrix (rounded if necessary).
boolean equals(Object obj)
Complex get(int row, int col)
Get the matrix entry at [i,j].
int hashCode()
ComplexMatrix minus(ComplexMatrix that)
- : G × G → G

The operation "-" is not in the definition of of an additive group but can be deduced.

ComplexMatrix multiply(ComplexMatrix that)
× : G × G → G
int nCols()
Gets the number of columns.
int nRows()
Gets the number of rows.
ComplexMatrix ONE()
The multiplicative element 1 in the group such that for any elements a in the group, the equation 1 × a = a × 1 = a holds.
ComplexMatrix opposite()
For each a in G, there exists an element b in G such that a + b = b + a = 0.
ComplexMatrix scaled(Complex scalar)
× : F × V → V

The result of applying this function to a scalar, c, in F and v in V is denoted cv.

void set(int row, int col, Complex value)
Set the matrix entry at [i,j] to a value.
String toString()
ComplexMatrix ZERO()
The additive element 0 in the group, such that for all elements a in the group, the equation 0 + a = a + 0 = a holds.
• ### Methods inherited from class java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait
• ### Constructor Detail

• #### ComplexMatrix

public ComplexMatrix(int nRows,
int nCols)
Construct a Complex matrix.
Parameters:
nRows - the number of rows
nCols - the number of columns
• #### ComplexMatrix

public ComplexMatrix(Complex[][] data)
Construct a Complex matrix.
Parameters:
data - a matrix data of Complex numbers in a 2D array
• #### ComplexMatrix

public ComplexMatrix(double[][] data)
Construct a Complex matrix.
Parameters:
data - a matrix data of doubles in a 2D array
• ### Method Detail

• #### nRows

public int nRows()
Description copied from interface: Table
Gets the number of rows. Rows count from 1.
Specified by:
nRows in interface Table
Returns:
the number of rows
• #### nCols

public int nCols()
Description copied from interface: Table
Gets the number of columns. Columns count from 1.
Specified by:
nCols in interface Table
Returns:
the number of columns
• #### set

public void set(int row,
int col,
Complex value)
Description copied from interface: GenericMatrixAccess
Set the matrix entry at [i,j] to a value. This is the only method that may change a matrix.
Specified by:
set in interface GenericMatrixAccess<Complex>
Parameters:
row - the row index
col - the column index
value - the value to set A[i,j] to
• #### get

public Complex get(int row,
int col)
Description copied from interface: GenericMatrixAccess
Get the matrix entry at [i,j].
Specified by:
get in interface GenericMatrixAccess<Complex>
Parameters:
row - the row index
col - the column index
Returns:
A[i,j]

public ComplexMatrix add(ComplexMatrix that)
Description copied from interface: AbelianGroup
+ : G × G → G
Specified by:
add in interface AbelianGroup<ComplexMatrix>
Parameters:
that - the object to be added
Returns:
this + that
• #### minus

public ComplexMatrix minus(ComplexMatrix that)
Description copied from interface: AbelianGroup
- : G × G → G

The operation "-" is not in the definition of of an additive group but can be deduced. This function is provided for convenience purpose. It is equivalent to

this.add(that.opposite())
.
Specified by:
minus in interface AbelianGroup<ComplexMatrix>
Parameters:
that - the object to be subtracted (subtrahend)
Returns:
this - that
• #### multiply

public ComplexMatrix multiply(ComplexMatrix that)
Description copied from interface: Monoid
× : G × G → G
Specified by:
multiply in interface Monoid<ComplexMatrix>
Parameters:
that - the multiplicand
Returns:
this × that
• #### scaled

public ComplexMatrix scaled(Complex scalar)
Description copied from interface: VectorSpace
× : F × V → V

The result of applying this function to a scalar, c, in F and v in V is denoted cv.

Specified by:
scaled in interface VectorSpace<ComplexMatrix,Complex>
Parameters:
scalar - a multiplier
Returns:
c * this
Wikipedia: Scalar multiplication
• #### opposite

public ComplexMatrix opposite()
Description copied from interface: AbelianGroup
For each a in G, there exists an element b in G such that a + b = b + a = 0. That is, it is the object such as
this.add(this.opposite()) == this.ZERO
Specified by:
opposite in interface AbelianGroup<ComplexMatrix>
Returns:
• #### ZERO

public ComplexMatrix ZERO()
Description copied from interface: AbelianGroup
The additive element 0 in the group, such that for all elements a in the group, the equation 0 + a = a + 0 = a holds.
Specified by:
ZERO in interface AbelianGroup<ComplexMatrix>
Returns:
• #### ONE

public ComplexMatrix ONE()
Description copied from interface: Monoid
The multiplicative element 1 in the group such that for any elements a in the group, the equation 1 × a = a × 1 = a holds.
Specified by:
ONE in interface Monoid<ComplexMatrix>
Returns:
1
• #### toString

public String toString()
Overrides:
toString in class Object
• #### equals

public boolean equals(Object obj)
Overrides:
equals in class Object
• #### hashCode

public int hashCode()
Overrides:
hashCode in class Object