]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.1 1995/10/24 10:21:23 cernlib | |
6 | * Geant | |
7 | * | |
8 | * | |
9 | #include "geant321/pilot.h" | |
10 | *CMZ : 3.21/02 29/03/94 15.41.21 by S.Giani | |
11 | *-- Author : | |
12 | SUBROUTINE GCOMPI | |
13 | C. | |
14 | C. ****************************************************************** | |
15 | C. * * | |
16 | C. * Calculates cross-section in current material * | |
17 | C. * for COMPTON scattering. * | |
18 | C. * * | |
19 | C. * The total cross-section of L.Urban is used to estimate the * | |
20 | C. * photon mean free path. * | |
21 | C. * It gives a good description of the data from 10KeV to * | |
22 | C. * 100/Z GeV * | |
23 | C. * * | |
24 | C. * ==>Called by : GPHYSI * | |
25 | C. * Authors R.Brun, L.Urban ********* * | |
26 | C. * * | |
27 | C. ****************************************************************** | |
28 | C. | |
29 | #include "geant321/gcbank.inc" | |
30 | #include "geant321/gctrak.inc" | |
31 | #include "geant321/gconsp.inc" | |
32 | #include "geant321/gcmate.inc" | |
33 | #include "geant321/gcjloc.inc" | |
34 | #include "geant321/gcmulo.inc" | |
35 | DIMENSION PCOMP(12),P(4) | |
36 | DATA AC,BC,CC/20.,230.,440./ | |
37 | DATA PCOMP/ 0.27965,-0.18300,0.67527E+1,-0.19798E+2, | |
38 | + 0.19756E-4,-0.10205E-1,-0.73913E-1,0.27079E-1, | |
39 | + -0.39178E-6,0.68241E-4,0.60480E-4,0.30274E-3/ | |
40 | DATA PI2R2I/2.004275/ | |
41 | C. | |
42 | C. ------------------------------------------------------------------ | |
43 | C. | |
44 | C Energy cut-off above which we ignore COMPTON scattering. | |
45 | C | |
46 | SIG=0. | |
47 | IF(Z.LT.1.)GO TO 90 | |
48 | EGAM = ELOW(IEKBIN) | |
49 | X=EGAM/EMASS | |
50 | IF(EGAM.GT.(100./Z))GO TO 90 | |
51 | X2=X*X | |
52 | JPROB=LQ(JMA-4) | |
53 | C | |
54 | DO 20 I=1,4 | |
55 | C=1. | |
56 | P(I)=0. | |
57 | DO 10 J=1,3 | |
58 | JJ=4*J+I-4 | |
59 | P(I)=P(I)+C*PCOMP(JJ) | |
60 | C=C*Z | |
61 | 10 CONTINUE | |
62 | 20 CONTINUE | |
63 | C | |
64 | SIG=P(1)*LOG(1.+2.*X)/X | |
65 | SIG=SIG+(P(2)+P(3)*X+P(4)*X2)/(1.+AC*X+BC*X2+CC*X2*X) | |
66 | SIG=PI2R2I*Q(JPROB+17)*SIG | |
67 | C | |
68 | 90 IF(SIG.GT.0.)THEN | |
69 | Q(JCOMP+IEKBIN)=1./SIG | |
70 | ELSE | |
71 | Q(JCOMP+IEKBIN)=BIG | |
72 | ENDIF | |
73 | C | |
74 | END |