LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ ssxt1()

real function ssxt1 ( integer  IJOB,
real, dimension( * )  D1,
integer  N1,
real, dimension( * )  D2,
integer  N2,
real  ABSTOL,
real  ULP,
real  UNFL 
)

SSXT1

Purpose:
 SSXT1  computes the difference between a set of eigenvalues.
 The result is returned as the function value.

 IJOB = 1:   Computes   max { min | D1(i)-D2(j) | }
                         i     j

 IJOB = 2:   Computes   max { min | D1(i)-D2(j) | /
                         i     j
                              ( ABSTOL + |D1(i)|*ULP ) }
Parameters
[in]IJOB
          IJOB is INTEGER
          Specifies the type of tests to be performed.  (See above.)
[in]D1
          D1 is REAL array, dimension (N1)
          The first array.  D1 should be in increasing order, i.e.,
          D1(j) <= D1(j+1).
[in]N1
          N1 is INTEGER
          The length of D1.
[in]D2
          D2 is REAL array, dimension (N2)
          The second array.  D2 should be in increasing order, i.e.,
          D2(j) <= D2(j+1).
[in]N2
          N2 is INTEGER
          The length of D2.
[in]ABSTOL
          ABSTOL is REAL
          The absolute tolerance, used as a measure of the error.
[in]ULP
          ULP is REAL
          Machine precision.
[in]UNFL
          UNFL is REAL
          The smallest positive number whose reciprocal does not
          overflow.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date
December 2016

Definition at line 108 of file ssxt1.f.

108 *
109 * -- LAPACK test routine (version 3.7.0) --
110 * -- LAPACK is a software package provided by Univ. of Tennessee, --
111 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
112 * December 2016
113 *
114 * .. Scalar Arguments ..
115  INTEGER ijob, n1, n2
116  REAL abstol, ulp, unfl
117 * ..
118 * .. Array Arguments ..
119  REAL d1( * ), d2( * )
120 * ..
121 *
122 * =====================================================================
123 *
124 * .. Parameters ..
125  REAL zero
126  parameter( zero = 0.0e0 )
127 * ..
128 * .. Local Scalars ..
129  INTEGER i, j
130  REAL temp1, temp2
131 * ..
132 * .. Intrinsic Functions ..
133  INTRINSIC abs, max, min
134 * ..
135 * .. Executable Statements ..
136 *
137  temp1 = zero
138 *
139  j = 1
140  DO 20 i = 1, n1
141  10 CONTINUE
142  IF( d2( j ).LT.d1( i ) .AND. j.LT.n2 ) THEN
143  j = j + 1
144  GO TO 10
145  END IF
146  IF( j.EQ.1 ) THEN
147  temp2 = abs( d2( j )-d1( i ) )
148  IF( ijob.EQ.2 )
149  $ temp2 = temp2 / max( unfl, abstol+ulp*abs( d1( i ) ) )
150  ELSE
151  temp2 = min( abs( d2( j )-d1( i ) ),
152  $ abs( d1( i )-d2( j-1 ) ) )
153  IF( ijob.EQ.2 )
154  $ temp2 = temp2 / max( unfl, abstol+ulp*abs( d1( i ) ) )
155  END IF
156  temp1 = max( temp1, temp2 )
157  20 CONTINUE
158 *
159  ssxt1 = temp1
160  RETURN
161 *
162 * End of SSXT1
163 *
real function ssxt1(IJOB, D1, N1, D2, N2, ABSTOL, ULP, UNFL)
SSXT1
Definition: ssxt1.f:108