/[PAMELA software]/calo/flight/MyDetector2Level2/src/mydectrk.for
ViewVC logotype

Annotation of /calo/flight/MyDetector2Level2/src/mydectrk.for

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (hide annotations) (download)
Wed May 3 10:03:40 2006 UTC (18 years, 11 months ago) by mocchiut
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +5 -50 lines
Major update, requires GLTables and RunInfo

1 mocchiut 1.1 *****************************************************************************
2     INTEGER FUNCTION MYDECTRK()
3     c
4     IMPLICIT NONE
5     C
6     INCLUDE 'COMMON.TXT'
7     C
8     DOUBLE PRECISION al_p(5),
9     & xout(22),yout(22),zin(22)
10     C
11     REAL ZALIG, DISTX
12 mocchiut 1.2 REAL PIANO(22)
13 mocchiut 1.1 C
14 mocchiut 1.2 INTEGER m, i, IFAIL
15 mocchiut 1.1 C
16     REAL hmemor(9000000)
17     INTEGER Iquest(100)
18     C
19     COMMON / pawcd / hmemor
20     save / pawcd /
21     C
22     Common / QUESTd / Iquest
23     save / questd /
24     C
25     C Begin !
26     C
27     MYDECTRK = 0
28     C
29     C Z positions where to calculate the track
30     C
31     PIANO(1) = 0.
32     DO I = 2, 22
33     IF ( MOD(I,2).EQ.0 ) THEN
34     PIANO(I) = PIANO(I-1) - 8.09
35     ELSE
36     PIANO(I) = PIANO(I-1) - 10.09
37     ENDIF
38     ENDDO
39     ZALIG = -263.
40     C
41     C BEGIN WITH THE FISRT TRACK
42     C
43     10 CONTINUE
44     C
45     C COPY THE ALFA VECTOR FROM AL_PP TO AL_P FOR THE TRACK "T"
46     C
47     do m = 1, 5
48 mocchiut 1.2 al_p(m) = al_pp(m)
49 mocchiut 1.1 enddo
50     if (al_p(5).eq.0.) THEN
51     PRINT *,' MYDETECTOR2 - WARNING F77: track with R = 0, discarded'
52     GOTO 969
53     ENDIF
54     C
55     C CALL THE TRACKING ROUTINE
56     C
57     DO M = 1,2
58     DO I = 1,22
59     XOUT(I) = 0.
60     YOUT(I) = 0.
61     IF (MOD(M,2).EQ.0) THEN
62     DISTX = PIANO(I) + ZALIG
63     ELSE
64     DISTX = PIANO(I) - 5.81 + ZALIG
65     ENDIF
66     ZIN(I) = distx / 10.
67     enddo
68     IFAIL = 0
69 mocchiut 1.2 call DOTRACK(22,ZIN,XOUT,YOUT,AL_P,IFAIL)
70 mocchiut 1.1 if(IFAIL.ne.0)then
71     GOOD = 0
72     print *,' MYDETECTOR2 - WARNING F77: tracking failed '
73     goto 969
74     endif
75     DO I = 1, 22
76     C
77     C CHECK IF XOUT OR YOUT ARE NaN
78     C
79     IF (XOUT(I).NE.XOUT(I).OR.YOUT(I).NE.YOUT(I)) THEN
80     print *,
81     & ' MYDETECTOR2 - WARNING F77: tracking error (NaN values)'
82     GOTO 969
83     ENDIF
84     C
85     ENDDO
86     ENDDO
87     969 continue
88    
89     C
90 mocchiut 1.2
91 mocchiut 1.1 C
92     C HERE WE DETERMINE TRACK-RELATED VARIABLES
93     C
94     MYTRKVAR = 18.
95    
96     50 CONTINUE
97     C
98     RETURN
99     END
100    
101    

  ViewVC Help
Powered by ViewVC 1.1.23