LAPACK  3.6.1 LAPACK: Linear Algebra PACKage
 subroutine stest ( integer LEN, double precision, dimension(len) SCOMP, double precision, dimension(len) STRUE, double precision, dimension(len) SSIZE, double precision SFAC )

Definition at line 887 of file dblat1.f.

887 * ********************************* STEST **************************
888 *
889 * THIS SUBR COMPARES ARRAYS SCOMP() AND STRUE() OF LENGTH LEN TO
890 * SEE IF THE TERM BY TERM DIFFERENCES, MULTIPLIED BY SFAC, ARE
891 * NEGLIGIBLE.
892 *
893 * C. L. LAWSON, JPL, 1974 DEC 10
894 *
895 * .. Parameters ..
896  INTEGER nout
897  DOUBLE PRECISION zero
898  parameter (nout=6, zero=0.0d0)
899 * .. Scalar Arguments ..
900  DOUBLE PRECISION sfac
901  INTEGER len
902 * .. Array Arguments ..
903  DOUBLE PRECISION scomp(len), ssize(len), strue(len)
904 * .. Scalars in Common ..
905  INTEGER icase, incx, incy, n
906  LOGICAL pass
907 * .. Local Scalars ..
908  DOUBLE PRECISION sd
909  INTEGER i
910 * .. External Functions ..
911  DOUBLE PRECISION sdiff
912  EXTERNAL sdiff
913 * .. Intrinsic Functions ..
914  INTRINSIC abs
915 * .. Common blocks ..
916  COMMON /combla/icase, n, incx, incy, pass
917 * .. Executable Statements ..
918 *
919  DO 40 i = 1, len
920  sd = scomp(i) - strue(i)
921  IF (abs(sfac*sd) .LE. abs(ssize(i))*epsilon(zero))
922  + GO TO 40
923 *
924 * HERE SCOMP(I) IS NOT CLOSE TO STRUE(I).
925 *
926  IF ( .NOT. pass) GO TO 20
927 * PRINT FAIL MESSAGE AND HEADER.
928  pass = .false.
929  WRITE (nout,99999)
930  WRITE (nout,99998)
931  20 WRITE (nout,99997) icase, n, incx, incy, i, scomp(i),
932  + strue(i), sd, ssize(i)
933  40 CONTINUE
934  RETURN
935 *
936 99999 FORMAT (' FAIL')
937 99998 FORMAT (/' CASE N INCX INCY I ',
938  + ' COMP(I) TRUE(I) DIFFERENCE',
939  + ' SIZE(I)',/1x)
940 99997 FORMAT (1x,i4,i3,2i5,i3,2d36.8,2d12.4)
real function sdiff(SA, SB)
Definition: cblat1.f:645