STYLE: Remove trailing whitespace in Fortran files
[platform/upstream/lapack.git] / TESTING / LIN / zgennd.f
1 *> \brief \b ZGENND
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 ZGENND (M, N, A, LDA)
12 *
13 *       .. Scalar Arguments ..
14 *       INTEGER M, N, LDA
15 *       ..
16 *       .. Array Arguments ..
17 *       COMPLEX*16 A( LDA, * )
18 *       ..
19 *
20 *
21 *> \par Purpose:
22 *  =============
23 *>
24 *> \verbatim
25 *>
26 *>    ZGENND 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*16 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 *> \date November 2011
65 *
66 *> \ingroup complex16_lin
67 *
68 *  =====================================================================
69       LOGICAL FUNCTION ZGENND (M, N, A, LDA)
70 *
71 *  -- LAPACK test routine (version 3.4.0) --
72 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
73 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
74 *     November 2011
75 *
76 *     .. Scalar Arguments ..
77       INTEGER M, N, LDA
78 *     ..
79 *     .. Array Arguments ..
80       COMPLEX*16 A( LDA, * )
81 *     ..
82 *
83 *  =====================================================================
84 *
85 *     .. Parameters ..
86       REAL               ZERO
87       PARAMETER          ( ZERO = 0.0E0 )
88 *     ..
89 *     .. Local Scalars ..
90       INTEGER I, K
91       COMPLEX*16 AII
92 *     ..
93 *     .. Intrinsics ..
94       INTRINSIC MIN, DBLE, DIMAG
95 *     ..
96 *     .. Executable Statements ..
97       K = MIN( M, N )
98       DO I = 1, K
99          AII = A( I, I )
100          IF( DBLE( AII ).LT.ZERO.OR.DIMAG( AII ).NE.ZERO ) THEN
101             ZGENND = .FALSE.
102             RETURN
103          END IF
104       END DO
105       ZGENND = .TRUE.
106       RETURN
107       END