The original random number routines are commented out, the ones in AliDpmJetRndm...
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 28 Apr 2008 15:57:44 +0000 (15:57 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 28 Apr 2008 15:57:44 +0000 (15:57 +0000)
DPMJET/AliDpmJetRndm.cxx
DPMJET/dpmjet3.0-5.f

index 55f7af1..ac0d03a 100644 (file)
@@ -67,16 +67,19 @@ TRandom * AliDpmJetRndm::GetDpmJetRandom() {
 
 
 extern "C" {
-  void type_of_call dt_rndmst_dpmjet(Int_t &, Int_t &, Int_t &, Int_t &)
+  void type_of_call dt_rndmst_(Int_t &, Int_t &, Int_t &, Int_t &)
   {printf("Dummy version of dt_rndmst reached\n");}
 
-  void type_of_call dt_rndmin_dpmjet(Int_t &, Int_t &, Int_t &, Int_t &, Int_t &, Int_t &)
+  void type_of_call dt_rndmin_(Int_t &, Int_t &, Int_t &, Int_t &, Int_t &, Int_t &)
   {printf("Dummy version of dt_rndmin reached\n");}
 
-  void type_of_call dt_rndmou_dpmjet(Int_t &, Int_t &, Int_t &, Int_t &, Int_t &, Int_t &)
+  void type_of_call dt_rndmou_(Int_t &, Int_t &, Int_t &, Int_t &, Int_t &, Int_t &)
   {printf("Dummy version of dt_rndmou reached\n");}
 
-  Double_t type_of_call dt_rndm_dpmjet(Int_t &) 
+  void type_of_call dt_rndmte_(Int_t &, Int_t &, Int_t &, Int_t &, Int_t &, Int_t &)
+  {printf("Dummy version of dt_rndmou reached\n");}
+
+  Double_t type_of_call dt_rndm_(Int_t &) 
   {
     // Wrapper to static method which retrieves the 
     // pointer to the Root (C++) generator
index 1467129..9d10ca8 100644 (file)
@@ -27310,178 +27310,178 @@ C     WRITE(LOUT,1000) DAT,TIM
 *$ CREATE DT_RNDM.FOR
 *COPY DT_RNDM
 *
-*===rndm===============================================================*
-*
-      DOUBLE PRECISION FUNCTION DT_RNDM(VDUMMY)
-
-      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-      SAVE
-
-* random number generator
-      COMMON /DTRAND/ U(97),C,CD,CM,I,J
-
-* counter of calls to random number generator
-* uncomment if needed
-C     COMMON /DTRNCT/ IRNCT0,IRNCT1
-C     LOGICAL LFIRST
-C     DATA LFIRST /.TRUE./
-
-* counter of calls to random number generator
-* uncomment if needed
-C     IF (LFIRST) THEN
-C        IRNCT0 = 0
-C        IRNCT1 = 0
-C        LFIRST = .FALSE.
-C     ENDIF
- 100  CONTINUE
-      DT_RNDM = U(I)-U(J)
-      IF ( DT_RNDM.LT.0.0D0 ) DT_RNDM = DT_RNDM+1.0D0
-      U(I) = DT_RNDM
-      I    = I-1
-      IF ( I.EQ.0 ) I = 97
-      J    = J-1
-      IF ( J.EQ.0 ) J = 97
-      C    = C-CD
-      IF ( C.LT.0.0D0 ) C = C+CM
-      DT_RNDM = DT_RNDM-C
-      IF ( DT_RNDM.LT.0.0D0 ) DT_RNDM = DT_RNDM+1.0D0
-
-      IF ((DT_RNDM.EQ.0.D0).OR.(DT_RNDM.EQ.1.D0)) GOTO 100
-
-* counter of calls to random number generator
-* uncomment if needed
-C     IRNCT0 = IRNCT0+1
-
-      RETURN
-      END
-
-*$ CREATE DT_RNDMST.FOR
-*COPY DT_RNDMST
-*
-*===rndmst=============================================================*
-*
-      SUBROUTINE DT_RNDMST(NA1,NA2,NA3,NB1)
-
-      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-      SAVE
-
-* random number generator
-      COMMON /DTRAND/ U(97),C,CD,CM,I,J
-
-      MA1 = NA1
-      MA2 = NA2
-      MA3 = NA3
-      MB1 = NB1
-      I   = 97
-      J   = 33
-      DO 20 II2 = 1,97
-        S = 0
-        T = 0.5D0
-        DO 10 II1 = 1,24
-          MAT  = MOD(MOD(MA1*MA2,179)*MA3,179)
-          MA1  = MA2
-          MA2  = MA3
-          MA3  = MAT
-          MB1  = MOD(53*MB1+1,169)
-          IF ( MOD(MB1*MAT,64).GE.32 ) S = S+T
-   10   T = 0.5D0*T
-   20 U(II2) = S
-      C  =   362436.0D0/16777216.0D0
-      CD =  7654321.0D0/16777216.0D0
-      CM = 16777213.0D0/16777216.0D0
-      RETURN
-      END
-
-*$ CREATE DT_RNDMIN.FOR
-*COPY DT_RNDMIN
-*
-*===rndmin=============================================================*
-*
-      SUBROUTINE DT_RNDMIN(UIN,CIN,CDIN,CMIN,IIN,JIN)
-
-      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-      SAVE
-
-* random number generator
-      COMMON /DTRAND/ U(97),C,CD,CM,I,J
-
-      DIMENSION UIN(97)
-
-      DO 10 KKK = 1,97
-   10 U(KKK) = UIN(KKK)
-      C  = CIN
-      CD = CDIN
-      CM = CMIN
-      I  = IIN
-      J  = JIN
-
-      RETURN
-      END
-
-*$ CREATE DT_RNDMOU.FOR
-*COPY DT_RNDMOU
-*
-*===rndmou=============================================================*
-*
-      SUBROUTINE DT_RNDMOU(UOUT,COUT,CDOUT,CMOUT,IOUT,JOUT)
-
-      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-      SAVE
-
-* random number generator
-      COMMON /DTRAND/ U(97),C,CD,CM,I,J
-
-      DIMENSION UOUT(97)
-
-      DO 10 KKK = 1,97
-   10 UOUT(KKK) = U(KKK)
-      COUT  = C
-      CDOUT = CD
-      CMOUT = CM
-      IOUT  = I
-      JOUT  = J
-
-      RETURN
-      END
-
-*$ CREATE DT_RNDMTE.FOR
-*COPY DT_RNDMTE
-*
-*===rndmte=============================================================*
-*
-      SUBROUTINE DT_RNDMTE(IO)
-
-      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-      SAVE
-
-      DIMENSION UU(97),U(6),X(6),D(6)
-      DATA U / 6533892.D0, 14220222.D0, 7275067.D0, 6172232.D0,
-     +8354498.D0, 10633180.D0/
-
-      CALL DT_RNDMOU(UU,CC,CCD,CCM,II,JJ)
-      CALL DT_RNDMST(12,34,56,78)
-      DO 10 II1 = 1,20000
-   10 XX = DT_RNDM(XX)
-      SD        = 0.0D0
-      DO 20 II2 = 1,6
-        X(II2)  = 4096.D0*(4096.D0*DT_RNDM(SD))
-        D(II2)  = X(II2)-U(II2)
-   20 SD = SD+D(II2)
-      CALL DT_RNDMIN(UU,CC,CCD,CCM,II,JJ)
-**sr 24.01.95
-C     IF ( IO.EQ. 1.OR. SD.NE.0. 0) WRITE(6,500) (U(I),X(I),D(I),I=1,6)
-      IF ((IO.EQ.1).OR.(SD.NE.0.0)) THEN
-C        WRITE(6,1000)
- 1000    FORMAT(/,/,1X,'DT_RNDMTE: Test of random-number generator...',
-     &          ' passed')
-      ENDIF
-**
-      RETURN
-  500 FORMAT('  === TEST OF THE RANDOM-GENERATOR ===',/,
-     &'    EXPECTED VALUE    CALCULATED VALUE     DIFFERENCE',/, 6(F17.
-     &1,F20.1,F15.3,/), '  === END OF TEST ;',
-     &'  GENERATOR HAS THE SAME STATUS AS BEFORE CALLING DT_RNDMTE')
-      END
+c$$$*===rndm===============================================================*
+c$$$*
+c$$$      DOUBLE PRECISION FUNCTION DT_RNDM(VDUMMY)
+c$$$
+c$$$      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+c$$$      SAVE
+c$$$
+c$$$* random number generator
+c$$$      COMMON /DTRAND/ U(97),C,CD,CM,I,J
+c$$$
+c$$$* counter of calls to random number generator
+c$$$* uncomment if needed
+c$$$C     COMMON /DTRNCT/ IRNCT0,IRNCT1
+c$$$C     LOGICAL LFIRST
+c$$$C     DATA LFIRST /.TRUE./
+c$$$
+c$$$* counter of calls to random number generator
+c$$$* uncomment if needed
+c$$$C     IF (LFIRST) THEN
+c$$$C        IRNCT0 = 0
+c$$$C        IRNCT1 = 0
+c$$$C        LFIRST = .FALSE.
+c$$$C     ENDIF
+c$$$ 100  CONTINUE
+c$$$      DT_RNDM = U(I)-U(J)
+c$$$      IF ( DT_RNDM.LT.0.0D0 ) DT_RNDM = DT_RNDM+1.0D0
+c$$$      U(I) = DT_RNDM
+c$$$      I    = I-1
+c$$$      IF ( I.EQ.0 ) I = 97
+c$$$      J    = J-1
+c$$$      IF ( J.EQ.0 ) J = 97
+c$$$      C    = C-CD
+c$$$      IF ( C.LT.0.0D0 ) C = C+CM
+c$$$      DT_RNDM = DT_RNDM-C
+c$$$      IF ( DT_RNDM.LT.0.0D0 ) DT_RNDM = DT_RNDM+1.0D0
+c$$$
+c$$$      IF ((DT_RNDM.EQ.0.D0).OR.(DT_RNDM.EQ.1.D0)) GOTO 100
+c$$$
+c$$$* counter of calls to random number generator
+c$$$* uncomment if needed
+c$$$C     IRNCT0 = IRNCT0+1
+c$$$
+c$$$      RETURN
+c$$$      END
+c$$$
+c$$$*$ CREATE DT_RNDMST.FOR
+c$$$*COPY DT_RNDMST
+c$$$*
+c$$$*===rndmst=============================================================*
+c$$$*
+c$$$      SUBROUTINE DT_RNDMST(NA1,NA2,NA3,NB1)
+c$$$
+c$$$      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+c$$$      SAVE
+c$$$
+c$$$* random number generator
+c$$$      COMMON /DTRAND/ U(97),C,CD,CM,I,J
+c$$$
+c$$$      MA1 = NA1
+c$$$      MA2 = NA2
+c$$$      MA3 = NA3
+c$$$      MB1 = NB1
+c$$$      I   = 97
+c$$$      J   = 33
+c$$$      DO 20 II2 = 1,97
+c$$$        S = 0
+c$$$        T = 0.5D0
+c$$$        DO 10 II1 = 1,24
+c$$$          MAT  = MOD(MOD(MA1*MA2,179)*MA3,179)
+c$$$          MA1  = MA2
+c$$$          MA2  = MA3
+c$$$          MA3  = MAT
+c$$$          MB1  = MOD(53*MB1+1,169)
+c$$$          IF ( MOD(MB1*MAT,64).GE.32 ) S = S+T
+c$$$   10   T = 0.5D0*T
+c$$$   20 U(II2) = S
+c$$$      C  =   362436.0D0/16777216.0D0
+c$$$      CD =  7654321.0D0/16777216.0D0
+c$$$      CM = 16777213.0D0/16777216.0D0
+c$$$      RETURN
+c$$$      END
+c$$$
+c$$$*$ CREATE DT_RNDMIN.FOR
+c$$$*COPY DT_RNDMIN
+c$$$*
+c$$$*===rndmin=============================================================*
+c$$$*
+c$$$      SUBROUTINE DT_RNDMIN(UIN,CIN,CDIN,CMIN,IIN,JIN)
+c$$$
+c$$$      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+c$$$      SAVE
+c$$$
+c$$$* random number generator
+c$$$      COMMON /DTRAND/ U(97),C,CD,CM,I,J
+c$$$
+c$$$      DIMENSION UIN(97)
+c$$$
+c$$$      DO 10 KKK = 1,97
+c$$$   10 U(KKK) = UIN(KKK)
+c$$$      C  = CIN
+c$$$      CD = CDIN
+c$$$      CM = CMIN
+c$$$      I  = IIN
+c$$$      J  = JIN
+c$$$
+c$$$      RETURN
+c$$$      END
+c$$$
+c$$$*$ CREATE DT_RNDMOU.FOR
+c$$$*COPY DT_RNDMOU
+c$$$*
+c$$$*===rndmou=============================================================*
+c$$$*
+c$$$      SUBROUTINE DT_RNDMOU(UOUT,COUT,CDOUT,CMOUT,IOUT,JOUT)
+c$$$
+c$$$      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+c$$$      SAVE
+c$$$
+c$$$* random number generator
+c$$$      COMMON /DTRAND/ U(97),C,CD,CM,I,J
+c$$$
+c$$$      DIMENSION UOUT(97)
+c$$$
+c$$$      DO 10 KKK = 1,97
+c$$$   10 UOUT(KKK) = U(KKK)
+c$$$      COUT  = C
+c$$$      CDOUT = CD
+c$$$      CMOUT = CM
+c$$$      IOUT  = I
+c$$$      JOUT  = J
+c$$$
+c$$$      RETURN
+c$$$      END
+c$$$
+c$$$*$ CREATE DT_RNDMTE.FOR
+c$$$*COPY DT_RNDMTE
+c$$$*
+c$$$*===rndmte=============================================================*
+c$$$*
+c$$$      SUBROUTINE DT_RNDMTE(IO)
+c$$$
+c$$$      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+c$$$      SAVE
+c$$$
+c$$$      DIMENSION UU(97),U(6),X(6),D(6)
+c$$$      DATA U / 6533892.D0, 14220222.D0, 7275067.D0, 6172232.D0,
+c$$$     +8354498.D0, 10633180.D0/
+c$$$
+c$$$      CALL DT_RNDMOU(UU,CC,CCD,CCM,II,JJ)
+c$$$      CALL DT_RNDMST(12,34,56,78)
+c$$$      DO 10 II1 = 1,20000
+c$$$   10 XX = DT_RNDM(XX)
+c$$$      SD        = 0.0D0
+c$$$      DO 20 II2 = 1,6
+c$$$        X(II2)  = 4096.D0*(4096.D0*DT_RNDM(SD))
+c$$$        D(II2)  = X(II2)-U(II2)
+c$$$   20 SD = SD+D(II2)
+c$$$      CALL DT_RNDMIN(UU,CC,CCD,CCM,II,JJ)
+c$$$**sr 24.01.95
+c$$$C     IF ( IO.EQ. 1.OR. SD.NE.0. 0) WRITE(6,500) (U(I),X(I),D(I),I=1,6)
+c$$$      IF ((IO.EQ.1).OR.(SD.NE.0.0)) THEN
+c$$$C        WRITE(6,1000)
+c$$$ 1000    FORMAT(/,/,1X,'DT_RNDMTE: Test of random-number generator...',
+c$$$     &          ' passed')
+c$$$      ENDIF
+c$$$**
+c$$$      RETURN
+c$$$  500 FORMAT('  === TEST OF THE RANDOM-GENERATOR ===',/,
+c$$$     &'    EXPECTED VALUE    CALCULATED VALUE     DIFFERENCE',/, 6(F17.
+c$$$     &1,F20.1,F15.3,/), '  === END OF TEST ;',
+c$$$     &'  GENERATOR HAS THE SAME STATUS AS BEFORE CALLING DT_RNDMTE')
+c$$$      END
 *
 *$ CREATE PHO_RNDM.FOR
 *COPY PHO_RNDM