|
|
◆ CsrSsr()
| Sub CsrSsr |
( |
Uplo As |
String, |
|
|
N As |
Long, |
|
|
Val() As |
Double, |
|
|
Rowptr() As |
Long, |
|
|
Colind() As |
Long, |
|
|
Val2() As |
Double, |
|
|
Rowptr2() As |
Long, |
|
|
Colind2() As |
Long, |
|
|
Optional Info As |
Long, |
|
|
Optional Base As |
Long = -1, |
|
|
Optional Base2 As |
Long = 0 |
|
) |
| |
CSR (symmetric full matrix) -> SSR (CSR sparse matrix packed form)
- Purpose
- This function converts the general CSR sparse symmetric matrix containing all elements to the CSR sparse symmetric matrix containing only upper or lower triangular elements.
- Parameters
-
| [in] | Uplo | Specifies whether the upper or lower triangular part is stored in the output matrix.
= "U": A is stored in upper triangular part.
= "L": A is stored in lower triangular part. |
| [in] | N | Number of rows and columns of the matrix. (N >= 0) (if N = 0, returns without computation) |
| [in] | Val() | Array Val(LVal - 1) (LVal >= Nnz) (Nnz is the number of nonzero elements)
Values of nonzero elements of input matrix. |
| [in] | Rowptr() | Array Rowptr(LRowptr - 1) (LRowptr >= N + 1)
Row pointers of input matrix. |
| [in] | Colind() | Array Colind(LColind - 1) (LColind >= Nnz)
Column indices of input matrix. |
| [out] | Val2() | Array Val2(LVal2 - 1) (LVal2 >= Nnz2) (Nnz2 is the number of nonzero elements of upper or lower triangular part of output matrix)
Values of nonzero elements of output matrix. |
| [out] | Rowptr2() | Array Rowptr2(LRowptr2 - 1) (LRowptr2 >= N + 1)
Row pointers of output matrix. |
| [out] | Colind2() | Array Colind2(LColind2 - 1) (LColind2 >= Nnz2)
Column indices of output matrix. |
| [out] | Info | (Optional)
= 0: Successful exit.
= i < 0: The (-i)-th argument is invalid. |
| [in] | Base | (Optional)
Indexing of Rowptr() and Colind().
= 0: Zero-based (C style) indexing: Starting index is 0.
= 1: One-based (Fortran style) indexing: Starting index is 1.
(default: Assumes 1 if Rowptr(0) = 1, 0 otherwise) |
| [in] | Base2 | (Optional)
Indexing of Rowptr2() and Colind2(). (default = 0)
= 0: Zero-based (C style) indexing: Starting index is 0.
= 1: One-based (Fortran style) indexing: Starting index is 1. |
|