]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.1 1996/02/15 17:49:50 mclareni | |
6 | * Kernlib | |
7 | * | |
8 | * | |
9 | #include "kerngen/pilot.h" | |
10 | #if defined(CERNLIB_QMLNX) | |
11 | #include "lnxgs/utrans.F" | |
12 | #else | |
13 | SUBROUTINE UTRANS (AI,AJ,NCH,IP,JP) | |
14 | C | |
15 | C CERN PROGLIB# M409 UTRANS .VERSION KERNFOR 4.18 880425 | |
16 | C ORIG. 15/09/78 JZ | |
17 | C | |
18 | COMMON /SLATE/ NI, NJ, MM(38) | |
19 | C | |
20 | DIMENSION AI(9), AJ(9), NCH(9), IP(9), JP(9) | |
21 | C | |
22 | #include "kerngen/wordsize.inc" | |
23 | C | |
24 | NI = 0 | |
25 | NJ = 0 | |
26 | NCHL = NCH(1) | |
27 | IF (NCHL.LE.0) RETURN | |
28 | NCHI = MIN (IP(1), NCHAPW) | |
29 | NCHJ = MIN (JP(1), NCHAPW) | |
30 | IF (NCHI-NCHJ) 31,41,21 | |
31 | C | |
32 | C---- DISPERSION TO A1 | |
33 | C | |
34 | 21 IF (NCHJ.NE.1) GO TO 41 | |
35 | C | |
36 | 24 N = MIN (NCHL, NCHI) | |
37 | NI = NI + 1 | |
38 | CALL UBLOW (AI(NI),AJ(NJ+1),N) | |
39 | NJ = NJ + N | |
40 | NCHL = NCHL - N | |
41 | IF (NCHL.NE.0) GO TO 24 | |
42 | RETURN | |
43 | C | |
44 | C---- CONCENTRATION FROM A1 | |
45 | C | |
46 | 31 IF (NCHI.NE.1) GO TO 41 | |
47 | C | |
48 | 34 N = MIN (NCHL, NCHJ) | |
49 | NJ = NJ + 1 | |
50 | CALL UBUNCH (AI(NI+1),AJ(NJ),N) | |
51 | NI = NI + N | |
52 | NCHL = NCHL - N | |
53 | IF (NCHL.NE.0) GO TO 34 | |
54 | RETURN | |
55 | C | |
56 | C---- TRANSFORMATION AI TO AJ | |
57 | C | |
58 | 41 JA = 0 | |
59 | JE = 0 | |
60 | 42 N = MIN (NCHL, NCHJ) | |
61 | IF (JA+N.LE.JE) GO TO 47 | |
62 | IF (JA.NE.JE) GO TO 43 | |
63 | JA = 1 | |
64 | JE = 1 | |
65 | GO TO 44 | |
66 | C | |
67 | 43 IF (JE+NCHI.LT.40) GO TO 44 | |
68 | NT = JE - JA | |
69 | CALL UCOPY (MM(JA),MM(1),NT) | |
70 | JA = 1 | |
71 | JE = NT + 1 | |
72 | C | |
73 | 44 NI = NI + 1 | |
74 | CALL UBLOW (AI(NI),MM(JE),NCHI) | |
75 | JE = JE + NCHI | |
76 | IF (JA+N.GT.JE) GO TO 43 | |
77 | C | |
78 | 47 NJ = NJ + 1 | |
79 | CALL UBUNCH (MM(JA),AJ(NJ),N) | |
80 | JA = JA + N | |
81 | NCHL = NCHL - N | |
82 | IF (NCHL.NE.0) GO TO 42 | |
83 | RETURN | |
84 | END | |
85 | #endif |