]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/PHOTOS/phoerr.F
Only send esd event to calo processors
[u/mrichter/AliRoot.git] / TEvtGen / PHOTOS / phoerr.F
1       SUBROUTINE PHOERR(IMES,TEXT,DATA)
2 C.----------------------------------------------------------------------
3 C.
4 C.    PHOTOS:   PHOton radiation in decays ERRror handling
5 C.
6 C.    Purpose:  Inform user  about (fatal) errors and warnings generated
7 C.              by either the user or the program.
8 C.
9 C.    Input Parameters:   IMES, TEXT, DATA
10 C.
11 C.    Output Parameters:  None
12 C.
13 C.    Author(s):  B. van Eijk                     Created at:  29/11/89
14 C.                                                Last Update: 10/01/92
15 C.
16 C.----------------------------------------------------------------------
17       IMPLICIT NONE
18       DOUBLE PRECISION DATA
19       INTEGER IMES,IERROR
20       REAL*8 SDATA
21       INTEGER PHLUN
22       COMMON/PHOLUN/PHLUN
23       INTEGER PHOMES
24       PARAMETER (PHOMES=10)
25       INTEGER STATUS
26       COMMON/PHOSTA/STATUS(PHOMES)
27       CHARACTER TEXT*(*)
28       SAVE IERROR
29 C--   security STOP switch  
30       LOGICAL ISEC
31       SAVE ISEC
32       DATA ISEC /.TRUE./
33       DATA IERROR/ 0/
34       IF (IMES.LE.PHOMES) STATUS(IMES)=STATUS(IMES)+1
35 C--
36 C--   Count number of non-fatal errors...
37       IF ((IMES.EQ. 6).AND.(STATUS(IMES).GE.2)) RETURN
38       IF ((IMES.EQ.10).AND.(STATUS(IMES).GE.2)) RETURN
39       SDATA=DATA
40       WRITE(PHLUN,9000)
41       WRITE(PHLUN,9120)
42       GOTO (10,20,30,40,50,60,70,80,90,100),IMES
43       WRITE(PHLUN,9130) IMES
44       GOTO 120
45    10 WRITE(PHLUN,9010) TEXT,INT(SDATA)
46       GOTO 110
47    20 WRITE(PHLUN,9020) TEXT,SDATA
48       GOTO 110
49    30 WRITE(PHLUN,9030) TEXT,SDATA
50       GOTO 110
51    40 WRITE(PHLUN,9040) TEXT
52       GOTO 110
53    50 WRITE(PHLUN,9050) TEXT,INT(SDATA)
54       GOTO 110
55    60 WRITE(PHLUN,9060) TEXT,SDATA
56       GOTO 130
57    70 WRITE(PHLUN,9070) TEXT,INT(SDATA)
58       GOTO 110
59    80 WRITE(PHLUN,9080) TEXT,INT(SDATA)
60       GOTO 110
61    90 WRITE(PHLUN,9090) TEXT,INT(SDATA)
62       GOTO 110
63   100 WRITE(PHLUN,9100) TEXT,SDATA
64       GOTO 130
65   110 CONTINUE
66       WRITE(PHLUN,9140)
67       WRITE(PHLUN,9120)
68       WRITE(PHLUN,9000)
69       IF (ISEC) THEN 
70         STOP
71       ELSE
72         GOTO 130
73       ENDIF
74   120 IERROR=IERROR+1
75       IF (IERROR.GE.10) THEN
76         WRITE(PHLUN,9150)
77         WRITE(PHLUN,9120)
78         WRITE(PHLUN,9000)
79         IF (ISEC) THEN 
80           STOP
81         ELSE
82           GOTO 130
83         ENDIF
84       ENDIF
85   130 WRITE(PHLUN,9120)
86       WRITE(PHLUN,9000)
87       RETURN
88  9000 FORMAT(1H ,80('*'))
89  9010 FORMAT(1H ,'* ',A,': Too many charged Particles, NCHARG =',I6,T81,
90      &'*')
91  9020 FORMAT(1H ,'* ',A,': Too much Bremsstrahlung required, PRSOFT = ',
92      &F15.6,T81,'*')
93  9030 FORMAT(1H ,'* ',A,': Combined Weight is exceeding 1., Weight = ',
94      &F15.6,T81,'*')
95  9040 FORMAT(1H ,'* ',A,
96      &': Error in Rescaling charged and neutral Vectors',T81,'*')
97  9050 FORMAT(1H ,'* ',A,
98      &': Non matching charged Particle Pointer, NCHARG = ',I5,T81,'*')
99  9060 FORMAT(1H ,'* ',A,
100      &': Do you really work with a Particle of Spin: ',F4.1,' ?',T81,
101      &'*')
102  9070 FORMAT(1H ,'* ',A, ': Stack Length exceeded, NSTACK = ',I5 ,T81,
103      &'*')
104  9080 FORMAT(1H ,'* ',A,
105      &': Random Number Generator Seed(1) out of Range: ',I8,T81,'*')
106  9090 FORMAT(1H ,'* ',A,
107      &': Random Number Generator Seed(2) out of Range: ',I8,T81,'*')
108  9100 FORMAT(1H ,'* ',A,
109      &': Available Phase Space below Cut-off: ',F15.6,' GeV/c^2',T81,
110      &'*')
111  9120 FORMAT(1H ,'*',T81,'*')
112  9130 FORMAT(1H ,'* Funny Error Message: ',I4,' ! What to do ?',T81,'*')
113  9140 FORMAT(1H ,'* Fatal Error Message, I stop this Run !',T81,'*')
114  9150 FORMAT(1H ,'* 10 Error Messages generated, I stop this Run !',T81,
115      &'*')
116       END