porfs#

Functions

void sporfs(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const f32*  restrict A,
    const INT            lda,
    const f32*  restrict AF,
    const INT            ldaf,
    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
);
void sporfs(const char *uplo, const INT n, const INT nrhs, const f32 *restrict A, const INT lda, const f32 *restrict AF, const INT ldaf, 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)#

SPORFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric positive definite, and provides error bounds and backward error estimates for the solution.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
n

The order of the matrix A. n>=0.

in
nrhs

The number of right hand sides. nrhs>=0.

in
A

Array of dimension (lda, n). The symmetric matrix A. If uplo='U', 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='L', 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.

in
lda

The leading dimension of the array A. lda>=max(1,n).

in
AF

Array of dimension (ldaf, n). The triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T, as computed by spotrf.

in
ldaf

The leading dimension of the array AF. ldaf>=max(1,n).

in
B

Array of dimension (ldb, nrhs). The right hand side matrix B.

in
ldb

The leading dimension of the array B. ldb>=max(1,n).

inout
X

Array of dimension (ldx, nrhs). On entry, the solution matrix X, as computed by spotrs. On exit, the improved solution matrix X.

in
ldx

The leading dimension of the array X. ldx>=max(1,n).

out
ferr

Array of dimension (nrhs). The estimated forward error bound for each solution vector.

out
berr

Array of dimension (nrhs). The componentwise relative backward error of each solution vector.

out
work

Array of dimension 3*n.

out
iwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-k, the k-th argument had an illegal value

Functions

void dporfs(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const f64*  restrict A,
    const INT            lda,
    const f64*  restrict AF,
    const INT            ldaf,
    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
);
void dporfs(const char *uplo, const INT n, const INT nrhs, const f64 *restrict A, const INT lda, const f64 *restrict AF, const INT ldaf, 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)#

DPORFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric positive definite, and provides error bounds and backward error estimates for the solution.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
n

The order of the matrix A. n>=0.

in
nrhs

The number of right hand sides. nrhs>=0.

in
A

Array of dimension (lda, n). The symmetric matrix A. If uplo='U', 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='L', 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.

in
lda

The leading dimension of the array A. lda>=max(1,n).

in
AF

Array of dimension (ldaf, n). The triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T, as computed by dpotrf.

in
ldaf

The leading dimension of the array AF. ldaf>=max(1,n).

in
B

Array of dimension (ldb, nrhs). The right hand side matrix B.

in
ldb

The leading dimension of the array B. ldb>=max(1,n).

inout
X

Array of dimension (ldx, nrhs). On entry, the solution matrix X, as computed by dpotrs. On exit, the improved solution matrix X.

in
ldx

The leading dimension of the array X. ldx>=max(1,n).

out
ferr

Array of dimension (nrhs). The estimated forward error bound for each solution vector.

out
berr

Array of dimension (nrhs). The componentwise relative backward error of each solution vector.

out
work

Array of dimension 3*n.

out
iwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-k, the k-th argument had an illegal value

Functions

void cporfs(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const c64*  restrict A,
    const INT            lda,
    const c64*  restrict AF,
    const INT            ldaf,
    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
);
void cporfs(const char *uplo, const INT n, const INT nrhs, const c64 *restrict A, const INT lda, const c64 *restrict AF, const INT ldaf, 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)#

CPORFS improves the computed solution to a system of linear equations when the coefficient matrix is Hermitian positive definite, and provides error bounds and backward error estimates for the solution.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
n

The order of the matrix A. n>=0.

in
nrhs

The number of right hand sides. nrhs>=0.

in
A

Array of dimension (lda, n). The Hermitian matrix A. If uplo='U', 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='L', 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.

in
lda

The leading dimension of the array A. lda>=max(1,n).

in
AF

Array of dimension (ldaf, n). The triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H, as computed by cpotrf.

in
ldaf

The leading dimension of the array AF. ldaf>=max(1,n).

in
B

Array of dimension (ldb, nrhs). The right hand side matrix B.

in
ldb

The leading dimension of the array B. ldb>=max(1,n).

inout
X

Array of dimension (ldx, nrhs). On entry, the solution matrix X, as computed by cpotrs. On exit, the improved solution matrix X.

in
ldx

The leading dimension of the array X. ldx>=max(1,n).

out
ferr

Array of dimension (nrhs). The estimated forward error bound for each solution vector.

out
berr

Array of dimension (nrhs). The componentwise relative backward error of each solution vector.

out
work

Complex array of dimension 2*n.

out
rwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-k, the k-th argument had an illegal value

Functions

void zporfs(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const c128* restrict A,
    const INT            lda,
    const c128* restrict AF,
    const INT            ldaf,
    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
);
void zporfs(const char *uplo, const INT n, const INT nrhs, const c128 *restrict A, const INT lda, const c128 *restrict AF, const INT ldaf, 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)#

ZPORFS improves the computed solution to a system of linear equations when the coefficient matrix is Hermitian positive definite, and provides error bounds and backward error estimates for the solution.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
n

The order of the matrix A. n>=0.

in
nrhs

The number of right hand sides. nrhs>=0.

in
A

Array of dimension (lda, n). The Hermitian matrix A. If uplo='U', 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='L', 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.

in
lda

The leading dimension of the array A. lda>=max(1,n).

in
AF

Array of dimension (ldaf, n). The triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H, as computed by zpotrf.

in
ldaf

The leading dimension of the array AF. ldaf>=max(1,n).

in
B

Array of dimension (ldb, nrhs). The right hand side matrix B.

in
ldb

The leading dimension of the array B. ldb>=max(1,n).

inout
X

Array of dimension (ldx, nrhs). On entry, the solution matrix X, as computed by zpotrs. On exit, the improved solution matrix X.

in
ldx

The leading dimension of the array X. ldx>=max(1,n).

out
ferr

Array of dimension (nrhs). The estimated forward error bound for each solution vector.

out
berr

Array of dimension (nrhs). The componentwise relative backward error of each solution vector.

out
work

Complex array of dimension 2*n.

out
rwork

Array of dimension n.

out
info

  • info=0: successful exit

  • info<0: if info=-k, the k-th argument had an illegal value