new SparseMatrix()
This class represents a m by n real matrix where only nonzero entries
are stored explicitly. Do not create a SparseMatrix from its constructor,
instead use static factory methods such as fromTriplet, identity and diag.
Example
let T = new Triplet(100, 100); T.addEntry(3.4, 11, 43); T.addEntry(6.4, 99, 99); let A = SparseMatrix.fromTriplet(T); let B = SparseMatrix.identity(10, 10); let d = DenseMatrix.ones(100, 1); let C = SparseMatrix.diag(d);
Methods
-
<static> fromTriplet(T)
-
Initializes a sparse matrix from a Triplet object.
Parameters:
Name Type Description Tmodule:LinearAlgebra.Triplet A triplet object containing only the nonzero entries that
need to be stored in this sparse matrix.Returns:
-
<static> identity(m, n)
-
Initializes a m by n sparse identity matrix.
Parameters:
Name Type Description mnumber The number of rows in this sparse matrix.
nnumber The number of columns in this sparse matrix.
Returns:
-
<static> diag(d)
-
Initializes a sparse diagonal matrix.
Parameters:
Name Type Description dmodule:LinearAlgebra.DenseMatrix The dense vector (d.nCols() == 1) used to initialize
this sparse diagonal matrix.Returns:
-
transpose()
-
Returns the transpose of this sparse matrix.
Returns:
-
invertDiagonal()
-
Returns the inverse of this diagonal sparse matrix.
Returns:
-
nRows()
-
Returns the number of rows in this sparse matrix.
Returns:
- Type
- number
-
nCols()
-
Returns the number of columns in this sparse matrix.
Returns:
- Type
- number
-
nnz()
-
Returns the number of nonzero entries in this sparse matrix.
Returns:
- Type
- number
-
frobeniusNorm()
-
Computes the frobenius norm of this sparse matrix.
Returns:
- Type
- number
-
subMatrix(r0, r1, c0, c1)
-
Extracts a sparse sub-matrix in the range [r0, r1) x [c0, c1), i.e., a matrix
of size (r1 - r0) x (c1 - c0) starting at indices (r0, c0).Parameters:
Name Type Description r0number The start row index.
r1number The end row index (not included).
c0number The start column index.
c1number The end column index (not included).
Returns:
-
chol()
-
Returns a sparse Cholesky factorization of this sparse matrix.
Returns:
-
lu()
-
Returns a sparse LU factorization of this sparse matrix.
Returns:
-
qr()
-
Returns a sparse QR factorization of this sparse matrix.
Returns:
-
toDense()
-
Returns a dense copy of this sparse matrix.
Returns:
-
incrementBy(B)
-
A += B
Parameters:
Name Type Description Bmodule:LinearAlgebra.SparseMatrix The sparse matrix added to this sparse matrix.
-
decrementBy(B)
-
A -= B
Parameters:
Name Type Description Bmodule:LinearAlgebra.SparseMatrix The sparse matrix subtracted from this sparse matrix.
-
scaleBy(s)
-
A *= s
Parameters:
Name Type Description snumber The number this sparse matrix is scaled by.
-
plus(B)
-
Returns A + B
Parameters:
Name Type Description Bmodule:LinearAlgebra.SparseMatrix The sparse matrix added to this sparse matrix.
Returns:
-
minus(B)
-
Returns A - B
Parameters:
Name Type Description Bmodule:LinearAlgebra.SparseMatrix The sparse matrix subtracted from this sparse matrix.
Returns:
-
timesReal(s)
-
Returns A * s
Parameters:
Name Type Description snumber The number this sparse matrix is multiplied by.
Returns:
-
timesDense(X)
-
Returns A * X
Parameters:
Name Type Description Xmodule:LinearAlgebra.DenseMatrix The dense matrix this sparse matrix is multiplied by.
Returns:
-
timesSparse(B)
-
Returns A * B
Parameters:
Name Type Description Bmodule:LinearAlgebra.SparseMatrix The sparse matrix this sparse matrix is multiplied by.
Returns: