LAPACK  3.10.0 LAPACK: Linear Algebra PACKage
claipd.f
Go to the documentation of this file.
1 *> \brief \b CLAIPD
2 *
3 * =========== DOCUMENTATION ===========
4 *
5 * Online html documentation available at
6 * http://www.netlib.org/lapack/explore-html/
7 *
8 * Definition:
9 * ===========
10 *
11 * SUBROUTINE CLAIPD( N, A, INDA, VINDA )
12 *
13 * .. Scalar Arguments ..
14 * INTEGER INDA, N, VINDA
15 * ..
16 * .. Array Arguments ..
17 * COMPLEX A( * )
18 * ..
19 *
20 *
21 *> \par Purpose:
22 * =============
23 *>
24 *> \verbatim
25 *>
26 *> CLAIPD sets the imaginary part of the diagonal elements of a complex
27 *> matrix A to a large value. This is used to test LAPACK routines for
28 *> complex Hermitian matrices, which are not supposed to access or use
29 *> the imaginary parts of the diagonals.
30 *> \endverbatim
31 *
32 * Arguments:
33 * ==========
34 *
35 *> \param[in] N
36 *> \verbatim
37 *> N is INTEGER
38 *> The number of diagonal elements of A.
39 *> \endverbatim
40 *>
41 *> \param[in,out] A
42 *> \verbatim
43 *> A is COMPLEX array, dimension
44 *> (1+(N-1)*INDA+(N-2)*VINDA)
45 *> On entry, the complex (Hermitian) matrix A.
46 *> On exit, the imaginary parts of the diagonal elements are set
47 *> to BIGNUM = EPS / SAFMIN, where EPS is the machine epsilon and
48 *> SAFMIN is the safe minimum.
49 *> \endverbatim
50 *>
51 *> \param[in] INDA
52 *> \verbatim
53 *> INDA is INTEGER
54 *> The increment between A(1) and the next diagonal element of A.
55 *> Typical values are
56 *> = LDA+1: square matrices with leading dimension LDA
57 *> = 2: packed upper triangular matrix, starting at A(1,1)
58 *> = N: packed lower triangular matrix, starting at A(1,1)
59 *> \endverbatim
60 *>
61 *> \param[in] VINDA
62 *> \verbatim
63 *> VINDA is INTEGER
64 *> The change in the diagonal increment between columns of A.
65 *> Typical values are
66 *> = 0: no change, the row and column increments in A are fixed
67 *> = 1: packed upper triangular matrix
68 *> = -1: packed lower triangular matrix
69 *> \endverbatim
70 *
71 * Authors:
72 * ========
73 *
74 *> \author Univ. of Tennessee
75 *> \author Univ. of California Berkeley
76 *> \author Univ. of Colorado Denver
77 *> \author NAG Ltd.
78 *
79 *> \ingroup complex_lin
80 *
81 * =====================================================================
82  SUBROUTINE claipd( N, A, INDA, VINDA )
83 *
84 * -- LAPACK test routine --
85 * -- LAPACK is a software package provided by Univ. of Tennessee, --
86 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
87 *
88 * .. Scalar Arguments ..
89  INTEGER INDA, N, VINDA
90 * ..
91 * .. Array Arguments ..
92  COMPLEX A( * )
93 * ..
94 *
95 * =====================================================================
96 *
97 * .. Local Scalars ..
98  INTEGER I, IA, IXA
99  REAL BIGNUM
100 * ..
101 * .. External Functions ..
102  REAL SLAMCH
103  EXTERNAL slamch
104 * ..
105 * .. Intrinsic Functions ..
106  INTRINSIC cmplx, real
107 * ..
108 * .. Executable Statements ..
109 *
110  bignum = slamch( 'Epsilon' ) / slamch( 'Safe minimum' )
111  ia = 1
112  ixa = inda
113  DO 10 i = 1, n
114  a( ia ) = cmplx( real( a( ia ) ), bignum )
115  ia = ia + ixa
116  ixa = ixa + vinda
117  10 CONTINUE
118  RETURN
119  END
subroutine claipd(N, A, INDA, VINDA)
CLAIPD
Definition: claipd.f:83