2 C.----------------------------------------------------------------------
4 C. PHOTOS: PHOton radiation in decays RANdom number generator init
6 C. Purpose: Initialse PHORAN with the user specified seeds in the
7 C. array ISEED. For details see also: F. James CERN DD-
8 C. Report November 1988.
10 C. Input Parameters: ISEED(*)
12 C. Output Parameters: URAN, CRAN, CDRAN, CMRAN, I97, J97
14 C. Author(s): B. van Eijk and F. James Created at: 27/09/89
15 C. Last Update: 22/02/90
17 C.----------------------------------------------------------------------
21 INTEGER I,IS1,IS2,IS3,IS4,IS5,J
23 REAL*8 URAN,CRAN,CDRAN,CMRAN
24 COMMON/PHSEED/ISEED(2),I97,J97,URAN(97),CRAN,CDRAN,CMRAN
26 C-- Check value range of seeds
27 IF ((ISEED(1).LT.0).OR.(ISEED(1).GE.31328)) THEN
29 CALL PHOERR(8,'PHORIN',DATA)
31 IF ((ISEED(2).LT.0).OR.(ISEED(2).GE.30081)) THEN
33 CALL PHOERR(9,'PHORIN',DATA)
36 C-- 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
45 IS5=MOD (MOD(IS1*IS2,179)*IS3,179)
50 IF (MOD(IS4*IS5,64).GE.32) S=S+T
53 CRAN=362436.D0/16777216.D0
54 CDRAN=7654321.D0/16777216.D0
55 CMRAN=16777213.D0/16777216.D0