]> git.uio.no Git - u/mrichter/AliRoot.git/blame - GEANT321/gphys/gphsgp.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / GEANT321 / gphys / gphsgp.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1995/10/24 10:21:30 cernlib
6* Geant
7*
8*
9#include "geant321/pilot.h"
10*CMZ : 3.21/02 29/03/94 15.41.22 by S.Giani
11*-- Author :
12 FUNCTION GPHSGP(IELEM,E)
13C.
14C. ******************************************************************
15C. * *
16C. * FUNCTION TO COMPUTE THE PHOTOEFFECT TOTAL CROSS-SECTION *
17C. * AS A FUNCTION OF Z AND E *
18C. * *
19C. * ==>CALLED BY : special dE/dx *
20C. * *
21C. * (1) Sandia parametrizsation is used; *
22C. * (2) GPHSGP in cm**/g *
23C. * (3) E in GeV *
24C. * *
25C. * J. Chwastowski 31.03.93 *
26C. ******************************************************************
27C.
28#include "geant321/gcbank.inc"
29#include "geant321/gcjloc.inc"
30#include "geant321/gconsp.inc"
31#include "geant321/gcunit.inc"
32#include "geant321/gc10ev.inc"
33#if !defined(CERNLIB_SINGLE)
34 DOUBLE PRECISION EINV,ECUR,ONE
35#endif
36 PARAMETER (ONE=1)
37C.
38C. ------------------------------------------------------------------
39C.
40 RES = 0.
41 IF(E.LT.G10EV) GO TO 20
42C Use Sandia data
43 JPHXS = LQ(JPHOT-1)
44 IF(IELEM.GT.IQ(JPHXS-2)) THEN
45 WRITE(CHMAIL,10010) IELEM, IQ(JPHXS-2)
4610010 FORMAT(' *** GPHSGP : element N ',I6,' requested, ',
47 +'but only ',I6,' elements in present mixture')
48 CALL GMAIL(0,0)
49 GOTO 20
50 ENDIF
51 JPHXSI = LQ(JPHXS-IELEM)
52 IPOINT = JPHXSI+1
53 IMAX = Q(IPOINT)
54 IPOINT = IPOINT+1
55 ECUR = E*1.E6
56 IF(ECUR.LT.Q(IPOINT)) GO TO 20
57 EINV = ONE/ECUR
58 DO 10 I = 2,IMAX
59 IPOINT = IPOINT+5
60 IF(ECUR.LT.Q(IPOINT)) THEN
61 J = IPOINT+1
62 RES = EINV*(Q(J)+EINV*(Q(J+1)+EINV*(Q(J+2)+EINV*Q(J+3))))
63 GO TO 20
64 ENDIF
65 10 CONTINUE
66C This value is in cm**2/g
67 20 GPHSGP = MAX(RES,0.)
68C
69 END