logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

trtrs - trtrs: triangular solve

Author

Generated automatically by Doxygen for LAPACK from the source code. Version 3.12.0 Thu Aug 7 2025 17:26:25 trtrs(3)

Detailed Description

Function Documentation

subroutinectrtrs(characteruplo,charactertrans,characterdiag,integern,integernrhs,complex,dimension(lda,*)a,integerlda,complex,dimension(ldb,*)b,integerldb,integerinfo)CTRTRSPurpose: CTRTRS solves a triangular system of the form A * X = B, A**T * X = B, or A**H * X = B, where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. This subroutine verifies that A is nonsingular, but callers should note that only exact singularity is detected. It is conceivable for one or more diagonal elements of A to be subnormally tiny numbers without this subroutine signalling an error. If a possible loss of numerical precision due to near-singular matrices is a concern, the caller should verify that A is nonsingular within some tolerance before calling this subroutine. ParametersUPLO UPLO is CHARACTER*1 = 'U': A is upper triangular; = 'L': A is lower triangular. TRANS TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate transpose) DIAG DIAG is CHARACTER*1 = 'N': A is non-unit triangular; = 'U': A is unit triangular. N N is INTEGER The order of the matrix A. N >= 0. NRHS NRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0. A A is COMPLEX array, dimension (LDA,N) The triangular matrix A. If UPLO = 'U', the leading N-by-N upper triangular part of the array A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced. If UPLO = 'L', the leading N-by-N lower triangular part of the array A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced. If DIAG = 'U', the diagonal elements of A are also not referenced and are assumed to be 1. LDA LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N). B B is COMPLEX array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X. LDB LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N). INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is exactly zero, indicating that the matrix is singular and the solutions X have not been computed. Author Univ. of Tennessee Univ. of California Berkeley Univ. of Colorado Denver NAG Ltd. subroutinedtrtrs(characteruplo,charactertrans,characterdiag,integern,integernrhs,doubleprecision,dimension(lda,*)a,integerlda,doubleprecision,dimension(ldb,*)b,integerldb,integerinfo)DTRTRSPurpose: DTRTRS solves a triangular system of the form A * X = B or A**T * X = B, where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. This subroutine verifies that A is nonsingular, but callers should note that only exact singularity is detected. It is conceivable for one or more diagonal elements of A to be subnormally tiny numbers without this subroutine signalling an error. If a possible loss of numerical precision due to near-singular matrices is a concern, the caller should verify that A is nonsingular within some tolerance before calling this subroutine. ParametersUPLO UPLO is CHARACTER*1 = 'U': A is upper triangular; = 'L': A is lower triangular. TRANS TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate transpose = Transpose) DIAG DIAG is CHARACTER*1 = 'N': A is non-unit triangular; = 'U': A is unit triangular. N N is INTEGER The order of the matrix A. N >= 0. NRHS NRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0. A A is DOUBLE PRECISION array, dimension (LDA,N) The triangular matrix A. If UPLO = 'U', the leading N-by-N upper triangular part of the array A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced. If UPLO = 'L', the leading N-by-N lower triangular part of the array A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced. If DIAG = 'U', the diagonal elements of A are also not referenced and are assumed to be 1. LDA LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N). B B is DOUBLE PRECISION array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X. LDB LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N). INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is exactly zero, indicating that the matrix is singular and the solutions X have not been computed. Author Univ. of Tennessee Univ. of California Berkeley Univ. of Colorado Denver NAG Ltd. subroutinestrtrs(characteruplo,charactertrans,characterdiag,integern,integernrhs,real,dimension(lda,*)a,integerlda,real,dimension(ldb,*)b,integerldb,integerinfo)STRTRSPurpose: STRTRS solves a triangular system of the form A * X = B or A**T * X = B, where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. This subroutine verifies that A is nonsingular, but callers should note that only exact singularity is detected. It is conceivable for one or more diagonal elements of A to be subnormally tiny numbers without this subroutine signalling an error. If a possible loss of numerical precision due to near-singular matrices is a concern, the caller should verify that A is nonsingular within some tolerance before calling this subroutine. ParametersUPLO UPLO is CHARACTER*1 = 'U': A is upper triangular; = 'L': A is lower triangular. TRANS TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate transpose = Transpose) DIAG DIAG is CHARACTER*1 = 'N': A is non-unit triangular; = 'U': A is unit triangular. N N is INTEGER The order of the matrix A. N >= 0. NRHS NRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0. A A is REAL array, dimension (LDA,N) The triangular matrix A. If UPLO = 'U', the leading N-by-N upper triangular part of the array A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced. If UPLO = 'L', the leading N-by-N lower triangular part of the array A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced. If DIAG = 'U', the diagonal elements of A are also not referenced and are assumed to be 1. LDA LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N). B B is REAL array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X. LDB LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N). INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is exactly zero, indicating that the matrix is singular and the solutions X have not been computed. Author Univ. of Tennessee Univ. of California Berkeley Univ. of Colorado Denver NAG Ltd. subroutineztrtrs(characteruplo,charactertrans,characterdiag,integern,integernrhs,complex*16,dimension(lda,*)a,integerlda,complex*16,dimension(ldb,*)b,integerldb,integerinfo)ZTRTRSPurpose: ZTRTRS solves a triangular system of the form A * X = B, A**T * X = B, or A**H * X = B, where A is a triangular matrix of order N, and B is an N-by-NRHS matrix. This subroutine verifies that A is nonsingular, but callers should note that only exact singularity is detected. It is conceivable for one or more diagonal elements of A to be subnormally tiny numbers without this subroutine signalling an error. If a possible loss of numerical precision due to near-singular matrices is a concern, the caller should verify that A is nonsingular within some tolerance before calling this subroutine. ParametersUPLO UPLO is CHARACTER*1 = 'U': A is upper triangular; = 'L': A is lower triangular. TRANS TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate transpose) DIAG DIAG is CHARACTER*1 = 'N': A is non-unit triangular; = 'U': A is unit triangular. N N is INTEGER The order of the matrix A. N >= 0. NRHS NRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0. A A is COMPLEX*16 array, dimension (LDA,N) The triangular matrix A. If UPLO = 'U', the leading N-by-N upper triangular part of the array A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced. If UPLO = 'L', the leading N-by-N lower triangular part of the array A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced. If DIAG = 'U', the diagonal elements of A are also not referenced and are assumed to be 1. LDA LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N). B B is COMPLEX*16 array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, if INFO = 0, the solution matrix X. LDB LDB is INTEGER The leading dimension of the array B. LDB >= max(1,N). INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value > 0: if INFO = i, the i-th diagonal element of A is exactly zero, indicating that the matrix is singular and the solutions X have not been computed. Author Univ. of Tennessee Univ. of California Berkeley Univ. of Colorado Denver NAG Ltd.

Name

trtrs - trtrs: triangular solve

Synopsis

Functions subroutine ctrtrs (uplo, trans, diag, n, nrhs, a, lda, b, ldb, info) CTRTRS subroutine dtrtrs (uplo, trans, diag, n, nrhs, a, lda, b, ldb, info) DTRTRS subroutine strtrs (uplo, trans, diag, n, nrhs, a, lda, b, ldb, info) STRTRS subroutine ztrtrs (uplo, trans, diag, n, nrhs, a, lda, b, ldb, info) ZTRTRS

See Also