Visible to Intel only — GUID: GUID-B470C2D6-4905-4E47-9ABD-A127C1273C33
Visible to Intel only — GUID: GUID-B470C2D6-4905-4E47-9ABD-A127C1273C33
mkl_sparse_?_svd
Computes the largest/smallest singular values of a singular-value problem
Syntax
sparse_status_t mkl_sparse_s_svd (char *whichS, char *whichV, MKL_INT *pm, sparse_matrix_t A, struct matrix_descr descrA, MKL_INT k0, MKL_INT *k, float *E, float *XL, float *XR, float *res);
sparse_status_t mkl_sparse_d_svd (char *whichS, char *whichV, MKL_INT *pm, sparse_matrix_t A, struct matrix_descr descrA, MKL_INT k0, MKL_INT *k, double *E, double *XL, double *XR, double *res);
Include Files
- mkl_solvers_ee.h
Description
The mkl_sparse_?_svd routine computes the largest/smallest singular values of a singular-value problem.
AATx = σx or ATAx = σx, where A is the real rectangular matrix.
Input Parameters
whichS |
Indicates eigenvalues for which to search:
|
||||||
whichV |
Indicates singular vectors for which to search:
|
||||||
pm |
Array of size 128. This array is used to pass various parameters to Extended Eigensolver routines. See • Extended Eigensolver Input Parameters for Extremal Eigenvalue Problem for a complete description of the parameters and their default values. |
||||||
A |
Handle containing sparse matrix in internal data structure. |
||||||
descrA |
Structure specifying sparse matrix properties.
|
||||||
k0 |
The desired number of the largest/smallest eigenvalues to find. |
Output Parameters
k |
Number of eigenvalues found. |
E |
Array of size k0. Contains k largest/smallest eigenvalues. |
XL |
Array of size k0*Number of rows of matrix A. Contains k left singular vectors. |
XR |
Array of size k0*Number of columns of matrix A. Contains k right singular vectors. |
Res |
Array that contains k residuals. |
Return Values
The function returns a value indicating whether the operation was successful or not, and why.
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. |