mkl_sparse_?_qr_solve
mkl_sparse_?_qr_solve
Solving step of the SPARSE QR solver.
Syntax
sparse_status_t
mkl_sparse_d_qr_solve
(
sparse_operation_t
operation
,
sparse_matrix_t
A
,
double
*alt_values
,
sparse_layout_t
layout
,
MKL_INT
columns
,
double
*x
,
MKL_INT
ldx
,
const
double
*b
,
MKL_INT
ldb
);
sparse_status_t
mkl_sparse_s_qr_solve
(
sparse_operation_t
operation
,
sparse_matrix_t
A
,
float
*alt_values
,
sparse_layout_t
layout
,
MKL_INT
columns
,
float
*x
,
MKL_INT
ldx
,
const
float
*b
,
MKL_INT
ldb
);
Include Files
- mkl_sparse_qr.h
Description
The
mkl_sparse_?_qr_solve routine
computes the solution of sparse systems of linear equations A
*x
= b
.Currently,
mkl_sparse_?_qr_solve
supports only CSR format for the input matrix, non-transpose operation, and single right-hand side.Alternative values are not supported and must be set to NULL.
Input Parameters
- operation
- Specifies the operation to perform.Currently, the only suppored value isSPARSE_OPERATION_NON_TRANSPOSE(non-transpose case; that is,A*x=bis solved).
- A
- Handle containing a sparse matrix in an internal data structure.
- alt_values
- Reserved for future use.
- layout
- Describes the storage scheme for the dense matrix:SPARSE_LAYOUT_COLUMN_MAJORStorage of elements uses column-major layout.SPARSE_LAYOUT_ROW_MAJORStorage of elements uses row-major layout.
- x
- Array with a size of at leastrows*cols:layout=SPARSE_LAYOUT_COLUMN_MAJORlayout=SPARSE_LAYOUT_ROW_MAJORrows(number of rows inx)ldxNumber of columns inAcols(number of columns inx)columnsldx
- columns
- Number of columns in matrixb.
- ldx
- Specifies the leading dimension of matrixx.
- b
- Array with a size of at leastrows*cols:layout=SPARSE_LAYOUT_COLUMN_MAJORlayout=SPARSE_LAYOUT_ROW_MAJORrows(number of rows inb)ldbNumber of columns inAcols(number of columns inb)columnsldb
- ldb
- Specifies the leading dimension of matrixb.
Output Parameters
- x
- Contains the solution of systemA*x=b.
Return Values
- SPARSE_STATUS_SUCCESS
- The operation was successful.
- SPARSE_STATUS_NOT_INITIALIZED
- The routine encountered an empty handle or matrix array.
- SPARSE_STATUS_ALLOC_FAILED
- Internal memory allocation failed.
- SPARSE_STATUS_INVALID_VALUE
- The input parameters contain an invalid value.
- SPARSE_STATUS_EXECUTION_FAILED
- Execution failed.
- SPARSE_STATUS_INTERNAL_ERROR
- An error in algorithm implementation occurred.
- SPARSE_STATUS_NOT_SUPPORTED
- The requested operation is not supported.