Scroll to navigation

trsv(3) LAPACK trsv(3)

NAME

trsv - trsv: triangular matrix-vector solve

SYNOPSIS

Functions


subroutine ctrsv (uplo, trans, diag, n, a, lda, x, incx)
CTRSV subroutine dtrsv (uplo, trans, diag, n, a, lda, x, incx)
DTRSV subroutine strsv (uplo, trans, diag, n, a, lda, x, incx)
STRSV subroutine ztrsv (uplo, trans, diag, n, a, lda, x, incx)
ZTRSV

Detailed Description

Function Documentation

subroutine ctrsv (character uplo, character trans, character diag, integer n, complex, dimension(lda,*) a, integer lda, complex, dimension(*) x, integer incx)

CTRSV

Purpose:


CTRSV solves one of the systems of equations
A*x = b, or A**T*x = b, or A**H*x = b,
where b and x are n element vectors and A is an n by n unit, or
non-unit, upper or lower triangular matrix.
No test for singularity or near-singularity is included in this
routine. Such tests must be performed before calling this routine.

Parameters

UPLO


UPLO is CHARACTER*1
On entry, UPLO specifies whether the matrix is an upper or
lower triangular matrix as follows:
UPLO = 'U' or 'u' A is an upper triangular matrix.
UPLO = 'L' or 'l' A is a lower triangular matrix.

TRANS


TRANS is CHARACTER*1
On entry, TRANS specifies the equations to be solved as
follows:
TRANS = 'N' or 'n' A*x = b.
TRANS = 'T' or 't' A**T*x = b.
TRANS = 'C' or 'c' A**H*x = b.

DIAG


DIAG is CHARACTER*1
On entry, DIAG specifies whether or not A is unit
triangular as follows:
DIAG = 'U' or 'u' A is assumed to be unit triangular.
DIAG = 'N' or 'n' A is not assumed to be unit
triangular.

N


N is INTEGER
On entry, N specifies the order of the matrix A.
N must be at least zero.

A


A is COMPLEX array, dimension ( LDA, N )
Before entry with UPLO = 'U' or 'u', the leading n by n
upper triangular part of the array A must contain the upper
triangular matrix and the strictly lower triangular part of
A is not referenced.
Before entry with UPLO = 'L' or 'l', the leading n by n
lower triangular part of the array A must contain the lower
triangular matrix and the strictly upper triangular part of
A is not referenced.
Note that when DIAG = 'U' or 'u', the diagonal elements of
A are not referenced either, but are assumed to be unity.

LDA


LDA is INTEGER
On entry, LDA specifies the first dimension of A as declared
in the calling (sub) program. LDA must be at least
max( 1, n ).

X


X is COMPLEX array, dimension at least
( 1 + ( n - 1 )*abs( INCX ) ).
Before entry, the incremented array X must contain the n
element right-hand side vector b. On exit, X is overwritten
with the solution vector x.

INCX


INCX is INTEGER
On entry, INCX specifies the increment for the elements of
X. INCX must not be zero.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Further Details:


Level 2 Blas routine.
-- Written on 22-October-1986.
Jack Dongarra, Argonne National Lab.
Jeremy Du Croz, Nag Central Office.
Sven Hammarling, Nag Central Office.
Richard Hanson, Sandia National Labs.

subroutine dtrsv (character uplo, character trans, character diag, integer n, double precision, dimension(lda,*) a, integer lda, double precision, dimension(*) x, integer incx)

DTRSV

Purpose:


DTRSV solves one of the systems of equations
A*x = b, or A**T*x = b,
where b and x are n element vectors and A is an n by n unit, or
non-unit, upper or lower triangular matrix.
No test for singularity or near-singularity is included in this
routine. Such tests must be performed before calling this routine.

Parameters

UPLO


UPLO is CHARACTER*1
On entry, UPLO specifies whether the matrix is an upper or
lower triangular matrix as follows:
UPLO = 'U' or 'u' A is an upper triangular matrix.
UPLO = 'L' or 'l' A is a lower triangular matrix.

TRANS


TRANS is CHARACTER*1
On entry, TRANS specifies the equations to be solved as
follows:
TRANS = 'N' or 'n' A*x = b.
TRANS = 'T' or 't' A**T*x = b.
TRANS = 'C' or 'c' A**T*x = b.

DIAG


DIAG is CHARACTER*1
On entry, DIAG specifies whether or not A is unit
triangular as follows:
DIAG = 'U' or 'u' A is assumed to be unit triangular.
DIAG = 'N' or 'n' A is not assumed to be unit
triangular.

N


N is INTEGER
On entry, N specifies the order of the matrix A.
N must be at least zero.

A


A is DOUBLE PRECISION array, dimension ( LDA, N )
Before entry with UPLO = 'U' or 'u', the leading n by n
upper triangular part of the array A must contain the upper
triangular matrix and the strictly lower triangular part of
A is not referenced.
Before entry with UPLO = 'L' or 'l', the leading n by n
lower triangular part of the array A must contain the lower
triangular matrix and the strictly upper triangular part of
A is not referenced.
Note that when DIAG = 'U' or 'u', the diagonal elements of
A are not referenced either, but are assumed to be unity.

LDA


LDA is INTEGER
On entry, LDA specifies the first dimension of A as declared
in the calling (sub) program. LDA must be at least
max( 1, n ).

X


X is DOUBLE PRECISION array, dimension at least
( 1 + ( n - 1 )*abs( INCX ) ).
Before entry, the incremented array X must contain the n
element right-hand side vector b. On exit, X is overwritten
with the solution vector x.

INCX


INCX is INTEGER
On entry, INCX specifies the increment for the elements of
X. INCX must not be zero.
Level 2 Blas routine.
-- Written on 22-October-1986.
Jack Dongarra, Argonne National Lab.
Jeremy Du Croz, Nag Central Office.
Sven Hammarling, Nag Central Office.
Richard Hanson, Sandia National Labs.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

subroutine strsv (character uplo, character trans, character diag, integer n, real, dimension(lda,*) a, integer lda, real, dimension(*) x, integer incx)

STRSV

Purpose:


STRSV solves one of the systems of equations
A*x = b, or A**T*x = b,
where b and x are n element vectors and A is an n by n unit, or
non-unit, upper or lower triangular matrix.
No test for singularity or near-singularity is included in this
routine. Such tests must be performed before calling this routine.

Parameters

UPLO


UPLO is CHARACTER*1
On entry, UPLO specifies whether the matrix is an upper or
lower triangular matrix as follows:
UPLO = 'U' or 'u' A is an upper triangular matrix.
UPLO = 'L' or 'l' A is a lower triangular matrix.

TRANS


TRANS is CHARACTER*1
On entry, TRANS specifies the equations to be solved as
follows:
TRANS = 'N' or 'n' A*x = b.
TRANS = 'T' or 't' A**T*x = b.
TRANS = 'C' or 'c' A**T*x = b.

DIAG


DIAG is CHARACTER*1
On entry, DIAG specifies whether or not A is unit
triangular as follows:
DIAG = 'U' or 'u' A is assumed to be unit triangular.
DIAG = 'N' or 'n' A is not assumed to be unit
triangular.

N


N is INTEGER
On entry, N specifies the order of the matrix A.
N must be at least zero.

A


A is REAL array, dimension ( LDA, N )
Before entry with UPLO = 'U' or 'u', the leading n by n
upper triangular part of the array A must contain the upper
triangular matrix and the strictly lower triangular part of
A is not referenced.
Before entry with UPLO = 'L' or 'l', the leading n by n
lower triangular part of the array A must contain the lower
triangular matrix and the strictly upper triangular part of
A is not referenced.
Note that when DIAG = 'U' or 'u', the diagonal elements of
A are not referenced either, but are assumed to be unity.

LDA


LDA is INTEGER
On entry, LDA specifies the first dimension of A as declared
in the calling (sub) program. LDA must be at least
max( 1, n ).

X


X is REAL array, dimension at least
( 1 + ( n - 1 )*abs( INCX ) ).
Before entry, the incremented array X must contain the n
element right-hand side vector b. On exit, X is overwritten
with the solution vector x.

INCX


INCX is INTEGER
On entry, INCX specifies the increment for the elements of
X. INCX must not be zero.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Further Details:


Level 2 Blas routine.
-- Written on 22-October-1986.
Jack Dongarra, Argonne National Lab.
Jeremy Du Croz, Nag Central Office.
Sven Hammarling, Nag Central Office.
Richard Hanson, Sandia National Labs.

subroutine ztrsv (character uplo, character trans, character diag, integer n, complex*16, dimension(lda,*) a, integer lda, complex*16, dimension(*) x, integer incx)

ZTRSV

Purpose:


ZTRSV solves one of the systems of equations
A*x = b, or A**T*x = b, or A**H*x = b,
where b and x are n element vectors and A is an n by n unit, or
non-unit, upper or lower triangular matrix.
No test for singularity or near-singularity is included in this
routine. Such tests must be performed before calling this routine.

Parameters

UPLO


UPLO is CHARACTER*1
On entry, UPLO specifies whether the matrix is an upper or
lower triangular matrix as follows:
UPLO = 'U' or 'u' A is an upper triangular matrix.
UPLO = 'L' or 'l' A is a lower triangular matrix.

TRANS


TRANS is CHARACTER*1
On entry, TRANS specifies the equations to be solved as
follows:
TRANS = 'N' or 'n' A*x = b.
TRANS = 'T' or 't' A**T*x = b.
TRANS = 'C' or 'c' A**H*x = b.

DIAG


DIAG is CHARACTER*1
On entry, DIAG specifies whether or not A is unit
triangular as follows:
DIAG = 'U' or 'u' A is assumed to be unit triangular.
DIAG = 'N' or 'n' A is not assumed to be unit
triangular.

N


N is INTEGER
On entry, N specifies the order of the matrix A.
N must be at least zero.

A


A is COMPLEX*16 array, dimension ( LDA, N )
Before entry with UPLO = 'U' or 'u', the leading n by n
upper triangular part of the array A must contain the upper
triangular matrix and the strictly lower triangular part of
A is not referenced.
Before entry with UPLO = 'L' or 'l', the leading n by n
lower triangular part of the array A must contain the lower
triangular matrix and the strictly upper triangular part of
A is not referenced.
Note that when DIAG = 'U' or 'u', the diagonal elements of
A are not referenced either, but are assumed to be unity.

LDA


LDA is INTEGER
On entry, LDA specifies the first dimension of A as declared
in the calling (sub) program. LDA must be at least
max( 1, n ).

X


X is COMPLEX*16 array, dimension at least
( 1 + ( n - 1 )*abs( INCX ) ).
Before entry, the incremented array X must contain the n
element right-hand side vector b. On exit, X is overwritten
with the solution vector x.

INCX


INCX is INTEGER
On entry, INCX specifies the increment for the elements of
X. INCX must not be zero.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Further Details:


Level 2 Blas routine.
-- Written on 22-October-1986.
Jack Dongarra, Argonne National Lab.
Jeremy Du Croz, Nag Central Office.
Sven Hammarling, Nag Central Office.
Richard Hanson, Sandia National Labs.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Wed Feb 7 2024 11:30:40 Version 3.12.0