LAPACK  3.10.0
LAPACK: Linear Algebra PACKage
cgennd.f
Go to the documentation of this file.
1 *> \brief \b CGENND
2 *
3 * =========== DOCUMENTATION ===========
4 *
5 * Online html documentation available at
6 * http://www.netlib.org/lapack/explore-html/
7 *
8 * Definition:
9 * ===========
10 *
11 * LOGICAL FUNCTION CGENND (M, N, A, LDA)
12 *
13 * .. Scalar Arguments ..
14 * INTEGER M, N, LDA
15 * ..
16 * .. Array Arguments ..
17 * COMPLEX A( LDA, * )
18 * ..
19 *
20 *
21 *> \par Purpose:
22 * =============
23 *>
24 *> \verbatim
25 *>
26 *> CGENND tests that its argument has a real, non-negative diagonal.
27 *> \endverbatim
28 *
29 * Arguments:
30 * ==========
31 *
32 *> \param[in] M
33 *> \verbatim
34 *> M is INTEGER
35 *> The number of rows in A.
36 *> \endverbatim
37 *>
38 *> \param[in] N
39 *> \verbatim
40 *> N is INTEGER
41 *> The number of columns in A.
42 *> \endverbatim
43 *>
44 *> \param[in] A
45 *> \verbatim
46 *> A is COMPLEX array, dimension (LDA, N)
47 *> The matrix.
48 *> \endverbatim
49 *>
50 *> \param[in] LDA
51 *> \verbatim
52 *> LDA is INTEGER
53 *> Leading dimension of A.
54 *> \endverbatim
55 *
56 * Authors:
57 * ========
58 *
59 *> \author Univ. of Tennessee
60 *> \author Univ. of California Berkeley
61 *> \author Univ. of Colorado Denver
62 *> \author NAG Ltd.
63 *
64 *> \ingroup complex_lin
65 *
66 * =====================================================================
67  LOGICAL FUNCTION cgennd (M, N, A, LDA)
68 *
69 * -- LAPACK test routine --
70 * -- LAPACK is a software package provided by Univ. of Tennessee, --
71 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
72 *
73 * .. Scalar Arguments ..
74  INTEGER m, n, lda
75 * ..
76 * .. Array Arguments ..
77  COMPLEX a( lda, * )
78 * ..
79 *
80 * =====================================================================
81 *
82 * .. Parameters ..
83  REAL zero
84  parameter( zero = 0.0e0 )
85 * ..
86 * .. Local Scalars ..
87  INTEGER i, k
88  COMPLEX aii
89 * ..
90 * .. Intrinsics ..
91  INTRINSIC min, real, aimag
92 * ..
93 * .. Executable Statements ..
94  k = min( m, n )
95  DO i = 1, k
96  aii = a( i, i )
97  IF( real( aii ).LT.zero.OR.aimag( aii ).NE.zero ) THEN
98  cgennd = .false.
99  RETURN
100  END IF
101  END DO
102  cgennd = .true.
103  RETURN
104  END
logical function cgennd(M, N, A, LDA)
CGENND
Definition: cgennd.f:68