1CPTSVX(1)                LAPACK routine (version 3.1)                CPTSVX(1)
2
3
4

NAME

6       CPTSVX  -  the  factorization A = L*D*L**H to compute the solution to a
7       complex system of linear equations A*X = B, where A is an  N-by-N  Her‐
8       mitian  positive  definite tridiagonal matrix and X and B are N-by-NRHS
9       matrices
10

SYNOPSIS

12       SUBROUTINE CPTSVX( FACT, N, NRHS, D, E, DF, EF, B, LDB, X, LDX,  RCOND,
13                          FERR, BERR, WORK, RWORK, INFO )
14
15           CHARACTER      FACT
16
17           INTEGER        INFO, LDB, LDX, N, NRHS
18
19           REAL           RCOND
20
21           REAL           BERR( * ), D( * ), DF( * ), FERR( * ), RWORK( * )
22
23           COMPLEX        B( LDB, * ), E( * ), EF( * ), WORK( * ), X( LDX, * )
24

PURPOSE

26       CPTSVX uses the factorization A = L*D*L**H to compute the solution to a
27       complex system of linear equations A*X = B, where A is an  N-by-N  Her‐
28       mitian  positive  definite tridiagonal matrix and X and B are N-by-NRHS
29       matrices.
30
31       Error bounds on the solution and a condition  estimate  are  also  pro‐
32       vided.
33
34

DESCRIPTION

36       The following steps are performed:
37
38       1. If FACT = 'N', the matrix A is factored as A = L*D*L**H, where L
39          is a unit lower bidiagonal matrix and D is diagonal.  The
40          factorization can also be regarded as having the form
41          A = U**H*D*U.
42
43       2. If the leading i-by-i principal minor is not positive definite,
44          then the routine returns with INFO = i. Otherwise, the factored
45          form of A is used to estimate the condition number of the matrix
46          A.  If the reciprocal of the condition number is less than machine
47          precision, INFO = N+1 is returned as a warning, but the routine
48          still goes on to solve for X and compute error bounds as
49          described below.
50
51       3. The system of equations is solved for X using the factored form
52          of A.
53
54       4. Iterative refinement is applied to improve the computed solution
55          matrix and calculate error bounds and backward error estimates
56          for it.
57
58

ARGUMENTS

60       FACT    (input) CHARACTER*1
61               Specifies  whether  or not the factored form of the matrix A is
62               supplied on entry.  = 'F':  On entry, DF  and  EF  contain  the
63               factored  form of A.  D, E, DF, and EF will not be modified.  =
64               'N':  The matrix A will be copied to DF and EF and factored.
65
66       N       (input) INTEGER
67               The order of the matrix A.  N >= 0.
68
69       NRHS    (input) INTEGER
70               The number of right hand sides, i.e., the number of columns  of
71               the matrices B and X.  NRHS >= 0.
72
73       D       (input) REAL array, dimension (N)
74               The n diagonal elements of the tridiagonal matrix A.
75
76       E       (input) COMPLEX array, dimension (N-1)
77               The (n-1) subdiagonal elements of the tridiagonal matrix A.
78
79       DF      (input or output) REAL array, dimension (N)
80               If  FACT  = 'F', then DF is an input argument and on entry con‐
81               tains the n diagonal elements of the diagonal matrix D from the
82               L*D*L**H factorization of A.  If FACT = 'N', then DF is an out‐
83               put argument and on exit contains the n  diagonal  elements  of
84               the diagonal matrix D from the L*D*L**H factorization of A.
85
86       EF      (input or output) COMPLEX array, dimension (N-1)
87               If  FACT  = 'F', then EF is an input argument and on entry con‐
88               tains the (n-1) subdiagonal elements  of  the  unit  bidiagonal
89               factor  L from the L*D*L**H factorization of A.  If FACT = 'N',
90               then EF is an output argument and on exit  contains  the  (n-1)
91               subdiagonal  elements  of the unit bidiagonal factor L from the
92               L*D*L**H factorization of A.
93
94       B       (input) COMPLEX array, dimension (LDB,NRHS)
95               The N-by-NRHS right hand side matrix B.
96
97       LDB     (input) INTEGER
98               The leading dimension of the array B.  LDB >= max(1,N).
99
100       X       (output) COMPLEX array, dimension (LDX,NRHS)
101               If INFO = 0 or INFO = N+1, the N-by-NRHS solution matrix X.
102
103       LDX     (input) INTEGER
104               The leading dimension of the array X.  LDX >= max(1,N).
105
106       RCOND   (output) REAL
107               The reciprocal condition number of the matrix A.  If  RCOND  is
108               less  than the machine precision (in particular, if RCOND = 0),
109               the matrix is singular to working precision.  This condition is
110               indicated by a return code of INFO > 0.
111
112       FERR    (output) REAL array, dimension (NRHS)
113               The forward error bound for each solution vector X(j) (the j-th
114               column of the solution matrix X).  If XTRUE is the  true  solu‐
115               tion corresponding to X(j), FERR(j) is an estimated upper bound
116               for the magnitude of the largest  element  in  (X(j)  -  XTRUE)
117               divided by the magnitude of the largest element in X(j).
118
119       BERR    (output) REAL array, dimension (NRHS)
120               The componentwise relative backward error of each solution vec‐
121               tor X(j) (i.e., the smallest relative change in any element  of
122               A or B that makes X(j) an exact solution).
123
124       WORK    (workspace) COMPLEX array, dimension (N)
125
126       RWORK   (workspace) REAL array, dimension (N)
127
128       INFO    (output) INTEGER
129               = 0:  successful exit
130               < 0:  if INFO = -i, the i-th argument had an illegal value
131               > 0:  if INFO = i, and i is
132               <=  N:  the leading minor of order i of A is not positive defi‐
133               nite, so the factorization could  not  be  completed,  and  the
134               solution  has not been computed. RCOND = 0 is returned.  = N+1:
135               U is nonsingular, but RCOND is  less  than  machine  precision,
136               meaning that the matrix is singular to working precision.  Nev‐
137               ertheless, the solution and error bounds are  computed  because
138               there  are  a  number of situations where the computed solution
139               can be more accurate than the value of RCOND would suggest.
140
141
142
143 LAPACK routine (version 3.1)    November 2006                       CPTSVX(1)
Impressum