slctsx.c
Go to the documentation of this file.
00001 /* slctsx.f -- translated by f2c (version 20061008).
00002    You must link the resulting object file with libf2c:
00003         on Microsoft Windows system, link with libf2c.lib;
00004         on Linux or Unix systems, link with .../path/to/libf2c.a -lm
00005         or, if you install libf2c.a in a standard place, with -lf2c -lm
00006         -- in that order, at the end of the command line, as in
00007                 cc *.o -lf2c -lm
00008         Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
00009 
00010                 http://www.netlib.org/f2c/libf2c.zip
00011 */
00012 
00013 #include "f2c.h"
00014 #include "blaswrap.h"
00015 
00016 /* Common Block Declarations */
00017 
00018 struct {
00019     integer m, n, mplusn, i__;
00020     logical fs;
00021 } mn_;
00022 
00023 #define mn_1 mn_
00024 
00025 logical slctsx_(real *ar, real *ai, real *beta)
00026 {
00027     /* System generated locals */
00028     logical ret_val;
00029 
00030 
00031 /*  -- LAPACK test routine (version 3.1) -- */
00032 /*     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
00033 /*     November 2006 */
00034 
00035 /*     .. Scalar Arguments .. */
00036 /*     .. */
00037 
00038 /*  Purpose */
00039 /*  ======= */
00040 
00041 /*  This function is used to determine what eigenvalues will be */
00042 /*  selected.  If this is part of the test driver SDRGSX, do not */
00043 /*  change the code UNLESS you are testing input examples and not */
00044 /*  using the built-in examples. */
00045 
00046 /*  Arguments */
00047 /*  ========= */
00048 
00049 /*  AR      (input) REAL */
00050 /*          The numerator of the real part of a complex eigenvalue */
00051 /*          (AR/BETA) + i*(AI/BETA). */
00052 
00053 /*  AI      (input) REAL */
00054 /*          The numerator of the imaginary part of a complex eigenvalue */
00055 /*          (AR/BETA) + i*(AI). */
00056 
00057 /*  BETA    (input) REAL */
00058 /*          The denominator part of a complex eigenvalue */
00059 /*          (AR/BETA) + i*(AI/BETA). */
00060 
00061 /*  ===================================================================== */
00062 
00063 /*     .. Scalars in Common .. */
00064 /*     .. */
00065 /*     .. Common blocks .. */
00066 /*     .. */
00067 /*     .. Save statement .. */
00068 /*     .. */
00069 /*     .. Executable Statements .. */
00070 
00071     if (mn_1.fs) {
00072         ++mn_1.i__;
00073         if (mn_1.i__ <= mn_1.m) {
00074             ret_val = FALSE_;
00075         } else {
00076             ret_val = TRUE_;
00077         }
00078         if (mn_1.i__ == mn_1.mplusn) {
00079             mn_1.fs = FALSE_;
00080             mn_1.i__ = 0;
00081         }
00082     } else {
00083         ++mn_1.i__;
00084         if (mn_1.i__ <= mn_1.n) {
00085             ret_val = TRUE_;
00086         } else {
00087             ret_val = FALSE_;
00088         }
00089         if (mn_1.i__ == mn_1.mplusn) {
00090             mn_1.fs = TRUE_;
00091             mn_1.i__ = 0;
00092         }
00093     }
00094 
00095 /*       IF( AR/BETA.GT.0.0 )THEN */
00096 /*          SLCTSX = .TRUE. */
00097 /*       ELSE */
00098 /*          SLCTSX = .FALSE. */
00099 /*       END IF */
00100 
00101     return ret_val;
00102 
00103 /*     End of SLCTSX */
00104 
00105 } /* slctsx_ */


swiftnav
Author(s):
autogenerated on Sat Jun 8 2019 18:56:12