1*DECK TEST44
2      PROGRAM TEST44
3C***BEGIN PROLOGUE  TEST44
4C***PURPOSE  Driver for testing SLATEC subprograms
5C***LIBRARY   SLATEC
6C***CATEGORY  I1
7C***TYPE      DOUBLE PRECISION (TEST43-S, TEST44-D)
8C***KEYWORDS  QUICK CHECK DRIVER
9C***AUTHOR  SLATEC Common Mathematical Library Committee
10C***DESCRIPTION
11C
12C *Usage:
13C     One input data record is required
14C         READ (LIN, '(I1)') KPRINT
15C
16C *Arguments:
17C     KPRINT = 0  Quick checks - No printing.
18C                 Driver       - Short pass or fail message printed.
19C              1  Quick checks - No message printed for passed tests,
20C                                short message printed for failed tests.
21C                 Driver       - Short pass or fail message printed.
22C              2  Quick checks - Print short message for passed tests,
23C                                fuller information for failed tests.
24C                 Driver       - Pass or fail message printed.
25C              3  Quick checks - Print complete quick check results.
26C                 Driver       - Pass or fail message printed.
27C
28C *Description:
29C     Driver for testing SLATEC subprograms
30C        DDEABM   DDEBDF   DDERKF   DBVSUP
31C
32C***REFERENCES  Kirby W. Fong, Thomas H. Jefferson, Tokihiko Suyehiro
33C                 and Lee Walton, Guide to the SLATEC Common Mathema-
34C                 tical Library, April 10, 1990.
35C***ROUTINES CALLED  I1MACH, QXDABM, QXDBDF, QXDBVS, QXDRKF, XERMAX,
36C                    XSETF, XSETUN
37C***REVISION HISTORY  (YYMMDD)
38C   890618  DATE WRITTEN
39C   890618  REVISION DATE from Version 3.2
40C   891214  Prologue converted to Version 4.0 format.  (BAB)
41C   900524  Cosmetic changes to code.  (WRB)
42C***END PROLOGUE  TEST44
43      INTEGER IPASS, KPRINT, LIN, LUN, NFAIL
44C***FIRST EXECUTABLE STATEMENT  TEST44
45      LUN = I1MACH(2)
46      LIN = I1MACH(1)
47      NFAIL = 0
48C
49C     Read KPRINT parameter
50C
51      READ (LIN, '(I1)') KPRINT
52      CALL XERMAX(1000)
53      CALL XSETUN(LUN)
54      IF (KPRINT .LE. 1) THEN
55         CALL XSETF(0)
56      ELSE
57         CALL XSETF(1)
58      ENDIF
59C
60C     Test DDEABM
61C
62      CALL QXDABM(LUN,KPRINT,IPASS)
63      IF (IPASS .EQ. 0) NFAIL = NFAIL + 1
64C
65C     Test DDEBDF
66C
67      CALL QXDBDF(LUN,KPRINT,IPASS)
68      IF (IPASS .EQ. 0) NFAIL = NFAIL + 1
69C
70C     Test DDERKF
71C
72      CALL QXDRKF(LUN,KPRINT,IPASS)
73      IF (IPASS .EQ. 0) NFAIL = NFAIL + 1
74C
75C     Test DBVSUP
76C
77      CALL QXDBVS(LUN,KPRINT,IPASS)
78      IF (IPASS .EQ. 0) NFAIL = NFAIL + 1
79C
80C     Write PASS or FAIL message
81C
82      IF (NFAIL .EQ. 0) THEN
83         WRITE (LUN, 9000)
84      ELSE
85         WRITE (LUN, 9010) NFAIL
86      ENDIF
87      STOP
88 9000 FORMAT (/' --------------TEST44 PASSED ALL TESTS----------------')
89 9010 FORMAT (/' ************* WARNING -- ', I5,
90     1        ' TEST(S) FAILED IN PROGRAM TEST44 *************')
91      END
92