![]() |
LAPACK
3.4.1
LAPACK: Linear Algebra PACKage
|
00001 *> \brief \b DGENND 00002 * 00003 * =========== DOCUMENTATION =========== 00004 * 00005 * Online html documentation available at 00006 * http://www.netlib.org/lapack/explore-html/ 00007 * 00008 * Definition: 00009 * =========== 00010 * 00011 * LOGICAL FUNCTION DGENND (M, N, A, LDA) 00012 * 00013 * .. Scalar Arguments .. 00014 * INTEGER M, N, LDA 00015 * .. 00016 * .. Array Arguments .. 00017 * DOUBLE PRECISION A( LDA, * ) 00018 * .. 00019 * 00020 * 00021 *> \par Purpose: 00022 * ============= 00023 *> 00024 *> \verbatim 00025 *> 00026 *> DGENND tests that its argument has a non-negative diagonal. 00027 *> \endverbatim 00028 * 00029 * Arguments: 00030 * ========== 00031 * 00032 *> \param[in] M 00033 *> \verbatim 00034 *> M is INTEGER 00035 *> The number of rows in A. 00036 *> \endverbatim 00037 *> 00038 *> \param[in] N 00039 *> \verbatim 00040 *> N is INTEGER 00041 *> The number of columns in A. 00042 *> \endverbatim 00043 *> 00044 *> \param[in] A 00045 *> \verbatim 00046 *> A is DOUBLE PRECISION array, dimension (LDA, N) 00047 *> The matrix. 00048 *> \endverbatim 00049 *> 00050 *> \param[in] LDA 00051 *> \verbatim 00052 *> LDA is INTEGER 00053 *> Leading dimension of A. 00054 *> \endverbatim 00055 * 00056 * Authors: 00057 * ======== 00058 * 00059 *> \author Univ. of Tennessee 00060 *> \author Univ. of California Berkeley 00061 *> \author Univ. of Colorado Denver 00062 *> \author NAG Ltd. 00063 * 00064 *> \date November 2011 00065 * 00066 *> \ingroup double_lin 00067 * 00068 * ===================================================================== 00069 LOGICAL FUNCTION DGENND (M, N, A, LDA) 00070 * 00071 * -- LAPACK test routine (version 3.4.0) -- 00072 * -- LAPACK is a software package provided by Univ. of Tennessee, -- 00073 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- 00074 * November 2011 00075 * 00076 * .. Scalar Arguments .. 00077 INTEGER M, N, LDA 00078 * .. 00079 * .. Array Arguments .. 00080 DOUBLE PRECISION A( LDA, * ) 00081 * .. 00082 * 00083 * ===================================================================== 00084 * 00085 * .. Parameters .. 00086 DOUBLE PRECISION ZERO 00087 PARAMETER ( ZERO = 0.0D0 ) 00088 * .. 00089 * .. Local Scalars .. 00090 INTEGER I, K 00091 * .. 00092 * .. Intrinsics .. 00093 INTRINSIC MIN 00094 * .. 00095 * .. Executable Statements .. 00096 K = MIN( M, N ) 00097 DO I = 1, K 00098 IF( A( I, I ).LT.ZERO ) THEN 00099 DGENND = .FALSE. 00100 RETURN 00101 END IF 00102 END DO 00103 DGENND = .TRUE. 00104 RETURN 00105 END