6 #include "geant321/gcflag.inc"
7 #include "geant321/gckine.inc"
8 #include "geant321/gcking.inc"
9 #include "geant321/gctrak.inc"
11 #include "process.inc"
17 IF (idebug.NE.0) CALL gpcxyz
18 IF (idebug.NE.0) CALL gpgkin
19 IF ((iswit(1).EQ.1).AND.(charge.NE.0.)) CALL gsxyz
20 IF (iswit(1).EQ.2) CALL gsxyz
28 IF (iproc.EQ.21) iproc = 12
29 IF (iproc.LE.12) nbcall(iproc) = nbcall(iproc)+1
33 if ((iproc.gt.5))
then
35 sumtrak = sumtrak + sleng
36 sumtrak2 = sumtrak2 + sleng*sleng
44 if (histo(id)) call hfill(id,gekin/histunit(id),0.,1.)
46 if (histo(id)) call hfill(id,
vect(4),0.,1.)
52 ipar = gkin(5,lp) + 0.1
53 call gfpart(ipar,cdum,ndum,gmass,gcharg,dum,dum,ndum)
54 ekin = gkin(4,lp) - gmass
55 pc =
sqrt(gkin(1,lp)**2 + gkin(2,lp)**2 + gkin(3,lp)**2)
57 if (gcharg.ne.0.) id = 3
58 if (gcharg.eq.0.) id = 5
59 if (histo(id)) call hfill(id,
ekin/histunit(id),0.,1.)
61 if (histo(id)) call hfill(id,cost,0.,1.)
G4double ekin(const G4LorentzVector &p) const
static c2_sqrt_p< float_type > & sqrt()
make a *new object