]> git.uio.no Git - u/mrichter/AliRoot.git/blob - GEANT321/gphys/gphak.F
New configurale version.
[u/mrichter/AliRoot.git] / GEANT321 / gphys / gphak.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1995/10/24 10:21:29  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       REAL FUNCTION GPHAK(BET)
13 C.
14 C.    ******************************************************************
15 C.    *                                                                *
16 C.    *  Generates Photoelectron Angular ditribution from K shell      *
17 C.    *   from L1 shell ditribution ENTRY GPHAL1                       *
18 C.    *                                                                *
19 C.    *    ==>CALLED BY : GPHOT                                        *
20 C.    *       AUTHOR    : J. Chwastowski                               *
21 C.    *                                                                *
22 C.    ******************************************************************
23 C.
24       DOUBLE PRECISION SAUT1,SAUT2,SAUT3,DRN
25       DOUBLE PRECISION COST,SIN2T,X,ANOR,AMAJOR
26       DOUBLE PRECISION GAMA,G1,G2,BETA,B1,ONE,HALF
27       PARAMETER (BETMAX=0.999999)
28       PARAMETER (ONE=1,HALF=ONE/2)
29       DIMENSION RAN(2),BETVAL(7),AMAJOR(7)
30       DATA BETVAL / 0.8601,0.901,0.9901,0.99901,0.999901,0.9999901,
31      +              0.99999901 /
32       DATA AMAJOR / 1.02,1.1,4.3,19.,68.,221.,704. /
33       DATA ANOR / 0.0 /
34 C
35 C L1 shell entry
36 C
37       ENTRY GPHAL1(BET)
38 C
39       BETA = MIN(BET,BETMAX)
40       B1 = ONE-BETA
41       G2 = ONE/((ONE-BETA)*(ONE+BETA))
42       GAMA = SQRT(G2)
43       G1 = GAMA-ONE
44       DO 10 I = 1,7
45        IF(BETA.LE.BETVAL(I)) THEN
46         ANOR = AMAJOR(I)*G2
47         ANOR = ONE/ANOR
48         GO TO 20
49        ENDIF
50    10 CONTINUE
51    20 SAUT2 = HALF*GAMA*G1*(GAMA-2)
52       GPHAK = 0.0
53    30 CONTINUE
54       CALL GRNDM(RAN,2)
55       DRN = 2*RAN(1)
56       SAUT1 = (DRN-B1)/(DRN*BETA+B1)
57       COST = SAUT1
58       X = ONE-BETA*COST
59       SIN2T = (ONE-COST)*(ONE+COST)
60       SAUT3 = SIN2T/(X**2)*(ONE+SAUT2*X)*ANOR
61       IF(RAN(2).GT.SAUT3) GO TO 30
62       GPHAK = COST
63       GPHAL1 = GPHAK
64       END