PLASMA
2.8.0
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
|
void CORE_ssygst | ( | int | itype, |
PLASMA_enum | uplo, | ||
int | N, | ||
float * | A, | ||
int | LDA, | ||
float * | B, | ||
int | LDB, | ||
int * | INFO | ||
) |
CORE_ssygst - reduces a complex Hermitian-definite generalized eigenproblem to standard form. If PlasmaItype == 1, the problem is A*x = lambda*B*x, and A is overwritten by inv(U**T)*A*inv(U) or inv(L)*A*inv(L**T) If PlasmaItype == 2 or 3, the problem is A*B*x = lambda*x or B*A*x = lambda*x, and A is overwritten by U*A*U**T or L**T*A*L. B must have been previously factorized as U**T*U or L*L**T by CORE_spotrf.
[in] | itype | Intended usage: = 1: A*x=(lambda)*B*x = 2: A*Bx=(lambda)*x = 3: B*A*x=(lambda)*x |
[in] | uplo | Specifies whether the matrix A is upper triangular or lower triangular: = PlasmaUpper: Upper triangle of A is stored; = PlasmaLower: Lower triangle of A is stored. |
[in] | N | The order of the matrices A and B. N >= 0. |
[in,out] | A | On entry, the symmetric (or Hermitian) matrix A. If uplo = PlasmaUpper, the leading N-by-N upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. If uplo = PlasmaLower, the leading N-by-N lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced. On exit, if return value == 0, the transformed matrix, stored in the same format as A. |
[in] | LDA | The leading dimension of the array A. LDA >= max(1,N). |
[in,out] | B | On entry, the triangular factor from the Cholesky factorization of B, as returned by PLASMA_SPOTRF. |
[in] | LDB | The leading dimension of the array B. LDB >= max(1,N). |
[out] | INFO |
|