syrfs#
Functions
-
void ssyrfs(const char *uplo, const INT n, const INT nrhs, const f32 *restrict A, const INT lda, const f32 *restrict AF, const INT ldaf, const INT *restrict ipiv, const f32 *restrict B, const INT ldb, f32 *restrict X, const INT ldx, f32 *restrict ferr, f32 *restrict berr, f32 *restrict work, INT *restrict iwork, INT *info)#
SSYRFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric indefinite, and provides error bounds and backward error estimates for the solution.
Parameters
inuplo= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inAThe symmetric matrix A. If uplo = ‘U’, the leading N-by-N upper triangular part contains the upper triangular part of A. If uplo = ‘L’, the leading N-by-N lower triangular part contains the lower triangular part of A. Double precision array, dimension (lda, n).
inldaThe leading dimension of the array A. lda >= max(1, n).
inAFThe factored form of the matrix A. AF contains the block diagonal matrix D and the multipliers used to obtain the factor U or L from the factorization A = U*D*U**T or A = L*D*L**T as computed by SSYTRF. Double precision array, dimension (ldaf, n).
inldafThe leading dimension of the array AF. ldaf >= max(1, n).
inipivDetails of the interchanges and the block structure of D as determined by SSYTRF. Integer array, dimension (n).
inBThe right hand side matrix B. Double precision array, dimension (ldb, nrhs).
inldbThe leading dimension of the array B. ldb >= max(1, n).
inoutXOn entry, the solution matrix X, as computed by SSYTRS. On exit, the improved solution matrix X. Double precision array, dimension (ldx, nrhs).
inldxThe leading dimension of the array X. ldx >= max(1, n).
outferrThe estimated forward error bound for each solution vector X(j). Double precision array, dimension (nrhs).
outberrThe componentwise relative backward error of each solution vector X(j). Double precision array, dimension (nrhs).
outworkDouble precision array, dimension (3*n).
outiworkInteger array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void ssyrfs(
const char* uplo,
const INT n,
const INT nrhs,
const f32* restrict A,
const INT lda,
const f32* restrict AF,
const INT ldaf,
const INT* restrict ipiv,
const f32* restrict B,
const INT ldb,
f32* restrict X,
const INT ldx,
f32* restrict ferr,
f32* restrict berr,
f32* restrict work,
INT* restrict iwork,
INT* info
);
Functions
-
void dsyrfs(const char *uplo, const INT n, const INT nrhs, const f64 *restrict A, const INT lda, const f64 *restrict AF, const INT ldaf, const INT *restrict ipiv, const f64 *restrict B, const INT ldb, f64 *restrict X, const INT ldx, f64 *restrict ferr, f64 *restrict berr, f64 *restrict work, INT *restrict iwork, INT *info)#
DSYRFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric indefinite, and provides error bounds and backward error estimates for the solution.
Parameters
inuplo= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inAThe symmetric matrix A. If uplo = ‘U’, the leading N-by-N upper triangular part contains the upper triangular part of A. If uplo = ‘L’, the leading N-by-N lower triangular part contains the lower triangular part of A. Double precision array, dimension (lda, n).
inldaThe leading dimension of the array A. lda >= max(1, n).
inAFThe factored form of the matrix A. AF contains the block diagonal matrix D and the multipliers used to obtain the factor U or L from the factorization A = U*D*U**T or A = L*D*L**T as computed by DSYTRF. Double precision array, dimension (ldaf, n).
inldafThe leading dimension of the array AF. ldaf >= max(1, n).
inipivDetails of the interchanges and the block structure of D as determined by DSYTRF. Integer array, dimension (n).
inBThe right hand side matrix B. Double precision array, dimension (ldb, nrhs).
inldbThe leading dimension of the array B. ldb >= max(1, n).
inoutXOn entry, the solution matrix X, as computed by DSYTRS. On exit, the improved solution matrix X. Double precision array, dimension (ldx, nrhs).
inldxThe leading dimension of the array X. ldx >= max(1, n).
outferrThe estimated forward error bound for each solution vector X(j). Double precision array, dimension (nrhs).
outberrThe componentwise relative backward error of each solution vector X(j). Double precision array, dimension (nrhs).
outworkDouble precision array, dimension (3*n).
outiworkInteger array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void dsyrfs(
const char* uplo,
const INT n,
const INT nrhs,
const f64* restrict A,
const INT lda,
const f64* restrict AF,
const INT ldaf,
const INT* restrict ipiv,
const f64* restrict B,
const INT ldb,
f64* restrict X,
const INT ldx,
f64* restrict ferr,
f64* restrict berr,
f64* restrict work,
INT* restrict iwork,
INT* info
);
Functions
-
void csyrfs(const char *uplo, const INT n, const INT nrhs, const c64 *restrict A, const INT lda, const c64 *restrict AF, const INT ldaf, const INT *restrict ipiv, const c64 *restrict B, const INT ldb, c64 *restrict X, const INT ldx, f32 *restrict ferr, f32 *restrict berr, c64 *restrict work, f32 *restrict rwork, INT *info)#
CSYRFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric indefinite, and provides error bounds and backward error estimates for the solution.
Parameters
inuplo= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inAThe symmetric matrix A. If uplo = ‘U’, the leading N-by-N upper triangular part contains the upper triangular part of A. If uplo = ‘L’, the leading N-by-N lower triangular part contains the lower triangular part of A. Complex array, dimension (lda, n).
inldaThe leading dimension of the array A. lda >= max(1, n).
inAFThe factored form of the matrix A. AF contains the block diagonal matrix D and the multipliers used to obtain the factor U or L from the factorization A = U*D*U**T or A = L*D*L**T as computed by CSYTRF. Complex array, dimension (ldaf, n).
inldafThe leading dimension of the array AF. ldaf >= max(1, n).
inipivDetails of the interchanges and the block structure of D as determined by CSYTRF. Integer array, dimension (n).
inBThe right hand side matrix B. Complex array, dimension (ldb, nrhs).
inldbThe leading dimension of the array B. ldb >= max(1, n).
inoutXOn entry, the solution matrix X, as computed by CSYTRS. On exit, the improved solution matrix X. Complex array, dimension (ldx, nrhs).
inldxThe leading dimension of the array X. ldx >= max(1, n).
outferrThe estimated forward error bound for each solution vector X(j). Real array, dimension (nrhs).
outberrThe componentwise relative backward error of each solution vector X(j). Real array, dimension (nrhs).
outworkComplex workspace array, dimension (2*n).
outrworkReal workspace array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void csyrfs(
const char* uplo,
const INT n,
const INT nrhs,
const c64* restrict A,
const INT lda,
const c64* restrict AF,
const INT ldaf,
const INT* restrict ipiv,
const c64* restrict B,
const INT ldb,
c64* restrict X,
const INT ldx,
f32* restrict ferr,
f32* restrict berr,
c64* restrict work,
f32* restrict rwork,
INT* info
);
Functions
-
void zsyrfs(const char *uplo, const INT n, const INT nrhs, const c128 *restrict A, const INT lda, const c128 *restrict AF, const INT ldaf, const INT *restrict ipiv, const c128 *restrict B, const INT ldb, c128 *restrict X, const INT ldx, f64 *restrict ferr, f64 *restrict berr, c128 *restrict work, f64 *restrict rwork, INT *info)#
ZSYRFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric indefinite, and provides error bounds and backward error estimates for the solution.
Parameters
inuplo= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored
innThe order of the matrix A. n >= 0.
innrhsThe number of right hand sides. nrhs >= 0.
inAThe symmetric matrix A. If uplo = ‘U’, the leading N-by-N upper triangular part contains the upper triangular part of A. If uplo = ‘L’, the leading N-by-N lower triangular part contains the lower triangular part of A. Complex array, dimension (lda, n).
inldaThe leading dimension of the array A. lda >= max(1, n).
inAFThe factored form of the matrix A. AF contains the block diagonal matrix D and the multipliers used to obtain the factor U or L from the factorization A = U*D*U**T or A = L*D*L**T as computed by ZSYTRF. Complex array, dimension (ldaf, n).
inldafThe leading dimension of the array AF. ldaf >= max(1, n).
inipivDetails of the interchanges and the block structure of D as determined by ZSYTRF. Integer array, dimension (n).
inBThe right hand side matrix B. Complex array, dimension (ldb, nrhs).
inldbThe leading dimension of the array B. ldb >= max(1, n).
inoutXOn entry, the solution matrix X, as computed by ZSYTRS. On exit, the improved solution matrix X. Complex array, dimension (ldx, nrhs).
inldxThe leading dimension of the array X. ldx >= max(1, n).
outferrThe estimated forward error bound for each solution vector X(j). Real array, dimension (nrhs).
outberrThe componentwise relative backward error of each solution vector X(j). Real array, dimension (nrhs).
outworkComplex workspace array, dimension (2*n).
outrworkReal workspace array, dimension (n).
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value
void zsyrfs(
const char* uplo,
const INT n,
const INT nrhs,
const c128* restrict A,
const INT lda,
const c128* restrict AF,
const INT ldaf,
const INT* restrict ipiv,
const c128* restrict B,
const INT ldb,
c128* restrict X,
const INT ldx,
f64* restrict ferr,
f64* restrict berr,
c128* restrict work,
f64* restrict rwork,
INT* info
);