1 cdaq 1.4 SUBROUTINE H_TRACK(ABORT,err)
|
2 cdaq 1.1 *--------------------------------------------------------
3 *-
4 *- Purpose and Methods : Finds and fits tracks in HMS focal plane
5 *-
6 *- Required Input BANKS HMS_DECODED_DC
7 *-
8 *- Output BANKS HMS_FOCAL_PLANE
9 *- HMS_DECODED_DC hit coordinates
10 *-
11 *- Output: ABORT - success or failure
12 *- : err - reason for failure, if any
13 *-
14 *- Created 19-JAN-1994 D. F. Geesaman
|
15 cdaq 1.2 * $Log: h_track.f,v $
|
16 saw 1.5 * Revision 1.4 1995/10/11 12:19:50 cdaq
17 * (JRA) Only call tracking routines when it is warranted
18 *
|
19 cdaq 1.4 * Revision 1.3 1995/05/22 19:39:30 cdaq
20 * (SAW) Split gen_data_data_structures into gen, hms, sos, and coin parts"
21 *
|
22 cdaq 1.3 * Revision 1.2 1994/04/13 17:07:57 cdaq
23 * (DFG) Added histograming call (h_fill_dc_fp_hist)
24 *
|
25 cdaq 1.2 * Revision 1.1 1994/02/19 06:20:31 cdaq
26 * Initial revision
27 *
|
28 cdaq 1.1 *--------------------------------------------------------
|
29 cdaq 1.4 IMPLICIT NONE
30 SAVE
|
31 cdaq 1.1 *
|
32 cdaq 1.4 character*7 here
33 parameter (here= 'H_TRACK')
|
34 cdaq 1.1 *
|
35 cdaq 1.4 logical ABORT
36 character*(*) err
37 integer*4 ierr
38 character*5 line_err
39 *
40 INCLUDE 'hms_data_structures.cmn'
41 INCLUDE 'hms_tracking.cmn'
42 INCLUDE 'gen_constants.par'
43 INCLUDE 'gen_units.par'
|
44 cdaq 1.1 *
45 *--------------------------------------------------------
46 *
47 *
|
48 cdaq 1.4 ABORT = .false.
49 err = ' '
50
51 if (hdc_tot_hits.ne.0) then
52 call H_PATTERN_RECOGNITION(ABORT,err)
53 if(ABORT) then
54 call G_add_path(here,err)
55 return
56 endif
|
57 cdaq 1.1
58 *
|
59 cdaq 1.4 if (hnspace_points_tot.ne.0) then
60 call H_LEFT_RIGHT(ABORT,err)
61 if(ABORT) then
62 call G_add_path(here,err)
63 return
64 endif
65 *
|
66 saw 1.5 hstubminx = 999999.
67 hstubminy = 999999.
68 hstubminxp = 999999.
69 hstubminyp = 999999.
|
70 cdaq 1.4 call H_LINK_STUBS(ABORT,err)
71 if(ABORT) then
72 call G_add_path(here,err)
73 return
74 endif
75 *
76 if (hntracks_fp.ne.0) then
77 call H_TRACK_FIT(ABORT,err,ierr)
78 if(ABORT) then
79 call G_add_path(here,err)
80 return
81 endif
|
82 cdaq 1.2
|
83 cdaq 1.1 * Check for internal error in H_TRACK_FIT
|
84 cdaq 1.4 if(ierr.ne.0) then
85 line_err=' '
86 call CSETDI(ierr,line_err,1,5)
87 err='ERROR IN H_TRACK_FIT' // line_err
88 call G_add_path(here,err)
89 call G_LOG_MESSAGE(err)
90 endif
|
91 cdaq 1.2 * histogram focal plane tracks
92 *
|
93 cdaq 1.4 call h_fill_dc_fp_hist(ABORT,err)
94 if(ABORT) then
95 call g_add_path(here,err)
96 return
97 endif
98 *
99 endif !(hntracks_fp.ne.0)
100 endif !(hnspace_points_tot.ne.0)
101 endif !(hdc_tot_hits.ne.0)
102
|
103 cdaq 1.1 return
104 end
|
105 cdaq 1.2
106
107
|
108 cdaq 1.1
|