|
Graphite Version 3
An experimental 3D geometry processing program
|
Public Attributes | |
| NLuint | m |
| number of rows | |
| NLuint | n |
| number of columns | |
| NLenum | type |
| Matrix type. | |
| NLDestroyMatrixFunc | destroy_func |
| destructor | |
| NLMultMatrixVectorFunc | mult_func |
| Matrix x vector product. | |
| NLuint | diag_size |
| number of elements in the diagonal | |
| NLuint | diag_capacity |
| Number of elements allocated to store the diagonal. | |
| NLenum | storage |
| indicates what is stored in this matrix | |
| NLRowColumn * | row |
| the rows if (storage & NL_MATRIX_STORE_ROWS), size = m, NULL otherwise | |
| NLRowColumn * | column |
| the columns if (storage & NL_MATRIX_STORE_COLUMNS), size = n, NULL otherwise | |
| NLdouble * | diag |
| the diagonal elements, size = diag_size | |
| NLuint | row_capacity |
| Number of row descriptors allocated in the row array. | |
| NLuint | column_capacity |
| Number of column descriptors allocated in the column array. | |
Related Symbols | |
(Note that these are not member symbols.) | |
| NLAPI NLulong NLAPIENTRY | nlCRSMatrixAdd (NLCRSMatrix *M, NLuint i, NLuint j, NLdouble value) |
| Adds a coefficient to an NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlCRSMatrixAddAt (NLCRSMatrix *M, NLuint i, NLuint j, NLdouble value, NLulong index) |
| Adds a coefficient to an NLSparseMatrix at a known location. | |
| NLAPI void NLAPIENTRY | nlCRSMatrixSetCoefficientAtRowOffset (NLCRSMatrix *M, NLuint i, NLuint j, NLdouble value, NLuint row_offset) |
| Sets a coefficient to an NLSparseMatrix at a known row offset. | |
| #define | NL_MATRIX_STORE_ROWS 1 |
| #define | NL_MATRIX_STORE_COLUMNS 2 |
| #define | NL_MATRIX_STORE_SYMMETRIC 4 |
| NLAPI NLMatrix NLAPIENTRY | nlSparseMatrixNew (NLuint m, NLuint n, NLenum storage) |
| Constructs a new NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixConstruct (NLSparseMatrix *M, NLuint m, NLuint n, NLenum storage) |
| Constructs a new NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixDestroy (NLSparseMatrix *M) |
| Destroys an NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixMult (NLSparseMatrix *A, const NLdouble *x, NLdouble *y) |
| Computes a matrix-vector product. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixAdd (NLSparseMatrix *M, NLuint i, NLuint j, NLdouble value) |
| Adds a coefficient to an NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixZero (NLSparseMatrix *M) |
| Zeroes an NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixClear (NLSparseMatrix *M) |
| Clears an NLSparseMatrix. | |
| NLAPI NLuint_big NLAPIENTRY | nlSparseMatrixNNZ (NLSparseMatrix *M) |
| Gets the number of non-zero coefficient in an NLSparseMatrix. | |
| NLAPI void NLAPIENTRY | nlSparseMatrixSort (NLSparseMatrix *M) |
| Sorts the coefficients in an NLSParseMatrix. | |
Begin/End | |
| NLAPI void NLAPIENTRY | nlSetIJCoefficientAtRowOffset (NLuint i, NLuint j, NLdouble value, NLuint row_offset) |
| Sets a coefficient to the current matrix at a known row offset. | |
Definition at line 512 of file nl_matrix.h.
|
related |
for NLSparseMatrix storage: indicates that columns are stored.
Definition at line 503 of file nl_matrix.h.
|
related |
for NLSparseMatrix storage: indicates that rows are stored.
Definition at line 497 of file nl_matrix.h.
|
related |
for NLSparseMatrix storage: indicates that symmetric storage is used (only the lower triangular part is stored).
Definition at line 510 of file nl_matrix.h.
|
related |
Adds a coefficient to an NLSparseMatrix.
Performs the following operation: $ a_{i,j} \leftarrow a_{i,j} + \mbox{value} $
| [in,out] | M | a pointer to an NLSparseMatrix |
| [in] | i | index of the row |
| [in] | j | index of the column |
| [in] | value | the coefficient to be added |
|
related |
Adds a coefficient to an NLSparseMatrix at a known location.
Performs the following operation: $ a_{i,j} \leftarrow a_{i,j} + \mbox{value} $
| [in,out] | M | a pointer to an NLSparseMatrix |
| [in] | i | index of the row |
| [in] | j | index of the column |
| [in] | value | the coefficient to be added |
| [in] | index | the index in the CRS arrays where the coefficient is stored |
index already exists and has column index j
|
related |
Sets a coefficient to an NLSparseMatrix at a known row offset.
Performs the following operation: $ a_{i,j} \leftarrow a_{i,j} + \mbox{value} $
| [in,out] | M | a pointer to an NLSparseMatrix |
| [in] | i | index of the row |
| [in] | j | index of the column |
| [in] | value | the coefficient to be added |
| [in] | row_offset | the offset of the CRS arrays starting from rowptr[i] |
i at row_offset was not previously set
|
related |
Sets a coefficient to the current matrix at a known row offset.
| [in,out] | M | a pointer to an NLSparseMatrix |
| [in] | i | index of the row |
| [in] | j | index of the column |
| [in] | value | the coefficient to be added |
| [in] | row_offset | the offset of the CRS arrays starting from rowptr[i] |
i at row_offset was not previously set
|
related |
Adds a coefficient to an NLSparseMatrix.
Performs the following operation: $ a_{i,j} \leftarrow a_{i,j} + \mbox{value} $
| [in,out] | M | a pointer to an NLSparseMatrix |
| [in] | i | index of the row |
| [in] | j | index of the column |
| [in] | value | the coefficient to be added |
|
related |
Clears an NLSparseMatrix.
The memory is freed.
| [in,out] | M | a pointer to the NLSparseMatrix to zero |
|
related |
Constructs a new NLSparseMatrix.
| [in,out] | M | a pointer to an uninitialized NLSparseMatrix |
| [in] | m | number of rows |
| [in] | n | number of columns |
| [in] | storage | a bitwise or combination of flags that indicate what needs to be stored in the matrix. |
|
related |
Destroys an NLSparseMatrix.
Only the memory allocated by the NLSparseMatrix is freed. The NLSparseMatrix structure is not freed.
| [in,out] | M | a pointer to an NLSparseMatrix |
|
related |
Computes a matrix-vector product.
| [in] | A | a pointer to the matrix |
| [in] | x | the vector to be multiplied, size = A->n |
| [in] | y | where to store the result, size = A->m |
Constructs a new NLSparseMatrix.
| [in] | m | number of rows |
| [in] | n | number of columns |
| [in] | storage | a bitwise or combination of flags that indicate what needs to be stored in the matrix. |
|
related |
Gets the number of non-zero coefficient in an NLSparseMatrix.
| [in] | M | a pointer to the NLSparseMatrix |
M
|
related |
Sorts the coefficients in an NLSParseMatrix.
| [in,out] | M | a pointer to the NLSparseMatrix |
|
related |
Zeroes an NLSparseMatrix.
The memory is not freed.
| [in,out] | M | a pointer to the NLSparseMatrix to zero |
| NLRowColumn* NLSparseMatrix::column |
the columns if (storage & NL_MATRIX_STORE_COLUMNS), size = n, NULL otherwise
Definition at line 566 of file nl_matrix.h.
| NLuint NLSparseMatrix::column_capacity |
Number of column descriptors allocated in the column array.
Definition at line 583 of file nl_matrix.h.
| NLDestroyMatrixFunc NLSparseMatrix::destroy_func |
destructor
Definition at line 533 of file nl_matrix.h.
| NLdouble* NLSparseMatrix::diag |
the diagonal elements, size = diag_size
Definition at line 571 of file nl_matrix.h.
| NLuint NLSparseMatrix::diag_capacity |
Number of elements allocated to store the diagonal.
Definition at line 549 of file nl_matrix.h.
| NLuint NLSparseMatrix::diag_size |
number of elements in the diagonal
Definition at line 544 of file nl_matrix.h.
| NLuint NLSparseMatrix::m |
number of rows
Definition at line 516 of file nl_matrix.h.
| NLMultMatrixVectorFunc NLSparseMatrix::mult_func |
Matrix x vector product.
Definition at line 538 of file nl_matrix.h.
| NLuint NLSparseMatrix::n |
number of columns
Definition at line 521 of file nl_matrix.h.
| NLRowColumn* NLSparseMatrix::row |
the rows if (storage & NL_MATRIX_STORE_ROWS), size = m, NULL otherwise
Definition at line 560 of file nl_matrix.h.
| NLuint NLSparseMatrix::row_capacity |
Number of row descriptors allocated in the row array.
Definition at line 577 of file nl_matrix.h.
| NLenum NLSparseMatrix::storage |
indicates what is stored in this matrix
Definition at line 554 of file nl_matrix.h.
| NLenum NLSparseMatrix::type |
Matrix type.
One of NL_MATRIX_DYNAMIC, NL_MATRIX_CRS, NL_MATRIX_SUPERLU_EXT, NL_CHOLDMOD_MATRIX_EXT
Definition at line 528 of file nl_matrix.h.