kao.math.matvec.Matrix Class Reference
A Matrix class.
More...
List of all members.
Classes |
class | Bounds |
| Calculates the row and column ranges to use for multi-threaded processing.
|
Public Member Functions |
| Matrix (int rows, int cols, boolean sparse) |
| Matrix (int firstRow, int rows, int firstCol, int cols, boolean sparse) |
void | init () |
void | set (int i, int j, double e) |
void | set (Matrix M) |
double | get (int i, int j) |
int | getCols () |
int | getRows () |
int | getFirstCol () |
int | getLastCol () |
int | getFirstRow () |
int | getLastRow () |
boolean | isSparse () |
void | print (String s) |
void | write (String file) |
Vector | getCol (int j) |
Vector | getRow (int i) |
void | setCol (int j, Vector col) |
void | setRow (int i, Vector row) |
boolean | isEmpty () |
Matrix | add (Matrix M) |
Matrix | add (double s) |
Matrix | sub (Matrix M) |
Matrix | sub (double s) |
Matrix | multElem (Matrix M) |
Matrix | mult (Matrix M) |
Vector | mult (Vector x, boolean transpose) |
Vector | mult (Vector x) |
Matrix | mult (double s) |
Matrix | div (Matrix M) |
Matrix | div (double s) |
Matrix | copy () |
Matrix | inverse () |
Matrix | transpose () |
Matrix | resize (int rows, int cols, boolean preserve) |
double | sum () |
boolean | isSameDimension (Matrix A) |
boolean | isSameRowDimension (Matrix A) |
boolean | isSameColDimension (Matrix A) |
Static Public Member Functions |
static Matrix | identity (int firstRow, int rows, int firstCol, int cols, boolean sparse) |
static Matrix | identity (Matrix A) |
static Matrix | zeros (int firstRow, int rows, int firstCol, int cols, boolean sparse) |
static Matrix | zeros (Matrix A) |
static Matrix | empty (int firstRow, int firstCol, boolean sparse) |
static Matrix | empty (Matrix A) |
Detailed Description
A Matrix class.
A flexible Matrix class which can use dense or sparse storage with arbitrary row and column indices. Operations on the matrices are automatically multi-threaded.
- Author:
- David Kao
Constructor & Destructor Documentation
kao.math.matvec.Matrix.Matrix |
( |
int |
rows, |
|
|
int |
cols, |
|
|
boolean |
sparse | |
|
) |
| | |
Create a 0 index based Matrix with the specified number of rows and column.
- Parameters:
-
[in] | rows | Number of rows |
[in] | cols | Number of columns |
[in] | sparse | Is the matrix sparse |
kao.math.matvec.Matrix.Matrix |
( |
int |
firstRow, |
|
|
int |
rows, |
|
|
int |
firstCol, |
|
|
int |
cols, |
|
|
boolean |
sparse | |
|
) |
| | |
Create a Matrix with the specified number of rows and column with a specified start row and column indices.
- Parameters:
-
[in] | firstRow | First row of matrix |
[in] | rows | Number of rows |
[in] | firstCol | First column of matrix |
[in] | cols | Number of columns |
[in] | sparse | Is the matrix sparse |
Member Function Documentation
Matrix kao.math.matvec.Matrix.add |
( |
double |
s |
) |
|
Scalar addition
- Parameters:
-
[in] | s | Scalar to add to this |
- Returns:
- Scalar addition
Matrix kao.math.matvec.Matrix.copy |
( |
|
) |
|
Matrix kao.math.matvec.Matrix.div |
( |
double |
s |
) |
|
Scalar division
- Parameters:
-
[in] | s | Scalar to divide from this |
- Returns:
- Scalar division
Matrix element division
- Parameters:
-
[in] | M | Matrix to divide from this |
- Returns:
- Matrix element division
static Matrix kao.math.matvec.Matrix.empty |
( |
Matrix |
A |
) |
[static] |
Create an empty Matrix with same row and column indices as A
- Parameters:
-
- Returns:
- Empty Matrix
static Matrix kao.math.matvec.Matrix.empty |
( |
int |
firstRow, |
|
|
int |
firstCol, |
|
|
boolean |
sparse | |
|
) |
| | [static] |
Create an empty Matrix
- Parameters:
-
[in] | firstRow | First row |
[in] | firstCol | First column |
[in] | sparse | Is Matrix sparse |
- Returns:
- Identity Matrix
double kao.math.matvec.Matrix.get |
( |
int |
i, |
|
|
int |
j | |
|
) |
| | |
Get element M(i,j)
- Parameters:
-
[in] | i | Row i |
[in] | j | Row j |
- Returns:
- Element i,j
Vector kao.math.matvec.Matrix.getCol |
( |
int |
j |
) |
|
Get column j
- Parameters:
-
- Returns:
- Vector of column j
int kao.math.matvec.Matrix.getCols |
( |
|
) |
|
Get number of columns in Matrix
- Returns:
- Number of columns
int kao.math.matvec.Matrix.getFirstCol |
( |
|
) |
|
Get first column index of Matrix
- Returns:
- Index of first column
int kao.math.matvec.Matrix.getFirstRow |
( |
|
) |
|
Get first row index of Matrix
- Returns:
- Index of first row
int kao.math.matvec.Matrix.getLastCol |
( |
|
) |
|
Get last column index of Matrix
- Returns:
- Index of last column
int kao.math.matvec.Matrix.getLastRow |
( |
|
) |
|
Get last row index of Matrix
- Returns:
- Index of last row
Vector kao.math.matvec.Matrix.getRow |
( |
int |
i |
) |
|
Get row i
- Parameters:
-
- Returns:
- Vector of row i
int kao.math.matvec.Matrix.getRows |
( |
|
) |
|
Get number of rows in Matrix
- Returns:
- Number of rows
static Matrix kao.math.matvec.Matrix.identity |
( |
Matrix |
A |
) |
[static] |
Create an identity Matrix with same dimensions as A
- Parameters:
-
- Returns:
- Identity Matrix
static Matrix kao.math.matvec.Matrix.identity |
( |
int |
firstRow, |
|
|
int |
rows, |
|
|
int |
firstCol, |
|
|
int |
cols, |
|
|
boolean |
sparse | |
|
) |
| | [static] |
Create an identity Matrix
- Parameters:
-
[in] | firstRow | First row |
[in] | rows | Number of rows |
[in] | firstCol | First column |
[in] | cols | Number of columns |
[in] | sparse | Is Matrix sparse |
- Returns:
- Identity Matrix
void kao.math.matvec.Matrix.init |
( |
|
) |
|
Initialise the Matrix to zeros
Matrix kao.math.matvec.Matrix.inverse |
( |
|
) |
|
boolean kao.math.matvec.Matrix.isEmpty |
( |
|
) |
|
Does the Matrix have zero rows and zero columns
- Returns:
- true/false
boolean kao.math.matvec.Matrix.isSameColDimension |
( |
Matrix |
A |
) |
|
Does this Matrix have the same column dimensions as A
- Parameters:
-
- Returns:
- true/false
boolean kao.math.matvec.Matrix.isSameDimension |
( |
Matrix |
A |
) |
|
Does this Matrix have the same dimensions as A
- Parameters:
-
- Returns:
- true/false
boolean kao.math.matvec.Matrix.isSameRowDimension |
( |
Matrix |
A |
) |
|
Does this Matrix have the same row dimensions as A
- Parameters:
-
- Returns:
- true/false
boolean kao.math.matvec.Matrix.isSparse |
( |
|
) |
|
Is Matrix sparse
- Returns:
- true/false
Matrix kao.math.matvec.Matrix.mult |
( |
double |
s |
) |
|
Scalar multiplication
- Parameters:
-
[in] | s | Scalar to multiply to this |
- Returns:
- Scalar multiplication
Vector multiplication
- Parameters:
-
[in] | x | Vector to multiply to this |
- Returns:
- Vector multiplication
Vector kao.math.matvec.Matrix.mult |
( |
Vector |
x, |
|
|
boolean |
transpose | |
|
) |
| | |
Vector multiplication
- Parameters:
-
[in] | x | Vector to multiply to this |
[in] | transpose | Use transpose of this Matrix |
- Returns:
- Vector multiplication
Matrix multiplication
- Parameters:
-
[in] | M | Matrix to multiply to this |
- Returns:
- Matrix multiplication
Matrix element multiplication
- Parameters:
-
[in] | M | Matrix to multiply to this |
- Returns:
- Matrix element multiplication
void kao.math.matvec.Matrix.print |
( |
String |
s |
) |
|
Print the Matrix prefixed with identifier s
- Parameters:
-
Matrix kao.math.matvec.Matrix.resize |
( |
int |
rows, |
|
|
int |
cols, |
|
|
boolean |
preserve | |
|
) |
| | |
Resize Matrix to the specified number of rows and columns. There is a flag to determine whether the data is preserved.
- Parameters:
-
[in] | rows | Number of rows |
[in] | cols | Number of columns |
[in] | preserve | Preserve the matrix data |
- Returns:
- Resized Matrix
void kao.math.matvec.Matrix.set |
( |
Matrix |
M |
) |
|
Set this Matrix to M
- Parameters:
-
void kao.math.matvec.Matrix.set |
( |
int |
i, |
|
|
int |
j, |
|
|
double |
e | |
|
) |
| | |
Set element M(i,j) with the value of e.
- Parameters:
-
[in] | i | Row i |
[in] | j | Column j |
[in] | e | Element value |
void kao.math.matvec.Matrix.setCol |
( |
int |
j, |
|
|
Vector |
col | |
|
) |
| | |
Set column j with Vector col
- Parameters:
-
[in] | j | Column index j |
[in] | col | Vector of column values |
void kao.math.matvec.Matrix.setRow |
( |
int |
i, |
|
|
Vector |
row | |
|
) |
| | |
Set row i with Vector row
- Parameters:
-
[in] | i | Row index i |
[in] | row | Vector of row values |
Matrix kao.math.matvec.Matrix.sub |
( |
double |
s |
) |
|
Scalar subtraction
- Parameters:
-
[in] | s | Scalar to subtract from this |
- Returns:
- Matrix subtraction
Matrix subtraction
- Parameters:
-
[in] | M | Matrix to subtract from this |
- Returns:
- Matrix subtraction
double kao.math.matvec.Matrix.sum |
( |
|
) |
|
Calculate the sum of all elements
- Returns:
- Sum of all elements
Matrix kao.math.matvec.Matrix.transpose |
( |
|
) |
|
Calculate transpose of this Matrix
- Returns:
- Transpose of this Matrix
void kao.math.matvec.Matrix.write |
( |
String |
file |
) |
|
Write Matrix to file
- Parameters:
-
[in] | file | File to write to |
static Matrix kao.math.matvec.Matrix.zeros |
( |
Matrix |
A |
) |
[static] |
Create a Matrix of zeros with same dimensions as A
- Parameters:
-
- Returns:
- Zero Matrix
static Matrix kao.math.matvec.Matrix.zeros |
( |
int |
firstRow, |
|
|
int |
rows, |
|
|
int |
firstCol, |
|
|
int |
cols, |
|
|
boolean |
sparse | |
|
) |
| | [static] |
Create a Matrix of zeros
- Parameters:
-
[in] | firstRow | First row |
[in] | rows | Number of rows |
[in] | firstCol | First column |
[in] | cols | Number of columns |
[in] | sparse | Is Matrix sparse |
- Returns:
- Identity Matrix