LAPACK  3.10.0
LAPACK: Linear Algebra PACKage

◆ claipd()

subroutine claipd ( integer  N,
complex, dimension( * )  A,
integer  INDA,
integer  VINDA 
)

CLAIPD

Purpose:
 CLAIPD sets the imaginary part of the diagonal elements of a complex
 matrix A to a large value.  This is used to test LAPACK routines for
 complex Hermitian matrices, which are not supposed to access or use
 the imaginary parts of the diagonals.
Parameters
[in]N
          N is INTEGER
         The number of diagonal elements of A.
[in,out]A
          A is COMPLEX array, dimension
                        (1+(N-1)*INDA+(N-2)*VINDA)
         On entry, the complex (Hermitian) matrix A.
         On exit, the imaginary parts of the diagonal elements are set
         to BIGNUM = EPS / SAFMIN, where EPS is the machine epsilon and
         SAFMIN is the safe minimum.
[in]INDA
          INDA is INTEGER
         The increment between A(1) and the next diagonal element of A.
         Typical values are
         = LDA+1:  square matrices with leading dimension LDA
         = 2:  packed upper triangular matrix, starting at A(1,1)
         = N:  packed lower triangular matrix, starting at A(1,1)
[in]VINDA
          VINDA is INTEGER
         The change in the diagonal increment between columns of A.
         Typical values are
         = 0:  no change, the row and column increments in A are fixed
         = 1:  packed upper triangular matrix
         = -1:  packed lower triangular matrix
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.

Definition at line 82 of file claipd.f.

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
real function slamch(CMACH)
SLAMCH
Definition: slamch.f:68
Here is the caller graph for this function: