sytrs_aa#

Functions

void ssytrs_aa(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const f32*  restrict A,
    const INT            lda,
    const INT*  restrict ipiv,
          f32*  restrict B,
    const INT            ldb,
          f32*  restrict work,
    const INT            lwork,
          INT*           info
);
void ssytrs_aa(const char *uplo, const INT n, const INT nrhs, const f32 *restrict A, const INT lda, const INT *restrict ipiv, f32 *restrict B, const INT ldb, f32 *restrict work, const INT lwork, INT *info)#

SSYTRS_AA solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U**T*T*U or A = L*T*L**T computed by SSYTRF_AA.

Parameters

in
uplo

  • 'U': Upper triangular, form is A = U**T*T*U

  • 'L': Lower triangular, form is A = L*T*L**T

in
n

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

in
nrhs

The number of right hand sides, i.e., the number of columns of the matrix B. nrhs>=0.

in
A

Array of dimension (lda,n). Details of factors computed by ssytrf_aa.

in
lda

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

in
ipiv

Array of dimension n. Details of the interchanges as computed by ssytrf_aa.

inout
B

Array of dimension (ldb,nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.

in
ldb

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

out
work

Array of dimension max(1,lwork).

in
lwork

The dimension of the array work. If min(n,nrhs)=0, lwork>=1, else lwork>=3*n-2. If lwork=-1, then a workspace query is assumed; the routine only calculates the minimal size of the work array, returns this value as the first entry of the work array, and no error message related to lwork is issued.

out
info

  • info=0: successful exit

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

Functions

void dsytrs_aa(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const f64*  restrict A,
    const INT            lda,
    const INT*  restrict ipiv,
          f64*  restrict B,
    const INT            ldb,
          f64*  restrict work,
    const INT            lwork,
          INT*           info
);
void dsytrs_aa(const char *uplo, const INT n, const INT nrhs, const f64 *restrict A, const INT lda, const INT *restrict ipiv, f64 *restrict B, const INT ldb, f64 *restrict work, const INT lwork, INT *info)#

DSYTRS_AA solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U**T*T*U or A = L*T*L**T computed by DSYTRF_AA.

Parameters

in
uplo

  • 'U': Upper triangular, form is A = U**T*T*U

  • 'L': Lower triangular, form is A = L*T*L**T

in
n

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

in
nrhs

The number of right hand sides, i.e., the number of columns of the matrix B. nrhs>=0.

in
A

Array of dimension (lda,n). Details of factors computed by dsytrf_aa.

in
lda

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

in
ipiv

Array of dimension n. Details of the interchanges as computed by dsytrf_aa.

inout
B

Array of dimension (ldb,nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.

in
ldb

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

out
work

Array of dimension max(1,lwork).

in
lwork

The dimension of the array work. If min(n,nrhs)=0, lwork>=1, else lwork>=3*n-2. If lwork=-1, then a workspace query is assumed; the routine only calculates the minimal size of the work array, returns this value as the first entry of the work array, and no error message related to lwork is issued.

out
info

  • info=0: successful exit

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

Functions

void csytrs_aa(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const c64*  restrict A,
    const INT            lda,
    const INT*  restrict ipiv,
          c64*  restrict B,
    const INT            ldb,
          c64*  restrict work,
    const INT            lwork,
          INT*           info
);
void csytrs_aa(const char *uplo, const INT n, const INT nrhs, const c64 *restrict A, const INT lda, const INT *restrict ipiv, c64 *restrict B, const INT ldb, c64 *restrict work, const INT lwork, INT *info)#

CSYTRS_AA solves a system of linear equations A*X = B with a complex symmetric matrix A using the factorization A = U**T*T*U or A = L*T*L**T computed by CSYTRF_AA.

Parameters

in
uplo

  • 'U': Upper triangular, form is A = U**T*T*U

  • 'L': Lower triangular, form is A = L*T*L**T

in
n

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

in
nrhs

The number of right hand sides, i.e., the number of columns of the matrix B. nrhs>=0.

in
A

Complex array of dimension (lda,n). Details of factors computed by csytrf_aa.

in
lda

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

in
ipiv

Array of dimension n. Details of the interchanges as computed by csytrf_aa.

inout
B

Complex array of dimension (ldb,nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.

in
ldb

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

out
work

Complex array of dimension max(1,lwork).

in
lwork

The dimension of the array work. If min(n,nrhs)=0, lwork>=1, else lwork>=3*n-2. If lwork=-1, then a workspace query is assumed; the routine only calculates the minimal size of the work array, returns this value as the first entry of the work array, and no error message related to lwork is issued.

out
info

  • info=0: successful exit

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

Functions

void zsytrs_aa(
    const char*          uplo,
    const INT            n,
    const INT            nrhs,
    const c128* restrict A,
    const INT            lda,
    const INT*  restrict ipiv,
          c128* restrict B,
    const INT            ldb,
          c128* restrict work,
    const INT            lwork,
          INT*           info
);
void zsytrs_aa(const char *uplo, const INT n, const INT nrhs, const c128 *restrict A, const INT lda, const INT *restrict ipiv, c128 *restrict B, const INT ldb, c128 *restrict work, const INT lwork, INT *info)#

ZSYTRS_AA solves a system of linear equations A*X = B with a complex symmetric matrix A using the factorization A = U**T*T*U or A = L*T*L**T computed by ZSYTRF_AA.

Parameters

in
uplo

  • 'U': Upper triangular, form is A = U**T*T*U

  • 'L': Lower triangular, form is A = L*T*L**T

in
n

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

in
nrhs

The number of right hand sides, i.e., the number of columns of the matrix B. nrhs>=0.

in
A

Complex array of dimension (lda,n). Details of factors computed by zsytrf_aa.

in
lda

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

in
ipiv

Array of dimension n. Details of the interchanges as computed by zsytrf_aa.

inout
B

Complex array of dimension (ldb,nrhs). On entry, the right hand side matrix B. On exit, the solution matrix X.

in
ldb

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

out
work

Complex array of dimension max(1,lwork).

in
lwork

The dimension of the array work. If min(n,nrhs)=0, lwork>=1, else lwork>=3*n-2. If lwork=-1, then a workspace query is assumed; the routine only calculates the minimal size of the work array, returns this value as the first entry of the work array, and no error message related to lwork is issued.

out
info

  • info=0: successful exit

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