LAPACK  3.4.2 LAPACK: Linear Algebra PACKage
slctes.f
Go to the documentation of this file.
1 *> \brief \b SLCTES
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 SLCTES( ZR, ZI, D )
12 *
13 * .. Scalar Arguments ..
14 * REAL D, ZI, ZR
15 * ..
16 *
17 *
18 *> \par Purpose:
19 * =============
20 *>
21 *> \verbatim
22 *>
23 *> SLCTES returns .TRUE. if the eigenvalue (ZR/D) + sqrt(-1)*(ZI/D)
24 *> is to be selected (specifically, in this subroutine, if the real
25 *> part of the eigenvalue is negative), and otherwise it returns
26 *> .FALSE..
27 *>
28 *> It is used by the test routine SDRGES to test whether the driver
29 *> routine SGGES succesfully sorts eigenvalues.
30 *> \endverbatim
31 *
32 * Arguments:
33 * ==========
34 *
35 *> \param[in] ZR
36 *> \verbatim
37 *> ZR is REAL
38 *> The numerator of the real part of a complex eigenvalue
39 *> (ZR/D) + i*(ZI/D).
40 *> \endverbatim
41 *>
42 *> \param[in] ZI
43 *> \verbatim
44 *> ZI is REAL
45 *> The numerator of the imaginary part of a complex eigenvalue
46 *> (ZR/D) + i*(ZI).
47 *> \endverbatim
48 *>
49 *> \param[in] D
50 *> \verbatim
51 *> D is REAL
52 *> The denominator part of a complex eigenvalue
53 *> (ZR/D) + i*(ZI/D).
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 single_eig
67 *
68 * =====================================================================
69  LOGICAL FUNCTION slctes( ZR, ZI, D )
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  REAL d, zi, zr
78 * ..
79 *
80 * =====================================================================
81 *
82 * .. Parameters ..
83  REAL zero, one
84  parameter( zero = 0.0e+0, one = 1.0e+0 )
85 * ..
86 * .. Intrinsic Functions ..
87  INTRINSIC sign
88 * ..
89 * .. Executable Statements ..
90 *
91  IF( d.EQ.zero ) THEN
92  slctes = ( zr.LT.zero )
93  ELSE
94  slctes = ( sign( one, zr ).NE.sign( one, d ) )
95  END IF
96 *
97  return
98 *
99 * End of SLCTES
100 *
101  END