|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectno.uib.cipr.matrix.AbstractMatrix
no.uib.cipr.matrix.sparse.CompRowMatrix
public class CompRowMatrix
Compressed row storage (CRS) matrix
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface no.uib.cipr.matrix.Matrix |
---|
Matrix.Norm |
Field Summary |
---|
Fields inherited from class no.uib.cipr.matrix.AbstractMatrix |
---|
numColumns, numRows |
Constructor Summary | |
---|---|
CompRowMatrix(int numRows,
int numColumns,
int[][] nz)
Constructor for CompRowMatrix |
|
CompRowMatrix(Matrix A)
Constructor for CompRowMatrix |
|
CompRowMatrix(Matrix A,
boolean deep)
Constructor for CompRowMatrix |
|
CompRowMatrix(MatrixVectorReader r)
Constructor for CompRowMatrix |
Method Summary | |
---|---|
void |
add(int row,
int column,
double value)
A(row,column) += value |
CompRowMatrix |
copy()
Creates a deep copy of the matrix |
double |
get(int row,
int column)
Returns A(row,column) |
int[] |
getColumnIndices()
Returns the column indices |
double[] |
getData()
Returns the internal data storage |
int[] |
getRowPointers()
Returns the row pointers |
java.util.Iterator<MatrixEntry> |
iterator()
|
Matrix |
mult(Matrix B,
Matrix C)
C = A*B |
Vector |
mult(Vector x,
Vector y)
y = A*x |
Vector |
multAdd(double alpha,
Vector x,
Vector y)
y = alpha*A*x + y |
void |
set(int row,
int column,
double value)
A(row,column) = value |
Matrix |
set(Matrix B)
A=B . |
Vector |
transMult(Vector x,
Vector y)
y = AT*x |
Vector |
transMultAdd(double alpha,
Vector x,
Vector y)
y = alpha*AT*x + y |
CompRowMatrix |
zero()
Zeros all the entries in the matrix, while preserving any underlying structure. |
Methods inherited from class no.uib.cipr.matrix.AbstractMatrix |
---|
add, add, check, checkMultAdd, checkMultAdd, checkRank1, checkRank1, checkRank2, checkRank2, checkSize, checkSolve, checkSolve, checkTransABmultAdd, checkTransAmultAdd, checkTransBmultAdd, checkTransMultAdd, checkTranspose, checkTranspose, checkTransRank1, checkTransRank2, isSquare, max, max, mult, mult, multAdd, multAdd, multAdd, norm, norm1, normF, normInf, numColumns, numRows, rank1, rank1, rank1, rank1, rank1, rank1, rank2, rank2, rank2, rank2, scale, set, solve, solve, toString, transABmult, transABmult, transABmultAdd, transABmultAdd, transAmult, transAmult, transAmultAdd, transAmultAdd, transBmult, transBmult, transBmultAdd, transBmultAdd, transMult, transMultAdd, transpose, transpose, transRank1, transRank1, transRank2, transRank2, transSolve, transSolve |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public CompRowMatrix(MatrixVectorReader r) throws java.io.IOException
r
- Reader to get sparse matrix from
java.io.IOException
public CompRowMatrix(int numRows, int numColumns, int[][] nz)
numRows
- Number of rowsnumColumns
- Number of columnsnz
- The nonzero column indices on each rowpublic CompRowMatrix(Matrix A, boolean deep)
A
- Copies from this matrixdeep
- True if the copy is to be deep. If it is a shallow copy,
A
must be a CompRowMatrix
public CompRowMatrix(Matrix A)
A
- Copies from this matrix. The copy will be deepMethod Detail |
---|
public int[] getColumnIndices()
public int[] getRowPointers()
public double[] getData()
public Matrix mult(Matrix B, Matrix C)
Matrix
C = A*B
mult
in interface Matrix
mult
in class AbstractMatrix
B
- Matrix such that B.numRows() == A.numColumns()
and B.numColumns() == C.numColumns()
C
- Matrix such that C.numRows() == A.numRows()
and
B.numColumns() == C.numColumns()
public Vector mult(Vector x, Vector y)
Matrix
y = A*x
mult
in interface Matrix
mult
in class AbstractMatrix
x
- Vector of size A.numColumns()
y
- Vector of size A.numRows()
public Vector multAdd(double alpha, Vector x, Vector y)
Matrix
y = alpha*A*x + y
multAdd
in interface Matrix
multAdd
in class AbstractMatrix
x
- Vector of size A.numColumns()
y
- Vector of size A.numRows()
public Vector transMult(Vector x, Vector y)
Matrix
y = AT*x
transMult
in interface Matrix
transMult
in class AbstractMatrix
x
- Vector of size A.numRows()
y
- Vector of size A.numColumns()
public Vector transMultAdd(double alpha, Vector x, Vector y)
Matrix
y = alpha*AT*x + y
transMultAdd
in interface Matrix
transMultAdd
in class AbstractMatrix
x
- Vector of size A.numRows()
y
- Vector of size A.numColumns()
public void set(int row, int column, double value)
Matrix
A(row,column) = value
set
in interface Matrix
set
in class AbstractMatrix
public void add(int row, int column, double value)
Matrix
A(row,column) += value
add
in interface Matrix
add
in class AbstractMatrix
public double get(int row, int column)
Matrix
A(row,column)
get
in interface Matrix
get
in class AbstractMatrix
public CompRowMatrix copy()
Matrix
copy
in interface Matrix
copy
in class AbstractMatrix
public java.util.Iterator<MatrixEntry> iterator()
iterator
in interface java.lang.Iterable<MatrixEntry>
iterator
in class AbstractMatrix
public CompRowMatrix zero()
Matrix
zero
in interface Matrix
zero
in class AbstractMatrix
public Matrix set(Matrix B)
Matrix
A=B
. The matrices must be of the same size
set
in interface Matrix
set
in class AbstractMatrix
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |