1CTRSV(1)                         BLAS routine                         CTRSV(1)
2
3
4

NAME

6       CTRSV  - solves one of the systems of equations   A*x = b, or A'*x = b,
7       or conjg( A' )*x = b,
8

SYNOPSIS

10       SUBROUTINE CTRSV(UPLO,TRANS,DIAG,N,A,LDA,X,INCX)
11
12           INTEGER                                      INCX,LDA,N
13
14           CHARACTER                                    DIAG,TRANS,UPLO
15
16           COMPLEX                                      A(LDA,*),X(*)
17

PURPOSE

19       CTRSV  solves one of the systems of equations
20
21       where b and x are n element vectors and A is an n by n  unit,  or  non-
22       unit, upper or lower triangular matrix.
23
24       No  test  for  singularity or near-singularity is included in this rou‐
25       tine. Such tests must be performed before calling this routine.
26
27

ARGUMENTS

29       UPLO   - CHARACTER*1.
30              On entry, UPLO specifies whether the matrix is an upper or lower
31              triangular matrix as follows:
32
33              UPLO = 'U' or 'u'   A is an upper triangular matrix.
34
35              UPLO = 'L' or 'l'   A is a lower triangular matrix.
36
37              Unchanged on exit.
38
39       TRANS  - CHARACTER*1.
40              On entry, TRANS specifies the equations to be solved as follows:
41
42              TRANS = 'N' or 'n'   A*x = b.
43
44              TRANS = 'T' or 't'   A'*x = b.
45
46              TRANS = 'C' or 'c'   conjg( A' )*x = b.
47
48              Unchanged on exit.
49
50       DIAG   - CHARACTER*1.
51              On  entry, DIAG specifies whether or not A is unit triangular as
52              follows:
53
54              DIAG = 'U' or 'u'   A is assumed to be unit triangular.
55
56              DIAG = 'N' or 'n'   A is not assumed to be unit triangular.
57
58              Unchanged on exit.
59
60       N      - INTEGER.
61              On entry, N specifies the order of the matrix A.  N must  be  at
62              least zero.  Unchanged on exit.
63
64       A      - COMPLEX          array of DIMENSION ( LDA, n ).
65              Before  entry  with  UPLO = 'U' or 'u', the leading n by n upper
66              triangular part of the array A must contain the upper triangular
67              matrix and the strictly lower triangular part of A is not refer‐
68              enced.  Before entry with UPLO = 'L' or 'l', the leading n by  n
69              lower triangular part of the array A must contain the lower tri‐
70              angular matrix and the strictly upper triangular part  of  A  is
71              not referenced.  Note that when  DIAG = 'U' or 'u', the diagonal
72              elements of A are not referenced either, but are assumed  to  be
73              unity.  Unchanged on exit.
74
75       LDA    - INTEGER.
76              On  entry, LDA specifies the first dimension of A as declared in
77              the calling (sub) program. LDA must be at least  max(  1,  n  ).
78              Unchanged on exit.
79
80       X      - COMPLEX          array of dimension at least
81              (  1  +  ( n - 1 )*abs( INCX ) ).  Before entry, the incremented
82              array X must contain the n element right-hand side vector b.  On
83              exit, X is overwritten with the solution vector x.
84
85       INCX   - INTEGER.
86              On  entry,  INCX  specifies the increment for the elements of X.
87              INCX must not be zero.  Unchanged on exit.
88

FURTHER DETAILS

90       Level 2 Blas routine.
91
92       -- Written on 22-October-1986.
93          Jack Dongarra, Argonne National Lab.
94          Jeremy Du Croz, Nag Central Office.
95          Sven Hammarling, Nag Central Office.
96          Richard Hanson, Sandia National Labs.
97
98
99
100
101BLAS routine                     November 2008                        CTRSV(1)
Impressum