]>
Commit | Line | Data |
---|---|---|
da0e9ce3 | 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 |