# SuanShu, a Java numerical and statistical library

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

## Class RealMatrix

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

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

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

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

RealMatrix multiply(RealMatrix that)
× : G × G → G
int nCols()
Gets the number of columns.
int nRows()
Gets the number of rows.
RealMatrix 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.
RealMatrix opposite()
For each a in G, there exists an element b in G such that a + b = b + a = 0.
RealMatrix scaled(Real 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, Real value)
Set the matrix entry at [i,j] to a value.
String toString()
RealMatrix 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

• #### RealMatrix

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

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

public RealMatrix(double[][] data)
Construct a Real 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,
Real 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<Real>
Parameters:
row - the row index
col - the column index
value - the value to set A[i,j] to
• #### get

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

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

public RealMatrix minus(RealMatrix 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<RealMatrix>
Parameters:
that - the object to be subtracted (subtrahend)
Returns:
this - that
• #### multiply

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

public RealMatrix scaled(Real 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<RealMatrix,Real>
Parameters:
scalar - a multiplier
Returns:
c * this
Wikipedia: Scalar multiplication
• #### opposite

public RealMatrix 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<RealMatrix>
Returns:
• #### ZERO

public RealMatrix 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<RealMatrix>
Returns:
• #### ONE

public RealMatrix 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<RealMatrix>
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