]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/PHOTOS/phoran.F
Changes for #89887: Detector status ULong_t in AliESDEvent (Jacek)
[u/mrichter/AliRoot.git] / TEvtGen / PHOTOS / phoran.F
CommitLineData
da0e9ce3 1 FUNCTION PHORAN(IDUM)
2C.----------------------------------------------------------------------
3C.
4C. PHOTOS: PHOton radiation in decays RANdom number generator based
5C. on Marsaglia Algorithm
6C.
7C. Purpose: Generate uniformly distributed random numbers between
8C. 0 and 1. Super long period: 2**144. See also:
9C. G. Marsaglia and A. Zaman, FSU-SCR-87-50, for seed mo-
10C. difications to this version see: F. James DD-Report,
11C. November 1988. The generator has to be initialized by
12C. a call to PHORIN.
13C.
14C. Input Parameters: IDUM (integer dummy)
15C.
16C. Output Parameters: Function value
17C.
18C. Author(s): B. van Eijk, G. Marsaglia and Created at: 27/09/89
19C. A. Zaman Last Update: 27/09/89
20C.
21C.----------------------------------------------------------------------
22 IMPLICIT NONE
23 REAL*8 PHORAN
24 INTEGER IDUM
25 INTEGER ISEED,I97,J97
26 REAL*8 URAN,CRAN,CDRAN,CMRAN
27 COMMON/PHSEED/ISEED(2),I97,J97,URAN(97),CRAN,CDRAN,CMRAN
28 10 PHORAN=URAN(I97)-URAN(J97)
29 IF (PHORAN.LT.0.D0) PHORAN=PHORAN+1.D0
30 URAN(I97)=PHORAN
31 I97=I97-1
32 IF (I97.EQ.0) I97=97
33 J97=J97-1
34 IF (J97.EQ.0) J97=97
35 CRAN=CRAN-CDRAN
36 IF (CRAN.LT.0.D0) CRAN=CRAN+CMRAN
37 PHORAN=PHORAN-CRAN
38 IF (PHORAN.LT.0.D0) PHORAN=PHORAN+1.D0
39 IF (PHORAN.LE.0.D0) GOTO 10
40 RETURN
41 END