1 LOGICAL FUNCTION SGENND (M, N, A, LDA)
2 IMPLICIT NONE
3 *
4 * -- LAPACK test routine (version 3.1) --
5 * Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
6 * February 2008
7 *
8 * .. Scalar Arguments ..
9 INTEGER M, N, LDA
10 * ..
11 * .. Array Arguments ..
12 REAL A( LDA, * )
13 * ..
14 *
15 * Purpose
16 * =======
17 *
18 * SGENND tests that its argument has a non-negative diagonal.
19 *
20 * Arguments
21 * =========
22 *
23 * M (input) INTEGER
24 * The number of rows in A.
25 *
26 * N (input) INTEGER
27 * The number of columns in A.
28 *
29 * A (input) REAL array, dimension (LDA, N)
30 * The matrix.
31 *
32 * LDA (input) INTEGER
33 * Leading dimension of A.
34 *
35 * =====================================================================
36 *
37 * .. Parameters ..
38 REAL ZERO
39 PARAMETER ( ZERO = 0.0E0 )
40 * ..
41 * .. Local Scalars ..
42 INTEGER I, K
43 * ..
44 * .. Intrinsics ..
45 INTRINSIC MIN
46 * ..
47 * .. Executable Statements ..
48 K = MIN( M, N )
49 DO I = 1, K
50 IF( A( I, I ).LT.ZERO ) THEN
51 SGENND = .FALSE.
52 RETURN
53 END IF
54 END DO
55 SGENND = .TRUE.
56 RETURN
57 END
2 IMPLICIT NONE
3 *
4 * -- LAPACK test routine (version 3.1) --
5 * Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
6 * February 2008
7 *
8 * .. Scalar Arguments ..
9 INTEGER M, N, LDA
10 * ..
11 * .. Array Arguments ..
12 REAL A( LDA, * )
13 * ..
14 *
15 * Purpose
16 * =======
17 *
18 * SGENND tests that its argument has a non-negative diagonal.
19 *
20 * Arguments
21 * =========
22 *
23 * M (input) INTEGER
24 * The number of rows in A.
25 *
26 * N (input) INTEGER
27 * The number of columns in A.
28 *
29 * A (input) REAL array, dimension (LDA, N)
30 * The matrix.
31 *
32 * LDA (input) INTEGER
33 * Leading dimension of A.
34 *
35 * =====================================================================
36 *
37 * .. Parameters ..
38 REAL ZERO
39 PARAMETER ( ZERO = 0.0E0 )
40 * ..
41 * .. Local Scalars ..
42 INTEGER I, K
43 * ..
44 * .. Intrinsics ..
45 INTRINSIC MIN
46 * ..
47 * .. Executable Statements ..
48 K = MIN( M, N )
49 DO I = 1, K
50 IF( A( I, I ).LT.ZERO ) THEN
51 SGENND = .FALSE.
52 RETURN
53 END IF
54 END DO
55 SGENND = .TRUE.
56 RETURN
57 END