PIPS-NLP
|
#include <SparseGenMatrix.h>
Public Member Functions | |
SparseGenMatrix () | |
SparseGenMatrix (int rows, int cols, int nnz) | |
SparseGenMatrix (int rows, int cols, int nnz, int krowM[], int jcolM[], double M[], int deleteElts=0) | |
virtual void | getSize (long long &m, long long &n) |
virtual void | getSize (int &m, int &n) |
virtual int | numberOfNonZeros () |
virtual int | isKindOf (int matType) |
virtual void | atPutDense (int row, int col, double *A, int lda, int rowExtent, int colExtent) |
virtual void | fromGetDense (int row, int col, double *A, int lda, int rowExtent, int colExtent) |
virtual void | fromAddDense (int row, int col, double *A, int lda, int rowExtent, int colExtent) |
virtual void | ColumnScale (OoqpVector &vec) |
virtual void | RowScale (OoqpVector &vec) |
virtual void | SymmetricScale (OoqpVector &vec) |
virtual void | scalarMult (double num) |
virtual void | fromGetSpRow (int row, int col, double A[], int lenA, int jcolA[], int &nnz, int colExtent, int &info) |
virtual void | atPutSubmatrix (int destRow, int destCol, DoubleMatrix &M, int srcRow, int srcCol, int rowExtent, int colExtent) |
virtual void | atPutSpRow (int col, double A[], int lenA, int jcolA[], int &info) |
virtual void | putSparseTriple (int irow[], int len, int jcol[], double A[], int &info) |
virtual void | getDiagonal (OoqpVector &vec) |
virtual void | setToDiagonal (OoqpVector &vec) |
virtual void | mult (double beta, OoqpVector &y, double alpha, OoqpVector &x) |
virtual void | mult (double beta, double y[], int incy, double alpha, double x[], int incx) |
virtual void | transMult (double beta, OoqpVector &y, double alpha, OoqpVector &x) |
virtual void | transMult (double beta, OoqpVector &y_in, int incy, double alpha, OoqpVector &x_in, int incx) |
virtual void | transMult (double beta, double y_in[], int incy, double alpha, double x_in[], int incx) |
virtual void | matTransDMultMat (OoqpVector &d, SymMatrix **res) |
virtual void | matTransDinvMultMat (OoqpVector &d, SymMatrix **res) |
virtual void | matMultTrans (SymMatrix **res) |
virtual double | abmaxnorm () |
virtual void | writeToStream (std::ostream &out) const |
virtual void | symmetrize (int &info) |
virtual int * | symmetrize_set (int &info) |
virtual void | symmetrize_valonly (double *val_lower, int *goffIDX) |
virtual void | randomize (double alpha, double beta, double *seed) |
virtual void | atPutDiagonal (int idiag, OoqpVector &v) |
virtual void | fromGetDiagonal (int idiag, OoqpVector &v) |
SparseStorage * | getStorage () |
SparseStorage & | getStorageRef () |
int * | krowM () |
int * | jcolM () |
double * | M () |
virtual void | copyMtxFromDouble (int copyLength, double *values) |
virtual | ~SparseGenMatrix () |
virtual void | setAdditiveDiagonal (OoqpVector &diag) |
virtual void | fromGetSpRow_WithRowStart (int row, int col, double A[], int lenA, int jcolA[], int &nnz, int colExtent, int &info, int &rowStart) |
virtual double * | getMatVal () |
virtual void | fromGetDense_withMap (int row, int col, double *A, int lda, int rowExtent, int colExtent, int const FirstCall, std::map< int, int > &ValIdxMap) |
virtual void | printMatrixInMatlab (char *name) |
virtual void | transCopyof (SparseGenMatrix &from) |
![]() | |
DoubleMatrix () | |
virtual | ~DoubleMatrix () |
virtual void | copyDiagonalVal_From (int idiag, OoqpVector &x, bool firstCall, std::map< int, int > &ValIdxMap) |
![]() | |
int | refs () |
IotrRefCount () | |
Protected Attributes | |
SparseStorageHandle | mStorage |
int | size |
SparseGenMatrix * | m_Mt |
Additional Inherited Members | |
![]() | |
static void | release (IotrRefCount **obj) |
static void | addRef (IotrRefCount *const *obj) |
![]() | |
static int | instances = 0 |
![]() | |
virtual | ~IotrRefCount () |
Represents sparse non-symmetric, possibly non-square matrices stored in row-major Harwell-Boeing format.
SparseGenMatrix::SparseGenMatrix | ( | ) |
SparseGenMatrix::SparseGenMatrix | ( | int | rows, |
int | cols, | ||
int | nnz | ||
) |
SparseGenMatrix::SparseGenMatrix | ( | int | rows, |
int | cols, | ||
int | nnz, | ||
int | krowM[], | ||
int | jcolM[], | ||
double | M[], | ||
int | deleteElts = 0 |
||
) |
|
virtual |
|
virtual |
the magnitude of the element in this matrix with largest absolute value.
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Set the value of some of the elements of this matrix.
Implements GenMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Set some of the diagonal elements of this matrix.
idiag | the index of the first diagonal element to be modified. |
x | the new values for the diagonal elements. |
The length of x is the number of diagonal elements to be modified. Typically x will have length less than the length of the diagonal.
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Put a sparse row into this matrix.
The meaning of the parmameters is the same as in fromGetSpRow.
Implements GenMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Put a submatrix of M into this matrix.
destRow | The top row of the submatrix of M is placed at destRow. |
destCol | The leftmost column of the submatrix of M is placed at destCol. |
srcRow | The first row of the submatrix of M is srcRow. |
srcCol | The first column of the submatrix of M is srcCol. |
rowExtent | rowExtent rows are copied from M. |
colExtent | colExtent columns are copied from M. |
Implements GenMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented from DoubleMatrix.
|
virtual |
Get the value of some of the elements of this matrix.
row | start reading the elements of this matrix from row number "row". |
col | start reading the elements of this matrix from column number "col". |
A | Any array to hold the values from this matrix. |
ldA | the leading dimension of A. |
rowExtent | get rowExtent rows from this matrix. |
colExtent | get colExtent columns from this matrix. |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Get some of the diagonal elements of this matrix.
idiag | the index of the first diagonal element to be read. |
x | a vector to hold the diagonal elements |
The length of x is the number of diagonal elements to be gotten. Typically x will have length less than the length of the diagonal.
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Get one sparse row from this matrix.
row | get row number "row" |
col | ignore all elements of the row before column "col" |
A | store the values of the sparse row in A |
lenA | the length of A |
jcolA | an array of length lenA containing the column index of each element in the sparse row |
colExtent | ignore all elements of the row that have column indices greater than or equal to col + colExtent |
info | info is 0 if and only if the sparse row can fit into A. |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Place the diagonal elements of this matrix in the vector vec
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
inlinevirtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Implements DoubleMatrix.
|
virtual |
Implements DoubleMatrix.
|
inline |
|
inline |
|
virtual |
True if this matrix identifies itself to be of type matrixType.
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
inlinevirtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
inlinevirtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
inlinevirtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
C = this * this^T
Reimplemented in SeqSparseGenMatrix.
|
virtual |
C = this^T * inv(D) * this where D=diag(d) is a diagonal matrix.
Implements GenMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
C = this^T * D * this where D=diag(d) is a diagonal matrix.
Implements GenMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
|
virtual |
Reimplemented in SeqSparseGenMatrix.
|
virtual |
The actual number of structural non-zero elements in this sparse matrix. This includes so-called "accidental" zeros, elements that are treated as non-zero even though their value happens to be zero.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Copy elements from sparse triple format into this matrix
len | the number of elements |
irow | an array containing the row number of the elements |
jcol | an array containing the column number of the elements |
A | an array containing the values for the elements. |
info | on return, info will be zero if and only if the insertion was successful. |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Fill this matrix with random elements.
alpha | the elements will be no smaller than alpha. |
beta | the elements will be no larger than beta. |
seed | a arbitrary number used to seed the random number generator. |
Implements GenMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented from DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Set the matrix to the diagoanl matrix whose diagonal is vec
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Get the number of rows and columns in the matrix
m | the number of rows |
n | the number of columns |
Implements DoubleMatrix.
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Make the elements in this matrix symmetric. The elements of interest must be in the lower triangle, and the upper triangle must be empty.
info | zero if the operation succeeded. Otherwise, insufficient space was allocated to symmetrize the matrix. |
Reimplemented in SeqSparseGenMatrix.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Reimplemented in SeqSparseGenMatrix.
|
virtual |
Write this element to a C++ stream
Implements DoubleMatrix.
|
protected |
|
protected |
|
protected |