]> git.uio.no Git - u/mrichter/AliRoot.git/blame - GEANT321/gtrak/gtnino.F
Better printing for MAXSTEP
[u/mrichter/AliRoot.git] / GEANT321 / gtrak / gtnino.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1995/10/24 10:21:44 cernlib
6* Geant
7*
8*
9#include "geant321/pilot.h"
10*CMZ : 3.21/04 01/11/94 16.25.59 by S.Ravndal
11*-- Author :
12 SUBROUTINE GTNINO
13C.
14C. ******************************************************************
15C. * *
16C. * Tracking routine for "GEANTINO" type tracks *
17C. * *
18C. * ==>Called by : GTRACK *
19C. * Author R.Brun, F.Bruyant *
20C. * *
21C. ******************************************************************
22C.
23#include "geant321/gconsp.inc"
24#include "geant321/gctmed.inc"
25#include "geant321/gctrak.inc"
26#if defined(CERNLIB_DEBUG)
27#include "geant321/gcunit.inc"
28#endif
29#if !defined(CERNLIB_SINGLE)
30 PARAMETER (EPSMAC=1.E-6)
31#endif
32#if defined(CERNLIB_SINGLE)
33 PARAMETER (EPSMAC=1.E-11)
34#endif
35C.
36C. ------------------------------------------------------------------
37C.
38 STEP = STEMAX
39 IPROC = 103
40 CALL GTNEXT
41 IF (IGNEXT.NE.0) THEN
42 STEP = SNEXT + PREC
43 IPROC=0
44 INWVOL= 2
45 NMEC = 1
46 LMEC(1)=1
47*
48* *** Linear transport
49*
50 DO 10 I = 1,3
51 VECTMP = VECT(I) +STEP*VECT(I+3)
52 IF(VECTMP.EQ.VECT(I)) THEN
53*
54* *** Correct for machine precision
55*
56 IF(VECT(I+3).NE.0.) THEN
57 VECTMP = VECT(I)+ABS(VECT(I))*SIGN(1.,VECT(I+3))*
58 + EPSMAC
59* IF(NMEC.GT.0) THEN
60* IF(LMEC(NMEC).EQ.32) NMEC=NMEC-1
61* ENDIF
62* NMEC=NMEC+1
63* LMEC(NMEC)=32
64#if defined(CERNLIB_DEBUG)
65 WRITE(CHMAIL, 10000)
66 CALL GMAIL(0,0)
67 WRITE(CHMAIL, 10100) GEKIN, NUMED, STEP, SNEXT
68 CALL GMAIL(0,0)
6910000 FORMAT(' Boundary correction in GTNINO: ',
70 + ' GEKIN NUMED STEP SNEXT')
7110100 FORMAT(31X,E10.3,1X,I10,1X,E10.3,1X,E10.3,1X)
72#endif
73 ENDIF
74 ENDIF
75 VECT(I) = VECTMP
76 10 CONTINUE
77 ELSE
78 DO 20 I = 1,3
79 VECT(I) = VECT(I) +STEP*VECT(I+3)
80 20 CONTINUE
81 ENDIF
82 SLENG = SLENG +STEP
83*
84* *** Update time of flight
85*
86 TOFG = TOFG +STEP/CLIGHT
87*
88 IF(IPROC.NE.0) THEN
89 NMEC=NMEC+1
90 LMEC(NMEC)=IPROC
91 ENDIF
92 END