From db9de5783f14b25dea3a3496700b72e8dd6664fa Mon Sep 17 00:00:00 2001 From: Felix Riehn <felix@matilda> Date: Fri, 30 Nov 2018 09:46:31 +0000 Subject: [PATCH] added gasdev routine --- Framework/Cascade/gasdev.f | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Framework/Cascade/gasdev.f diff --git a/Framework/Cascade/gasdev.f b/Framework/Cascade/gasdev.f new file mode 100644 index 00000000..70dca8c8 --- /dev/null +++ b/Framework/Cascade/gasdev.f @@ -0,0 +1,27 @@ + DOUBLE PRECISION FUNCTION GASDEV(Idum) +C*********************************************************************** +C Gaussian deviation +C*********************************************************************** + IMPLICIT DOUBLE PRECISION (A-H,O-Z) + IMPLICIT INTEGER(I-N) + COMMON /RNDMGAS/ ISET + SAVE + DATA ISET/0/ + gasdev=idum + IF (ISET.EQ.0) THEN +1 V1=2.D0*S_RNDM(0)-1.D0 + V2=2.D0*S_RNDM(1)-1.D0 + R=V1**2+V2**2 + IF(R.GE.1.D0)GO TO 1 + FAC=SQRT(-2.D0*LOG(R)/R) + GSET=V1*FAC + GASDEV=V2*FAC + ISET=1 + ELSE + GASDEV=GSET + ISET=0 + ENDIF + RETURN + END +C*********************************************************************** + -- GitLab