public class PermutationMatrix extends AbstractMatrix
NOTE: the transpose of a permutation matrix is its inverse.
Matrix.NormnumColumns, numRows| Constructor and Description |
|---|
PermutationMatrix(int[] permutations) |
| Modifier and Type | Method and Description |
|---|---|
static PermutationMatrix |
fromPartialPivots(int[] pivots)
The sequential row permutations to perform, e.g.
|
double |
get(int row,
int column)
Returns
A(row,column) |
Matrix |
mult(Matrix B,
DenseMatrix C) |
Matrix |
mult(Matrix B,
Matrix C)
C = A*B |
Matrix |
transAmult(Matrix B,
DenseMatrix C) |
Matrix |
transAmult(Matrix B,
Matrix C)
C = AT*B |
Matrix |
transpose()
Transposes the matrix in-place.
|
add, add, add, check, checkMultAdd, checkMultAdd, checkRank1, checkRank1, checkRank2, checkRank2, checkSize, checkSolve, checkSolve, checkTransABmultAdd, checkTransAmultAdd, checkTransBmultAdd, checkTransMultAdd, checkTranspose, checkTranspose, checkTransRank1, checkTransRank2, copy, isSquare, iterator, max, max, mult, mult, mult, multAdd, multAdd, multAdd, multAdd, norm, norm1, normF, normInf, numColumns, numRows, rank1, rank1, rank1, rank1, rank1, rank1, rank2, rank2, rank2, rank2, scale, set, set, set, solve, solve, toString, transABmult, transABmult, transABmultAdd, transABmultAdd, transAmult, transAmultAdd, transAmultAdd, transBmult, transBmult, transBmultAdd, transBmultAdd, transMult, transMult, transMultAdd, transMultAdd, transpose, transRank1, transRank1, transRank2, transRank2, transSolve, transSolve, zeroclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitforEach, spliteratorpublic static PermutationMatrix fromPartialPivots(int[] pivots)
Using this factory will ensure that LAPACK optimisations are available for multiplication operations.
pivots - using fortran (1-indexed) notation.public double get(int row,
int column)
MatrixA(row,column)get in interface Matrixget in class AbstractMatrixpublic Matrix transpose()
Matrixtranspose in interface Matrixtranspose in class AbstractMatrixpublic Matrix mult(Matrix B, Matrix C)
MatrixC = A*Bmult in interface Matrixmult in class AbstractMatrixB - 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 Matrix mult(Matrix B, DenseMatrix C)
public Matrix transAmult(Matrix B, Matrix C)
MatrixC = AT*BtransAmult in interface MatrixtransAmult in class AbstractMatrixB - Matrix such that B.numRows() == A.numRows() and
B.numColumns() == C.numColumns()C - Matrix such that C.numRows() == A.numColumns()
and B.numColumns() == C.numColumns()public Matrix transAmult(Matrix B, DenseMatrix C)
Copyright © 2015. All Rights Reserved.