Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / GEANT321 / fluka / sigint.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1999/05/18 15:55:16  fca
6 * AliRoot sources
7 *
8 * Revision 1.1.1.1  1995/10/24 10:20:01  cernlib
9 * Geant
10 *
11 *
12 #include "geant321/pilot.h"
13 #if defined(CERNLIB_OLDNAME)
14 *CMZ :  3.21/02 29/03/94  15.41.44  by  S.Giani
15 *-- Author :
16 *=== sigint ===========================================================*
17 *
18       SUBROUTINE SIGINT (IRE ,PLAB,N,IE ,AMT ,AMN,ECM ,SI ,ITAR)
19  
20 #include "geant321/dblprc.inc"
21 #include "geant321/dimpar.inc"
22 #include "geant321/iounit.inc"
23 *
24 #include "geant321/reac.inc"
25 #include "geant321/redver.inc"
26 *
27 **** *,IEII,IKII,NURE
28       COMMON / FKABLT / AM   (110), GA   (110), TAU  (110), ICH   (110),
29      &                  IBAR (110), K1   (110), K2   (110)
30 *
31       IE=IEFUN(PLAB,IRE)
32       IF (IE.LE.IEII(IRE)) IE=IE+1
33       AMT=AM(ITAR)
34       AMN=AM(N)
35       AMN2=AMN*AMN
36       AMT2=AMT*AMT
37       ECM=SQRT(AMN2+AMT2+2.D0*AMT*SQRT(AMN2+PLAB**2))
38 C*** INTERPOLATION PREPARATION
39       ECMO=UMO(IE)
40       ECM1=UMO(IE-1)
41       DECM=ECMO-ECM1
42       DEC=ECMO-ECM
43       IIKI=IKII(IRE)+1
44       EKLIM=-THRESH(IIKI)
45       WOK=SIIN(IE)
46       WDK=WOK-SIIN(IE-1)
47       IF (ECM.GT.ECMO) WDK=0.D0
48 C*** INTERPOLATION IN CHANNEL WEIGHTS
49       IELIM=IEFUN(EKLIM,IRE)
50       DELIM=UMO(IELIM)+EKLIM
51      *+1.D-16
52       DETE=(ECM-(ECMO-EKLIM)*.5D0)*2.D0
53       IF (DELIM*DELIM-DETE*DETE) 112,112,113
54   113 DECC=DELIM
55       GO TO 114
56   112 DECC=DECM
57   114 CONTINUE
58       WKK=WOK-WDK*DEC/(DECC+1.D-9)
59       IF (WKK.LT.0.D0) WKK=0.D0
60       SI=WKK+1.D-12
61       IF (-EKLIM.GT.ECM) SI=1.D-14
62       RETURN
63       END
64 #else
65       SUBROUTINE SIGINT_DUMMY
66       END
67 #endif