]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/PHOTOS/phorin.F
Update the analysis good run list for periods LHC10d (-2 runs) and LHC10e (removing...
[u/mrichter/AliRoot.git] / TEvtGen / PHOTOS / phorin.F
CommitLineData
da0e9ce3 1 SUBROUTINE PHORIN
2C.----------------------------------------------------------------------
3C.
4C. PHOTOS: PHOton radiation in decays RANdom number generator init
5C.
6C. Purpose: Initialse PHORAN with the user specified seeds in the
7C. array ISEED. For details see also: F. James CERN DD-
8C. Report November 1988.
9C.
10C. Input Parameters: ISEED(*)
11C.
12C. Output Parameters: URAN, CRAN, CDRAN, CMRAN, I97, J97
13C.
14C. Author(s): B. van Eijk and F. James Created at: 27/09/89
15C. Last Update: 22/02/90
16C.
17C.----------------------------------------------------------------------
18 IMPLICIT NONE
19 DOUBLE PRECISION DATA
20 REAL*8 S,T
21 INTEGER I,IS1,IS2,IS3,IS4,IS5,J
22 INTEGER ISEED,I97,J97
23 REAL*8 URAN,CRAN,CDRAN,CMRAN
24 COMMON/PHSEED/ISEED(2),I97,J97,URAN(97),CRAN,CDRAN,CMRAN
25C--
26C-- Check value range of seeds
27 IF ((ISEED(1).LT.0).OR.(ISEED(1).GE.31328)) THEN
28 DATA=ISEED(1)
29 CALL PHOERR(8,'PHORIN',DATA)
30 ENDIF
31 IF ((ISEED(2).LT.0).OR.(ISEED(2).GE.30081)) THEN
32 DATA=ISEED(2)
33 CALL PHOERR(9,'PHORIN',DATA)
34 ENDIF
35C--
36C-- Calculate Marsaglia and Zaman seeds (by F. James)
37 IS1=MOD(ISEED(1)/177,177)+2
38 IS2=MOD(ISEED(1),177)+2
39 IS3=MOD(ISEED(2)/169,178)+1
40 IS4=MOD(ISEED(2),169)
41 DO 20 I=1,97
42 S=0.D0
43 T=0.5D0
44 DO 10 J=1,24
45 IS5=MOD (MOD(IS1*IS2,179)*IS3,179)
46 IS1=IS2
47 IS2=IS3
48 IS3=IS5
49 IS4=MOD(53*IS4+1,169)
50 IF (MOD(IS4*IS5,64).GE.32) S=S+T
51 10 T=0.5D0*T
52 20 URAN(I)=S
53 CRAN=362436.D0/16777216.D0
54 CDRAN=7654321.D0/16777216.D0
55 CMRAN=16777213.D0/16777216.D0
56 I97=97
57 J97=33
58 RETURN
59 END