]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/packlib/kernlib/kerngen/tcgen/utrans.F
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / MINICERN / packlib / kernlib / kerngen / tcgen / utrans.F
CommitLineData
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)
14C
15C CERN PROGLIB# M409 UTRANS .VERSION KERNFOR 4.18 880425
16C ORIG. 15/09/78 JZ
17C
18 COMMON /SLATE/ NI, NJ, MM(38)
19C
20 DIMENSION AI(9), AJ(9), NCH(9), IP(9), JP(9)
21C
22#include "kerngen/wordsize.inc"
23C
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
31C
32C---- DISPERSION TO A1
33C
34 21 IF (NCHJ.NE.1) GO TO 41
35C
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
43C
44C---- CONCENTRATION FROM A1
45C
46 31 IF (NCHI.NE.1) GO TO 41
47C
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
55C
56C---- TRANSFORMATION AI TO AJ
57C
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
66C
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
72C
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
77C
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