LAPACK  3.10.0 LAPACK: Linear Algebra PACKage

## ◆ dsxt1()

 double precision function dsxt1 ( integer IJOB, double precision, dimension( * ) D1, integer N1, double precision, dimension( * ) D2, integer N2, double precision ABSTOL, double precision ULP, double precision UNFL )

DSXT1

Purpose:
DSXT1  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 DOUBLE PRECISION 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 DOUBLE PRECISION 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 DOUBLE PRECISION The absolute tolerance, used as a measure of the error. [in] ULP ULP is DOUBLE PRECISION Machine precision. [in] UNFL UNFL is DOUBLE PRECISION The smallest positive number whose reciprocal does not overflow.

Definition at line 104 of file dsxt1.f.

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