]> git.uio.no Git - u/mrichter/AliRoot.git/blame - GEANT321/fluka/raco.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / GEANT321 / fluka / raco.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1995/10/24 10:20:03 cernlib
6* Geant
7*
8*
9#include "geant321/pilot.h"
10*CMZ : 3.21/02 29/03/94 15.41.44 by S.Giani
11*-- Author :
12*$ CREATE RACO.FOR
13*COPY RACO
14*
15*=== raco =============================================================*
16*
17 SUBROUTINE RACO(WX,WY,WZ)
18#include "geant321/dblprc.inc"
19#include "geant321/dimpar.inc"
20#include "geant321/iounit.inc"
21 REAL RNDM(2)
22C********************************************************************
23C VERSION JUNE 81 BY PERTTI AARNIO
24C LAST CHANGE 22. JUNE 81 BY PERTTI AARNIO
25C HELSINKI UNIVERSITY OF
26C TECHNOLOGY, FINLAND
27C
28C
29C SUBROUTINE OF FLUKA TO GIVE THE DIRECTION COSINES OF RANDOM
30C UNIFORM (ISOTROPIC) DIRECTION IN THREE DIMENSIONAL SPACE.
31C********************************************************************
32C
33 10 CALL GRNDM(RNDM,2)
34 X=2.D0*RNDM(1)-1.D0
35 Y=RNDM(2)
36 X2=X*X
37 Y2=Y*Y
38 IF (X2+Y2.GT.1.D0) GO TO 10
39 CFE=(X2-Y2)/(X2+Y2)
40 SFE=2.D0*X*Y/(X2+Y2)
41 CALL GRNDM(RNDM,1)
42 Z=RNDM(1)
43 Z2=Z*Z
44 WZ=SQRT(Z-Z2)
45 WX=2.D0*WZ*CFE
46 WY=2.D0*WZ*SFE
47 WZ=2.D0*Z-1.D0
48 RETURN
49 END