1 |
|
|
*DECK XGETUA |
2 |
|
|
SUBROUTINE XGETUA (IUNITA, N) |
3 |
|
|
IMPLICIT NONE |
4 |
|
|
C***BEGIN PROLOGUE XGETUA |
5 |
|
|
C***PURPOSE Return unit number(s) to which error messages are being |
6 |
|
|
C sent. |
7 |
|
|
C***LIBRARY SLATEC (XERROR) |
8 |
|
|
C***CATEGORY R3C |
9 |
|
|
C***TYPE ALL (XGETUA-A) |
10 |
|
|
C***KEYWORDS ERROR, XERROR |
11 |
|
|
C***AUTHOR Jones, R. E., (SNLA) |
12 |
|
|
C***DESCRIPTION |
13 |
|
|
C |
14 |
|
|
C Abstract |
15 |
|
|
C XGETUA may be called to determine the unit number or numbers |
16 |
|
|
C to which error messages are being sent. |
17 |
|
|
C These unit numbers may have been set by a call to XSETUN, |
18 |
|
|
C or a call to XSETUA, or may be a default value. |
19 |
|
|
C |
20 |
|
|
C Description of Parameters |
21 |
|
|
C --Output-- |
22 |
|
|
C IUNIT - an array of one to five unit numbers, depending |
23 |
|
|
C on the value of N. A value of zero refers to the |
24 |
|
|
C default unit, as defined by the I1MACH machine |
25 |
|
|
C constant routine. Only IUNIT(1),...,IUNIT(N) are |
26 |
|
|
C defined by XGETUA. The values of IUNIT(N+1),..., |
27 |
|
|
C IUNIT(5) are not defined (for N .LT. 5) or altered |
28 |
|
|
C in any way by XGETUA. |
29 |
|
|
C N - the number of units to which copies of the |
30 |
|
|
C error messages are being sent. N will be in the |
31 |
|
|
C range from 1 to 5. |
32 |
|
|
C |
33 |
|
|
C***REFERENCES R. E. Jones and D. K. Kahaner, XERROR, the SLATEC |
34 |
|
|
C Error-handling Package, SAND82-0800, Sandia |
35 |
|
|
C Laboratories, 1982. |
36 |
|
|
C***ROUTINES CALLED J4SAVE |
37 |
|
|
C***REVISION HISTORY (YYMMDD) |
38 |
|
|
C 790801 DATE WRITTEN |
39 |
|
|
C 861211 REVISION DATE from Version 3.2 |
40 |
|
|
C 891214 Prologue converted to Version 4.0 format. (BAB) |
41 |
|
|
C 920501 Reformatted the REFERENCES section. (WRB) |
42 |
|
|
C***END PROLOGUE XGETUA |
43 |
|
|
DIMENSION IUNITA(5) |
44 |
|
|
INTEGER IUNITA, N, J4SAVE, INDEX, I |
45 |
|
|
C***FIRST EXECUTABLE STATEMENT XGETUA |
46 |
|
|
N = J4SAVE(5,0,.FALSE.) |
47 |
|
|
DO 30 I=1,N |
48 |
|
|
INDEX = I+4 |
49 |
|
|
IF (I.EQ.1) INDEX = 3 |
50 |
|
|
IUNITA(I) = J4SAVE(INDEX,0,.FALSE.) |
51 |
|
|
30 CONTINUE |
52 |
|
|
RETURN |
53 |
|
|
END |