1*> \brief \b SGENND
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 SGENND (M, N, A, LDA)
12*
13*       .. Scalar Arguments ..
14*       INTEGER M, N, LDA
15*       ..
16*       .. Array Arguments ..
17*       REAL A( LDA, * )
18*       ..
19*
20*
21*> \par Purpose:
22*  =============
23*>
24*> \verbatim
25*>
26*>    SGENND tests that its argument has a 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 REAL 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 single_lin
65*
66*  =====================================================================
67      LOGICAL FUNCTION SGENND (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      REAL 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*     ..
89*     .. Intrinsics ..
90      INTRINSIC MIN
91*     ..
92*     .. Executable Statements ..
93      K = MIN( M, N )
94      DO I = 1, K
95         IF( A( I, I ).LT.ZERO ) THEN
96            SGENND = .FALSE.
97            RETURN
98         END IF
99      END DO
100      SGENND = .TRUE.
101      RETURN
102      END
103