*********************************************************************** subroutine gustep * * called for each GEANT step * * last modification: 25/11/2004 by R. Holzmann *********************************************************************** implicit none #include "geant321/gcflag.inc" #include "geant321/gckine.inc" #include "geant321/gcking.inc" #include "geant321/gclist.inc" #include "geant321/gcsets.inc" #include "geant321/gctmed.inc" #include "geant321/gctrak.inc" #include "geant321/gcvolu.inc" #include "ntra.inc" #include "trig.inc" #include "user.inc" #include "geantdef.h" if(inwvol.eq.3 .or. tofg.gt.5.e-7) return ! we are out of setup * * store secondaries now * if(ngkine.gt.0) then ! secondaries have been created if(iseco(1).gt.-1) call hsecst ! store secondaries (selectively) ! via gsking(0) for later retrieval ! with gfkine(...) endif c call horig ! obsolete call (R.H.) if(istart.ge.1) call startstep if(irich.ge.1) call richstep if(imdc.ge.1 .or. imacc.eq.1) call mdcstep if(itof.ge.1) call tofstep if(ishow.ge.1) call showstep if(iemc.ge.1) call emcstep if(irpc.ge.1) call rpcstep if(ifwdet.ge.1) call fwdetstep if(iwall.ge.1) call wallstep #ifdef GEANT_REF if(ireft.eq.1) call refstep #endif if(iswit(2).eq.1) call gsxyz ! store track for plotting with gdxyz() if(iswit(2).eq.2) call gpcxyz ! print track information if(iswit(2).eq.3) call gdcxyz(0) ! plot track information on the fly if(iswit(2).eq.4 .and. + (ipart.eq.2 .or. ipart.eq.3 .or. + ipart.eq.8 .or. ipart.eq.9 .or. + ipart.eq.11 .or. ipart.eq.12 .or. + ipart.eq.14 .or. ipart.eq.45 .or. + ipart.eq.46 .or. ipart.eq.47 .or. + ipart.ge.61)) call gdcxyz(0) ! plot stable charged particles if(iswit(2).eq.5 .and. + (ipart.eq.2 .or. ipart.eq.3 .or. + ipart.eq.8 .or. ipart.eq.9 .or. + ipart.eq.11 .or. ipart.eq.12 .or. + ipart.eq.14)) call gdcxyz(ipart) ! plot stable charged particles if(iswit(2).eq.6) call gdcxyz(ipart) ! plot particles with customized ! coloring scheme return end