1CPPSV(1) LAPACK driver routine (version 3.1) CPPSV(1)
2
3
4
6 CPPSV - the solution to a complex system of linear equations A * X =
7 B,
8
10 SUBROUTINE CPPSV( UPLO, N, NRHS, AP, B, LDB, INFO )
11
12 CHARACTER UPLO
13
14 INTEGER INFO, LDB, N, NRHS
15
16 COMPLEX AP( * ), B( LDB, * )
17
19 CPPSV computes the solution to a complex system of linear equations
20 A * X = B, where A is an N-by-N Hermitian positive definite matrix
21 stored in packed format and X and B are N-by-NRHS matrices.
22
23 The Cholesky decomposition is used to factor A as
24 A = U**H* U, if UPLO = 'U', or
25 A = L * L**H, if UPLO = 'L',
26 where U is an upper triangular matrix and L is a lower triangular
27 matrix. The factored form of A is then used to solve the system of
28 equations A * X = B.
29
30
32 UPLO (input) CHARACTER*1
33 = 'U': Upper triangle of A is stored;
34 = 'L': Lower triangle of A is stored.
35
36 N (input) INTEGER
37 The number of linear equations, i.e., the order of the matrix
38 A. N >= 0.
39
40 NRHS (input) INTEGER
41 The number of right hand sides, i.e., the number of columns of
42 the matrix B. NRHS >= 0.
43
44 AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
45 On entry, the upper or lower triangle of the Hermitian matrix
46 A, packed columnwise in a linear array. The j-th column of A
47 is stored in the array AP as follows: if UPLO = 'U', AP(i +
48 (j-1)*j/2) = A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i +
49 (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n. See below for further
50 details.
51
52 On exit, if INFO = 0, the factor U or L from the Cholesky fac‐
53 torization A = U**H*U or A = L*L**H, in the same storage format
54 as A.
55
56 B (input/output) COMPLEX array, dimension (LDB,NRHS)
57 On entry, the N-by-NRHS right hand side matrix B. On exit, if
58 INFO = 0, the N-by-NRHS solution matrix X.
59
60 LDB (input) INTEGER
61 The leading dimension of the array B. LDB >= max(1,N).
62
63 INFO (output) INTEGER
64 = 0: successful exit
65 < 0: if INFO = -i, the i-th argument had an illegal value
66 > 0: if INFO = i, the leading minor of order i of A is not
67 positive definite, so the factorization could not be completed,
68 and the solution has not been computed.
69
71 The packed storage scheme is illustrated by the following example when
72 N = 4, UPLO = 'U':
73
74 Two-dimensional storage of the Hermitian matrix A:
75
76 a11 a12 a13 a14
77 a22 a23 a24
78 a33 a34 (aij = conjg(aji))
79 a44
80
81 Packed storage of the upper triangle of A:
82
83 AP = [ a11, a12, a22, a13, a23, a33, a14, a24, a34, a44 ]
84
85
86
87
88 LAPACK driver routine (version 3.N1o)vember 2006 CPPSV(1)