1CSPTRI(1) LAPACK routine (version 3.2) CSPTRI(1)
2
3
4
6 CSPTRI - computes the inverse of a complex symmetric indefinite matrix
7 A in packed storage using the factorization A = U*D*U**T or A =
8 L*D*L**T computed by CSPTRF
9
11 SUBROUTINE CSPTRI( UPLO, N, AP, IPIV, WORK, INFO )
12
13 CHARACTER UPLO
14
15 INTEGER INFO, N
16
17 INTEGER IPIV( * )
18
19 COMPLEX AP( * ), WORK( * )
20
22 CSPTRI computes the inverse of a complex symmetric indefinite matrix A
23 in packed storage using the factorization A = U*D*U**T or A = L*D*L**T
24 computed by CSPTRF.
25
27 UPLO (input) CHARACTER*1
28 Specifies whether the details of the factorization are stored
29 as an upper or lower triangular matrix. = 'U': Upper triangu‐
30 lar, form is A = U*D*U**T;
31 = 'L': Lower triangular, form is A = L*D*L**T.
32
33 N (input) INTEGER
34 The order of the matrix A. N >= 0.
35
36 AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
37 On entry, the block diagonal matrix D and the multipliers used
38 to obtain the factor U or L as computed by CSPTRF, stored as a
39 packed triangular matrix. On exit, if INFO = 0, the (symmet‐
40 ric) inverse of the original matrix, stored as a packed trian‐
41 gular matrix. The j-th column of inv(A) is stored in the array
42 AP as follows: if UPLO = 'U', AP(i + (j-1)*j/2) = inv(A)(i,j)
43 for 1<=i<=j; if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) =
44 inv(A)(i,j) for j<=i<=n.
45
46 IPIV (input) INTEGER array, dimension (N)
47 Details of the interchanges and the block structure of D as
48 determined by CSPTRF.
49
50 WORK (workspace) COMPLEX array, dimension (N)
51
52 INFO (output) INTEGER
53 = 0: successful exit
54 < 0: if INFO = -i, the i-th argument had an illegal value
55 > 0: if INFO = i, D(i,i) = 0; the matrix is singular and its
56 inverse could not be computed.
57
58
59
60 LAPACK routine (version 3.2) November 2008 CSPTRI(1)