sytrs_3#
Functions
-
void ssytrs_3(const char *uplo, const INT n, const INT nrhs, const f32 *restrict A, const INT lda, const f32 *restrict E, const INT *restrict ipiv, f32 *restrict B, const INT ldb, INT *info)#
SSYTRS_3 solves a system of linear equations A * X = B with a real symmetric matrix A using the factorization computed by SSYTRF_RK or DSYTRF_BK:
A = P*U*D*(U**T)*(P**T) or A = P*L*D*(L**T)*(P**T),
where U (or L) is unit upper (or lower) triangular matrix, U**T (or L**T) is the transpose of U (or L), P is a permutation matrix, P**T is the transpose of P, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.
This algorithm is using Level 3 BLAS.
Parameters
inuploSpecifies whether the details of the factorization are stored as an upper or lower triangular matrix: = ‘U’: Upper triangular, form is A = P*U*D*(U**T)*(P**T); = ‘L’: Lower triangular, form is A = P*L*D*(L**T)*(P**T).
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inADouble precision array, dimension (lda, n). Diagonal of the block diagonal matrix D and factors U or L as computed by SSYTRF_RK and DSYTRF_BK.
inldaThe leading dimension of the array A. lda >= max(1, n).
inEDouble precision array, dimension (n). Contains the superdiagonal (or subdiagonal) elements of the symmetric block diagonal matrix D.
inipivInteger array, dimension (n). Details of the interchanges and the block structure of D.
inoutBDouble precision array, dimension (ldb, nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.
inldbThe leading dimension of the array B. ldb >= max(1, n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void ssytrs_3(
const char* uplo,
const INT n,
const INT nrhs,
const f32* restrict A,
const INT lda,
const f32* restrict E,
const INT* restrict ipiv,
f32* restrict B,
const INT ldb,
INT* info
);
Functions
-
void dsytrs_3(const char *uplo, const INT n, const INT nrhs, const f64 *restrict A, const INT lda, const f64 *restrict E, const INT *restrict ipiv, f64 *restrict B, const INT ldb, INT *info)#
DSYTRS_3 solves a system of linear equations A * X = B with a real symmetric matrix A using the factorization computed by DSYTRF_RK or DSYTRF_BK:
A = P*U*D*(U**T)*(P**T) or A = P*L*D*(L**T)*(P**T),
where U (or L) is unit upper (or lower) triangular matrix, U**T (or L**T) is the transpose of U (or L), P is a permutation matrix, P**T is the transpose of P, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.
This algorithm is using Level 3 BLAS.
Parameters
inuploSpecifies whether the details of the factorization are stored as an upper or lower triangular matrix: = ‘U’: Upper triangular, form is A = P*U*D*(U**T)*(P**T); = ‘L’: Lower triangular, form is A = P*L*D*(L**T)*(P**T).
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inADouble precision array, dimension (lda, n). Diagonal of the block diagonal matrix D and factors U or L as computed by DSYTRF_RK and DSYTRF_BK.
inldaThe leading dimension of the array A. lda >= max(1, n).
inEDouble precision array, dimension (n). Contains the superdiagonal (or subdiagonal) elements of the symmetric block diagonal matrix D.
inipivInteger array, dimension (n). Details of the interchanges and the block structure of D.
inoutBDouble precision array, dimension (ldb, nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.
inldbThe leading dimension of the array B. ldb >= max(1, n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void dsytrs_3(
const char* uplo,
const INT n,
const INT nrhs,
const f64* restrict A,
const INT lda,
const f64* restrict E,
const INT* restrict ipiv,
f64* restrict B,
const INT ldb,
INT* info
);
Functions
-
void csytrs_3(const char *uplo, const INT n, const INT nrhs, const c64 *restrict A, const INT lda, const c64 *restrict E, const INT *restrict ipiv, c64 *restrict B, const INT ldb, INT *info)#
CSYTRS_3 solves a system of linear equations A * X = B with a complex symmetric matrix A using the factorization computed by CSYTRF_RK or ZSYTRF_BK:
A = P*U*D*(U**T)*(P**T) or A = P*L*D*(L**T)*(P**T),
where U (or L) is unit upper (or lower) triangular matrix, U**T (or L**T) is the transpose of U (or L), P is a permutation matrix, P**T is the transpose of P, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.
This algorithm is using Level 3 BLAS.
Parameters
inuploSpecifies whether the details of the factorization are stored as an upper or lower triangular matrix: = ‘U’: Upper triangular, form is A = P*U*D*(U**T)*(P**T); = ‘L’: Lower triangular, form is A = P*L*D*(L**T)*(P**T).
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inASingle complex array, dimension (lda, n). Diagonal of the block diagonal matrix D and factors U or L as computed by CSYTRF_RK and ZSYTRF_BK.
inldaThe leading dimension of the array A. lda >= max(1, n).
inESingle complex array, dimension (n). Contains the superdiagonal (or subdiagonal) elements of the symmetric block diagonal matrix D.
inipivInteger array, dimension (n). Details of the interchanges and the block structure of D.
inoutBSingle complex array, dimension (ldb, nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.
inldbThe leading dimension of the array B. ldb >= max(1, n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void csytrs_3(
const char* uplo,
const INT n,
const INT nrhs,
const c64* restrict A,
const INT lda,
const c64* restrict E,
const INT* restrict ipiv,
c64* restrict B,
const INT ldb,
INT* info
);
Functions
-
void zsytrs_3(const char *uplo, const INT n, const INT nrhs, const c128 *restrict A, const INT lda, const c128 *restrict E, const INT *restrict ipiv, c128 *restrict B, const INT ldb, INT *info)#
ZSYTRS_3 solves a system of linear equations A * X = B with a complex symmetric matrix A using the factorization computed by ZSYTRF_RK or ZSYTRF_BK:
A = P*U*D*(U**T)*(P**T) or A = P*L*D*(L**T)*(P**T),
where U (or L) is unit upper (or lower) triangular matrix, U**T (or L**T) is the transpose of U (or L), P is a permutation matrix, P**T is the transpose of P, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.
This algorithm is using Level 3 BLAS.
Parameters
inuploSpecifies whether the details of the factorization are stored as an upper or lower triangular matrix: = ‘U’: Upper triangular, form is A = P*U*D*(U**T)*(P**T); = ‘L’: Lower triangular, form is A = P*L*D*(L**T)*(P**T).
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inADouble complex array, dimension (lda, n). Diagonal of the block diagonal matrix D and factors U or L as computed by ZSYTRF_RK and ZSYTRF_BK.
inldaThe leading dimension of the array A. lda >= max(1, n).
inEDouble complex array, dimension (n). Contains the superdiagonal (or subdiagonal) elements of the symmetric block diagonal matrix D.
inipivInteger array, dimension (n). Details of the interchanges and the block structure of D.
inoutBDouble complex array, dimension (ldb, nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.
inldbThe leading dimension of the array B. ldb >= max(1, n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void zsytrs_3(
const char* uplo,
const INT n,
const INT nrhs,
const c128* restrict A,
const INT lda,
const c128* restrict E,
const INT* restrict ipiv,
c128* restrict B,
const INT ldb,
INT* info
);