#include "geant321/pilot.h" *CMZ : 3.21/02 29/03/94 15.41.35 by S.Giani *-- Author : SUBROUTINE GUKINE * ************************************************************************ * * * Generates Kinematics for primary tracks * * * ************************************************************************ * #include "geant321/gcunit.inc" #include "geant321/gcflag.inc" #include "geant321/gckine.inc" #include "geant321/gconsp.inc" #include "geant321/gcscan.inc" #include "geant321/gcomis.inc" #include "geant321/gctrak.inc" #include "geant321/gcnum.inc" #include "geant321/gcking.inc" * DIMENSION VERTEX(4),PLAB(5) DIMENSION RNDM(20) integer nubuf real ubuf(99) real cost2, theta, phi real boxsize(3) data boxsize/30.,0.01,30./ * * ----------------------------------------------------------------- * UPWGHT = 1 ISTORY = 0 CALL GRNDM(RNDM,5) VERTEX(1) = (RNDM(1)-0.5)*boxsize(1) VERTEX(2) = (RNDM(2)-0.5)*boxsize(2) VERTEX(3) = (RNDM(3)-0.5)*boxsize(3) CALL GSVERT(VERTEX,0,0,0.0,0,NVERT) cost2 = RNDM(4) theta = acos(sqrt(cost2)) phi = RNDM(5)*6.28319 TOFG=0 PLAB(1) = sin(theta)*cos(phi) PLAB(2) = cos(theta) PLAB(3) = -sin(theta)*sin(phi) CALL GSKINE(PLAB,48,NVERT,0,0,NT) PLAB(1) = -PLAB(1) PLAB(2) = -PLAB(2) PLAB(3) = -PLAB(3) CALL GSKINE(PLAB,48,NVERT,0,0,NT) * * Kinematic debug (controled by ISWIT(1)) * IF(IDEBUG.EQ.1.AND.ISWIT(1).EQ.1) THEN CALL GPRINT('VERT',0) CALL GPRINT('KINE',0) ENDIF END