| Line | |
|---|
| 1 |
|
|---|
| 2 | SUBROUTINE GUKINE
|
|---|
| 3 | *
|
|---|
| 4 | * Generates Kinematics for primary track
|
|---|
| 5 | *
|
|---|
| 6 | * Data card Kine : Itype Ekine xbeam rbeam
|
|---|
| 7 | *
|
|---|
| 8 | #include "geant321/gcbank.inc"
|
|---|
| 9 | #include "geant321/gcflag.inc"
|
|---|
| 10 | #include "geant321/gckine.inc"
|
|---|
| 11 | #include "calor.inc"
|
|---|
| 12 | *
|
|---|
| 13 | DIMENSION VERTEX(3),PLAB(3)
|
|---|
| 14 | dimension rndm(3)
|
|---|
| 15 | *
|
|---|
| 16 | DATA VERTEX/3*0./
|
|---|
| 17 | DATA PLAB /3*0./
|
|---|
| 18 | *
|
|---|
| 19 | IF (PKINE(2).NE.0.) vertex(1) = -0.5*SizeX
|
|---|
| 20 | *
|
|---|
| 21 | * random in YZ ?
|
|---|
| 22 | if ((pkine(3).lt.0.).or.(pkine(3).gt.1.)) pkine(3) = 0.
|
|---|
| 23 | rbeam = pkine(3)*0.5*SizeYZ
|
|---|
| 24 | call GRNDM (rndm,2)
|
|---|
| 25 | *
|
|---|
| 26 | VERTEX(2) = (2*rndm(1)-1.)*rbeam
|
|---|
| 27 | VERTEX(3) = (2*rndm(2)-1.)*rbeam
|
|---|
| 28 | *
|
|---|
| 29 | CALL GSVERT(VERTEX,0,0,0,0,NVERT)
|
|---|
| 30 | *
|
|---|
| 31 | JPA = LQ(JPART-IKINE)
|
|---|
| 32 | XMASS = Q(JPA+7)
|
|---|
| 33 | PLAB(1) = SQRT(PKINE(1)*(PKINE(1)+2*XMASS))
|
|---|
| 34 | *
|
|---|
| 35 | CALL GSKINE(PLAB,IKINE,NVERT,0,0,NT)
|
|---|
| 36 | *
|
|---|
| 37 | * *** Kinematics debug
|
|---|
| 38 | IF (IEVENT.EQ.1.OR.IDEBUG.NE.0) CALL GPRINT('KINE',0)
|
|---|
| 39 | *
|
|---|
| 40 | END
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.