1 |
mocchiut |
1.1 |
*************************************************************************** |
2 |
|
|
* |
3 |
|
|
* Common for the track analysis, performed by the routine mini.f |
4 |
|
|
* |
5 |
|
|
*************************************************************************** |
6 |
|
|
c PARAMETER (PIGR=3.141592654)!??????????????????? |
7 |
|
|
|
8 |
|
|
* ------------------------------------------------------------------------- |
9 |
|
|
* A TRACK is defined by: |
10 |
|
|
* - the measured points associated to it |
11 |
|
|
* - their spatial resolution |
12 |
|
|
* - the track status vector AL-pha |
13 |
|
|
* |
14 |
|
|
* This common must be filled when calling mini_2. After the fit, |
15 |
|
|
* the initial values of AL-pha (initial guess, for instance from Hough) |
16 |
|
|
* are replaced with the minimization result. |
17 |
|
|
* |
18 |
|
|
* About the measured points: |
19 |
|
|
* - a COUPLE defines a point in the space; in this case you should set |
20 |
|
|
* |
21 |
|
|
* XGOOD = 1 |
22 |
|
|
* YGOOD = 1 |
23 |
|
|
* XM,YM,ZM = coordinates of the point in cm |
24 |
|
|
* RESX = spatial resolution of cl-x |
25 |
|
|
* RESY = spatial resolution of cl-y |
26 |
|
|
* |
27 |
|
|
* - a SINGLET (single cluster x/y) defines a segment AB, parallel to |
28 |
|
|
* the x/y strips; in this case you should set, for example in the case |
29 |
|
|
* of a cl-x: |
30 |
|
|
* |
31 |
|
|
* XGOOD = 1 |
32 |
|
|
* YGOOD = 0 |
33 |
|
|
* ZM = average z coordinate of the segment AB in cm |
34 |
|
|
* XM_A,YM_A = coordinates of extreme point A |
35 |
|
|
* XM_B,YM_B = coordinates of extreme point B |
36 |
|
|
* RESX = spatial resolution of cl-x |
37 |
|
|
* |
38 |
|
|
* NB!!! ZM must be always initialized, at least with the mechanical positions |
39 |
|
|
* |
40 |
|
|
* (All the needed quantities for couples and singlets can be evaluated |
41 |
|
|
* by means of the routine xyz_PAM) |
42 |
|
|
* ------------------------------------------------------------------------- |
43 |
|
|
REAL*8 AL |
44 |
|
|
REAL*8 XM,YM,ZM |
45 |
|
|
REAL*8 XM_A,YM_A!,ZM_A |
46 |
|
|
REAL*8 XM_B,YM_B!,ZM_B |
47 |
pam-fi |
1.3 |
REAL*8 RESX,RESY |
48 |
mocchiut |
1.1 |
REAL*8 XGOOD,YGOOD |
49 |
|
|
c REAL*8 DEDXTRK !(1) |
50 |
|
|
REAL*8 DEDXTRK_X !(1) |
51 |
|
|
REAL*8 DEDXTRK_Y !(1) |
52 |
pam-fi |
1.3 |
REAL*8 ZINI ! ***PP*** |
53 |
|
|
REAL*8 PFIXED ! ***PP*** |
54 |
|
|
REAL*8 CHI2 |
55 |
|
|
REAL*8 XV,YV,ZV |
56 |
|
|
REAL*8 AXV,AYV |
57 |
|
|
REAL*8 COV |
58 |
pam-fi |
1.5 |
REAL*8 FACT |
59 |
pam-fi |
1.3 |
INTEGER NSTEP |
60 |
pam-fi |
1.2 |
INTEGER IDCAND !(2) |
61 |
pam-fi |
1.4 |
INTEGER TRACKMODE |
62 |
pam-fi |
1.5 |
INTEGER ISTEPMIN |
63 |
mocchiut |
1.1 |
COMMON/TRACK/ |
64 |
|
|
$ AL(5) !track parameters |
65 |
|
|
$ ,XM(NPLANES),YM(NPLANES),ZM(NPLANES) !couple => xyz point |
66 |
|
|
$ ,XM_A(NPLANES),YM_A(NPLANES)!,ZM_A(NPLANES) !single cl => segment AB |
67 |
|
|
$ ,XM_B(NPLANES),YM_B(NPLANES)!,ZM_B(NPLANES) ! |
68 |
|
|
$ ,RESX(NPLANES),RESY(NPLANES) !spatial resolution |
69 |
|
|
$ ,XGOOD(NPLANES),YGOOD(NPLANES) !mask of included views |
70 |
|
|
c $ ,DEDXTRK(NPLANES) !energy release |
71 |
|
|
$ ,DEDXTRK_X(NPLANES),DEDXTRK_Y(NPLANES) !(1) |
72 |
pam-fi |
1.3 |
$ ,ZINI |
73 |
|
|
$ ,PFIXED |
74 |
|
|
$ ,CHI2 |
75 |
|
|
$ ,XV(NPLANES),YV(NPLANES),ZV(NPLANES) |
76 |
|
|
$ ,AXV(NPLANES),AYV(NPLANES) |
77 |
|
|
$ ,COV(5,5) |
78 |
pam-fi |
1.5 |
$ ,FACT ! factor scale for tracking precision |
79 |
pam-fi |
1.3 |
$ ,NSTEP |
80 |
pam-fi |
1.2 |
$ ,IDCAND !(2) track-candidate ID (to relate some level1 info) |
81 |
pam-fi |
1.4 |
$ ,TRACKMODE ! tracking mode, 0=normal, 1=with bremsstrahlung |
82 |
pam-fi |
1.5 |
$ ,ISTEPMIN ! minimum number of step during tracking |
83 |
mocchiut |
1.1 |
c****************************************************** |
84 |
|
|
cccccc 06/10/2005 modified by elena vannuccini ---> (1) |
85 |
pam-fi |
1.2 |
cccccc 17/08/2006 modified by elena vannuccini ---> (2) |
86 |
mocchiut |
1.1 |
c****************************************************** |
87 |
|
|
|
88 |
|
|
* ------------------------------------------------------------------------- |
89 |
|
|
* The FIT info includes: |
90 |
|
|
* - REDUCED chi2 |
91 |
|
|
* - number of d.o.f. |
92 |
|
|
* - evaluated coordinates (track intersection with the silicon planes) |
93 |
|
|
* - projected angles |
94 |
|
|
* - parameter covariance matrix |
95 |
|
|
* ------------------------------------------------------------------------- |
96 |
pam-fi |
1.3 |
c$$$ REAL*8 ZINI ! ***PP*** |
97 |
|
|
c$$$ REAL*8 PFIXED ! ***PP*** |
98 |
|
|
c$$$ REAL*8 CHI2 |
99 |
|
|
c$$$ REAL*8 XV,YV,ZV |
100 |
|
|
c$$$ REAL*8 AXV,AYV |
101 |
|
|
c$$$ REAL*8 COV |
102 |
|
|
c$$$ COMMON/FIT_INFO/ |
103 |
|
|
c$$$ $ ZINI |
104 |
|
|
c$$$ $ ,PFIXED |
105 |
|
|
c$$$ $ ,CHI2 |
106 |
|
|
c$$$ $ ,XV(NPLANES),YV(NPLANES),ZV(NPLANES) |
107 |
|
|
c$$$ $ ,AXV(NPLANES),AYV(NPLANES) |
108 |
|
|
c$$$ $ ,COV(5,5) |
109 |
mocchiut |
1.1 |
|
110 |
|
|
|
111 |
|
|
|
112 |
|
|
|
113 |
|
|
|
114 |
|
|
* ------------------------------------------------------------------------- |
115 |
|
|
* Other commons needed by the minimization procedures: |
116 |
|
|
* ------------------------------------------------------------------------- |
117 |
|
|
* computation of chi^2 and its derivatives |
118 |
|
|
REAL*8 CHI2D,CHI2DD !first and second derivatives of chi^2 |
119 |
|
|
REAL*8 DXDAL,DYDAL !first derivatives of x and y on AL-pha |
120 |
|
|
REAL*8 STEPAL ! |
121 |
pam-fi |
1.3 |
***PP*** REAL*8 ZINI !z coordinate of reference plane |
122 |
mocchiut |
1.1 |
COMMON/MINICOM/ |
123 |
|
|
$ CHI2D(5),CHI2DD(5,5) |
124 |
|
|
$ ,DXDAL(NPLANES,5),DYDAL(NPLANES,5) |
125 |
|
|
$ ,STEPAL(5) |
126 |
pam-fi |
1.3 |
***PP*** $ ,ZINI |
127 |
mocchiut |
1.1 |
* ------------------------------------------------------------------------- |
128 |
|
|
* convergence conditions |
129 |
|
|
REAL*8 ALTOL !tolerances on AL-pha parameters |
130 |
|
|
REAL*8 ALMAX,ALMIN !maximum and minimum value for AL-pha parameters |
131 |
|
|
INTEGER ISTEPMAX !maximum number of steps |
132 |
|
|
COMMON/MINICON/ |
133 |
|
|
$ ALTOL(5) |
134 |
|
|
$ ,ALMAX(5),ALMIN(5) |
135 |
|
|
$ ,ISTEPMAX |
136 |
|
|
* ------------------------------------------------------------------------- |
137 |
|
|
* variables for the tracking (routine posxy) |
138 |
|
|
REAL*8 VECT,VECTINI,VOUT !vectors for Runge-Kutta method |
139 |
|
|
REAL*8 TOLL !tolerance from plane |
140 |
|
|
REAL*8 STEPMAX !maximum number of steps |
141 |
|
|
REAL*8 CHARGE !sign of electric charge |
142 |
|
|
COMMON/TRACKING/VECT(7),VECTINI(7),VOUT(7),TOLL,STEPMAX, |
143 |
|
|
$ CHARGE |
144 |
|
|
|
145 |
|
|
|