53863da1ef13ffae9c39ea1ed7ce6dd8ee23d151
[u/mrichter/AliRoot.git] / EVGEN / PartEloss / read.f
1       SUBROUTINE READ   
2       REAL*8           xx(400), da(30), ca(30,260), rrr(30)
3       COMMON /data/    xx, da, ca, rrr
4 *
5       CHARACTER*100 CHROOT  
6       CHARACTER*100 FILNAM
7       LOGICAL EXISTS
8       CHROOT=' '
9       CALL GETENVF('ALICE_ROOT',CHROOT)
10       LNROOT = LNBLNK(CHROOT)
11
12       IF(LNROOT.LE.0) THEN
13          FILNAM='DATAc.dat'
14       ELSE
15          FILNAM=CHROOT(1:LNROOT)//'/EVGEN/PartEloss/DATAc.dat'
16       ENDIF
17
18       OPEN(UNIT=20,FILE=FILNAM,STATUS='OLD',ERR=90)
19
20       nn = 1
21  100  read (20,*,end=110) xx(nn), ca(1,nn), ca(2,nn), ca(3,nn),
22      +     ca(4,nn), ca(5,nn), ca(6,nn), ca(7,nn), ca(8,nn),
23      +     ca(9,nn), ca(10,nn), ca(11,nn), ca(12,nn), ca(13,nn),
24      +     ca(14,nn), ca(15,nn), ca(16,nn), ca(17,nn), ca(18,nn),
25      +     ca(19,nn), ca(20,nn), ca(21,nn), ca(22,nn), ca(23,nn),
26      +     ca(24,nn), ca(25,nn), ca(26,nn), ca(27,nn), ca(28,nn),
27      +     ca(29,nn), ca(30,nn)
28 *         print*, 0.005*(nn-1), ca(1,nn), ca(2,nn), ca(3,nn), 
29 *     +     ca(4,nn), ca(5,nn), ca(6,nn), ca(7,nn), ca(8,nn),
30 *     +     ca(9,nn), ca(10,nn), ca(11,nn), ca(12,nn), ca(13,nn),
31 *     +     ca(14,nn), ca(15,nn), ca(16,nn), ca(17,nn), ca(18,nn),
32 *     +     ca(19,nn), ca(20,nn), ca(21,nn), ca(22,nn), ca(23,nn),
33 *     +     ca(24,nn), ca(25,nn), ca(26,nn), ca(27,nn), ca(28,nn),
34 *     +     ca(29,nn), ca(30,nn)
35          nn = nn + 1
36          goto 100
37  110     continue
38       close(20)
39 *
40       IF(LNROOT.LE.0) THEN
41          FILNAM='DATAd.dat'
42       ELSE
43          FILNAM=CHROOT(1:LNROOT)//'/EVGEN/PartEloss/DATAd.dat'
44       ENDIF
45
46       OPEN(UNIT=21,FILE=FILNAM,STATUS='OLD',ERR=90)
47       nn = 1
48  101  read (21,*,end=111) rrr(nn), da(nn)
49 *         print*, rrr(nn), da(nn)
50          nn = nn + 1
51          goto 101
52  111     continue
53       close(21)
54 *
55       goto 888
56  90   PRINT*, 'input - output error' 
57  888  continue
58       RETURN
59       END
60