/[PAMELA software]/tof/flight/ToFNuclei/src/ToFNuclei.cpp
ViewVC logotype

Diff of /tof/flight/ToFNuclei/src/ToFNuclei.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by pamela, Mon Oct 13 13:41:39 2008 UTC revision 1.8 by mocchiut, Fri Jan 17 15:12:38 2014 UTC
# Line 1  Line 1 
1    //*****************************************************
2    //24-feb-2009: introduced "beta_in" and "Set_Beta":
3    // beta_in is set to 100 by default. If it is not overwritten
4    // by "Set_Beta" (ToFNuclei.h), the code is used as before.
5    // If beta_in was set by the user using "Set_Beta", this beta
6    // is taken for the calculations.
7    //
8    //26-feb-2009: Inserted S115B calibrations from Lucia
9    //
10    //02-apr-2009: bug found in some "if" statements for the
11    // "Layercharge" definition, but only important if ADC=4095
12    //
13    //15-apr-2009: small bug found in the calculation of the PMT
14    // charge, the charge for the PMTs 1,9,28.. was calculated
15    // twice, but the final result was OK
16    //
17    //05-may-2009: bug found in the calculation of the PMT
18    // charge for standalone ToF due to changes made for rev 1.4:
19    // For PMTs 4,8,39,41 (counting 0..47) no charge was calculated
20    // calibration arrays now including correct brackets to avoid
21    // compiler warnings  
22    //06-aug-2009: charge_layer_trk_raw  and charge_layer_std_raw
23    // added: These are the "raw" values before doing the 2nd-order
24    // correction
25    //*****************************************************
26  #include <ToFNuclei.h>  #include <ToFNuclei.h>
27    
28  //--------------------------------------  //--------------------------------------
# Line 14  ToFNuclei::ToFNuclei(PamLevel2 *l2p){   Line 39  ToFNuclei::ToFNuclei(PamLevel2 *l2p){  
39    //    //
40    L2 = l2p;    L2 = l2p;
41    //    //
42      beta_in = 100.;
43      //
44    if ( !L2->IsORB() ) printf(" WARNING: OrbitalInfo Tree is needed, the plugin could not work properly without it \n");    if ( !L2->IsORB() ) printf(" WARNING: OrbitalInfo Tree is needed, the plugin could not work properly without it \n");
45    //    //
46    OBT = 0;    OBT = 0;
# Line 27  ToFNuclei::ToFNuclei(PamLevel2 *l2p){   Line 54  ToFNuclei::ToFNuclei(PamLevel2 *l2p){  
54    
55  void ToFNuclei::Clear(){  void ToFNuclei::Clear(){
56    //    //
57    ncount_trk = 0.;    ncount_trk = 0;
58    charge_trk = 0.;    charge_trk = 0.;
59    memset (charge_layer_trk,0,6*sizeof(Float_t));  //    memset (charge_layer_trk,0,6*sizeof(Float_t));  //
60      memset (charge_layer_trk_raw,0,6*sizeof(Float_t));  //
61      memset (charge_PMT_trk,0,48*sizeof(Float_t));  //
62    memset (layerinfo_trk,0,6*sizeof(Int_t));  //    memset (layerinfo_trk,0,6*sizeof(Int_t));  //
63    ncount_std = 0.;    ncount_std = 0;
64    charge_std = 0.;    charge_std = 0.;
65    memset (charge_layer_std,0,6*sizeof(Float_t));  //    memset (charge_layer_std,0,6*sizeof(Float_t));  //
66      memset (charge_layer_std_raw,0,6*sizeof(Float_t));  //
67      memset (charge_PMT_std,0,48*sizeof(Float_t));  //
68    memset (layerinfo_std,0,6*sizeof(Int_t));  //    memset (layerinfo_std,0,6*sizeof(Int_t));  //
69  };  };
70    
# Line 83  void ToFNuclei::Process(Int_t ntr){ Line 114  void ToFNuclei::Process(Int_t ntr){
114      newentry = true;      newentry = true;
115    };    };
116    //    //
117    if ( !newentry ) return;    if ( !newentry ) {
118      return;
119                      }
120    //    //
121    tr = ntr;    tr = ntr;
122    //    //
# Line 96  void ToFNuclei::Process(Int_t ntr){ Line 129  void ToFNuclei::Process(Int_t ntr){
129    
130    Clear();    Clear();
131    
132    //    //  cout<<"beta_in = "<<beta_in<<endl;
133    
134    
135    Double_t time = L2->GetOrbitalInfo()->absTime;    Double_t time = L2->GetOrbitalInfo()->absTime;
136    
# Line 108  void ToFNuclei::Process(Int_t ntr){ Line 142  void ToFNuclei::Process(Int_t ntr){
142  //if (L2->GetTrkLevel2()->GetNTracks()!=1) return;  //if (L2->GetTrkLevel2()->GetNTracks()!=1) return;
143  if (L2->GetTrkLevel2()->GetNTracks()==1) {  if (L2->GetTrkLevel2()->GetNTracks()==1) {
144    
145    /*
146  Float_t  PMTsat[48] = {  Float_t  PMTsat[48] = {
147  3162.14, 3165.48, 3153.85, 3085.73, 3089.65, 3107.64, 3097.52, 3078.37, 3130.05, 3087.07, 3112.22,  3162.14, 3165.48, 3153.85, 3085.73, 3089.65, 3107.64, 3097.52, 3078.37, 3130.05, 3087.07, 3112.22,
148  3102.92, 3080.58, 3092.55, 3087.94, 3125.03, 3094.09, 3143.16,  3102.92, 3080.58, 3092.55, 3087.94, 3125.03, 3094.09, 3143.16,
149  3125.51, 3181.27, 3092.09, 3124.98, 3069.3, 3095.53, 3097.11, 3133.53, 3114.73, 3113.01, 3091.19,  3125.51, 3181.27, 3092.09, 3124.98, 3069.3, 3095.53, 3097.11, 3133.53, 3114.73, 3113.01, 3091.19,
150  3097.99, 3033.84, 3134.98, 3081.37, 3111.04, 3066.77, 3108.17,  3097.99, 3033.84, 3134.98, 3081.37, 3111.04, 3066.77, 3108.17,
151  3133, 3111.06, 3052.52, 3140.66, 3106.33, 3094.85, 3150.85, 3118.8, 3096.24, 3118.47,3111.36, 3117.11  3133, 3111.06, 3052.52, 3140.66, 3106.33, 3094.85, 3150.85, 3118.8, 3096.24, 3118.47,3111.36, 3117.11
152  }  };
153  ;  */
154    
155    // new values from Napoli dec 2008
156    Float_t  PMTsat[48] = {
157    3176.35,3178.19,3167.38,3099.73,3117.00,3126.29,3111.44,3092.27,
158    3146.48,3094.41,3132.13,3115.37,3099.32,3110.97,3111.80,3143.14,
159    3106.72,3153.44,3136.00,3188.96,3104.73,3140.45,3073.18,3106.62,
160    3112.48,3146.92,3127.24,3136.52,3109.59,3112.89,3045.15,3147.26,
161    3095.92,3121.05,3083.25,3123.62,3150.92,3125.30,3067.60,3160.18,
162    3119.36,3108.92,3164.77,3133.64,3111.47,3131.98,3128.87,3135.56 };
163    
164    for (Int_t i=0; i<48;i++) PMTsat[i] = PMTsat[i] - 5.;  // safety margin
165    
166    
167    Float_t C0t[48][9] = {
168    {0, 1, 2, 3, 4, 5, 6, 8, 92},
169    {0, 1, 2, 3, 4, 5, 6, 8, 92},
170    {0, 1, 2, 3, 4, 5, 6, 8, 92},
171    {0, 1, 2, 3, 4, 5, 6, 8, 92},
172    {0, 1, 2, 3, 4, 5, 6, 8, 92},
173    {0, 1, 2, 3, 4, 5, 6, 8, 92},
174    {0, 1, 2, 3, 4, 5, 6, 8, 92},
175    {0, 1, 2, 3, 4, 5, 6, 8, 92},
176    {0, 1, 2, 3, 4, 5, 6, 8, 92},
177    {0, 1, 2, 3, 4, 5, 6, 8, 92},
178    {0, 1, 2, 3, 4, 5, 6, 8, 92},
179    {0, 1, 2, 3, 4, 5, 6, 8, 92},
180    {0, 1, 2, 3, 4, 5, 6, 8, 92},
181    {0, 1, 2, 3, 4, 5, 6, 8, 92},
182    {0, 1, 2, 3, 4, 5, 6, 8, 92},
183    {0, 1, 2, 3, 4, 5, 6, 8, 92},
184    {0, 1, 2, 3, 4, 5, 6, 8, 92},
185    {0, 1, 2, 3, 4, 5, 6, 8, 92},
186    {0, 1, 2, 3, 4, 5, 6, 8, 92},
187    {0, 1, 2, 3, 4, 5, 6, 8, 92},
188    {0, 1, 2, 3, 4, 5, 6, 8, 92},
189    {0, 1, 2, 3, 4, 5, 6, 8, 92},
190    {0, 1, 2, 3, 4, 5, 6, 8, 92},
191    {0, 1, 2, 3, 4, 5, 6, 8, 92},
192    {0, 1, 2, 3, 4, 5, 6, 8, 92},
193    {0, 1, 2, 3, 4, 5, 6, 8, 92},
194    {0, 1, 2, 3, 4, 5, 6, 8, 92},
195    {0, 1, 2, 3, 4, 5, 6, 8, 92},
196    {0, 1, 2, 3, 4, 5, 6, 8, 92},
197    {0, 1, 2, 3, 4, 5, 6, 8, 92},
198    {0, 1, 2, 3, 4, 5, 6, 8, 92},
199    {0, 1, 2, 3, 4, 5, 6, 8, 92},
200    {0, 1, 2, 3, 4, 5, 6, 8, 92},
201    {0, 1, 2, 3, 4, 5, 6, 8, 92},
202    {0, 1, 2, 3, 4, 5, 6, 8, 92},
203    {0, 1, 2, 3, 4, 5, 6, 8, 92},
204    {0, 1, 2, 3, 4, 5, 6, 8, 92},
205    {0, 1, 2, 3, 4, 5, 6, 8, 92},
206    {0, 1, 2, 3, 4, 5, 6, 8, 92},
207    {0, 1, 2, 3, 4, 5, 6, 8, 92},
208    {0, 1, 2, 3, 4, 5, 6, 8, 92},
209    {0, 1, 2, 3, 4, 5, 6, 8, 92},
210    {0, 1, 2, 3, 4, 5, 6, 8, 92},
211    {0, 1, 2, 3, 4, 5, 6, 8, 92},
212    {0, 1, 2, 3, 4, 5, 6, 8, 92},
213    {0, 1, 2, 3, 4, 5, 6, 8, 92},
214    {0, 1, 2, 3, 4, 5, 6, 8, 92},
215    {0, 1, 2, 3, 4, 5, 6, 8, 92} } ;
216    
217    
 Float_t C0t[48][9] = {0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92 };  
218    
219  Float_t A0t[48][9] = {  Float_t A0t[48][9] = {
220  0, 0.90472, 5.19581, 7.99982, 11, 13, 16, 18, 2000, 0, 0.7774, 5.15121, 7.99976, 11, 13, 16, 18, 2000, 0, 1.18414, 5.1952, 8, 11, 13, 16, 17.9999, 2000, 0, 1.0189, 5.61869, 8, 11, 13.0006, 15.9998, 18.0014, 2000, 0, 1.08725, 4.4728, 7.99979, 11,  {0, 0.90472, 5.19581, 7.99982, 11, 13, 16, 18, 2000},
221  13.0002, 16, 18, 2000, 0, 0.946462, 4.69554, 7.99994, 11, 13.0001, 16, 18, 2000, 0, 1.13176, 4.57483, 7.99999, 11, 13.0002, 15.9999, 18.0002, 2000, 0, 1.00872, 4.99316, 8, 11, 13, 16, 18, 2000, 0, 1.19891, 5.01355, 8, 11, 13.0003, 16, 18, 2000, 0, 0.5,  {0, 0.7774, 5.15121, 7.99976, 11, 13, 16, 18, 2000},
222  2, 4.5, 5.50003, 6.50028, 8.00004, 8.99989, 2000, 0, 1.16961, 4.59028, 8, 11, 13.0001, 16, 18, 2000, 0, 0.989643, 5.21958, 7.99998, 11, 13, 16,  {0, 1.18414, 5.1952, 8, 11, 13, 16, 17.9999, 2000},
223  17.9999, 2000, 0, 0.952029, 5.19598, 7.99998, 11, 13.0005, 16.0005, 18, 2000, 0, 0.736833, 4.95596, 8, 11, 13, 16, 18, 2000, 0, 1.34007, 3.74275, 8, 11, 13, 16, 18, 2000, 0, 1.47101, 4.31154, 8, 11, 13, 16, 18,  {0, 1.0189, 5.61869, 8, 11, 13.0006, 15.9998, 18.0014, 2000},
224  2000, 0, 1.3754, 4.83141, 8.00002, 11, 13, 16, 18, 2000, 0, 1.47712, 5.79783, 8, 11, 13, 16, 18, 2000, 0, 1.19127, 5.35796, 7.99996, 11, 13,  {0, 1.08725, 4.4728, 7.99979, 11, 13.0002, 16, 18, 2000},
225  16, 18, 2000, 0, 1.25745, 5.98391, 8, 11, 13.0004, 16.0001, 18.0001, 2000, 0, 1.18024, 5.40107, 7.99999, 11, 13, 16, 18.0001, 2000, 0, 0.961883,  {0, 0.946462, 4.69554, 7.99994, 11, 13.0001, 16, 18, 2000},
226  5.10846, 7.99999, 11, 13, 16, 18, 2000, 0, 1.23192, 6.21098, 8, 11, 13.0005, 16, 18.0003, 2000, 0, 1.15846, 5.23573, 7.99995,  {0, 1.13176, 4.57483, 7.99999, 11, 13.0002, 15.9999, 18.0002, 2000},
227  11, 13, 16, 18.0002, 2000, 0, 1.26163, 5.5425, 8.00001, 11, 13.0002, 16.0006, 18, 2000, 0, 1.12754, 5.57064, 7.99999, 11, 13, 16, 18.0002,  {0, 1.00872, 4.99316, 8, 11, 13, 16, 18, 2000},
228  2000, 0, 1.22768, 6.06283, 8, 11, 13.0002, 16, 18, 2000, 0, 1.83569, 5.87584, 8.00006, 11, 13.0005, 16, 18,  {0, 1.19891, 5.01355, 8, 11, 13.0003, 16, 18, 2000},
229  2000, 0, 1.61434, 5.56634, 7, 7.99999, 8.99999, 14.999, 16, 2000, 0, 1.61287, 5.46416, 7.99989, 10, 12, 14.9997, 16, 2000, 0, 1.49053,  {0, 0.5, 2.284, 3.12, 8.795, 6.257, 7.841, 6.1743, 2000},
230  6.21581, 9.00001, 12, 14, 16, 22, 2000, 0, 1.64579, 5.08498, 7.99989, 10, 12, 15, 16, 2000, 0, 1.83474, 6.29746, 9.00001, 12, 14.0001, 16.0001, 22,  {0, 1.16961, 4.59028, 8, 11, 13.0001, 16, 18, 2000},
231  2000, 0, 1.80066, 6.19725, 9, 12, 14, 16, 22, 2000, 0, 1.9025, 5.83736, 8, 10, 12, 14.9999, 16, 2000, 0, 1.90163, 5.62801, 7.99999, 10, 12, 15, 16, 2000, 0, 2.5518,  {0, 0.989643, 5.21958, 7.99998, 11, 13, 16, 17.9999, 2000},
232  5.97325, 9.00012, 12, 15, 18, 22, 2000, 0, 2.53476, 5.75312, 9.00007, 12, 15, 18, 22, 2000, 0, 2.67784, 6.9232, 9.00005, 12, 15, 18, 22, 2000, 0, 2.62769, 7.22552, 9.00003,  {0, 0.952029, 5.19598, 7.99998, 11, 13.0005, 16.0005, 18, 2000},
233  12.0001, 15, 18, 22, 2000, 0, 2.58088, 6.30413, 9.0001, 12, 15, 18, 22, 2000, 0, 2.48219, 7.06085, 9.00005, 12, 15, 18, 22, 2000, 0, 3.23157, 5.20668, 9.00007, 12, 15,  {0, 0.736833, 4.95596, 8, 11, 13, 16, 18, 2000},
234  18, 22, 2000, 0, 3.38244, 6.45172, 9.00006, 12.0001, 15, 18.0001, 22, 2000, 0, 3.14595, 5.29036, 9.00008, 12, 15, 18, 22.0001, 2000, 0, 3.34692, 6.17283, 9.00041, 12,  {0, 1.34007, 3.74275, 8, 11, 13, 16, 18, 2000},
235  15, 18.0001, 22, 2000, 0, 3.16915, 4.25973, 9.00015, 12, 15, 18, 22, 2000, 0, 3.25809, 5.58971, 9.00068, 12, 15, 18,  {0, 1.47101, 4.31154, 8, 11, 13, 16, 18, 2000},
236  22.0001, 2000 } ;  {0, 1.3754, 4.83141, 8.00002, 11, 13, 16, 18, 2000},
237    {0, 1.47712, 5.79783, 8, 11, 13, 16, 18, 2000},
238    {0, 1.19127, 5.35796, 7.99996, 11, 13, 16, 18, 2000},
239    {0, 1.25745, 5.98391, 8, 11, 13.0004, 16.0001, 18.0001, 2000},
240    {0, 1.18024, 5.40107, 7.99999, 11, 13, 16, 18.0001, 2000},
241    {0, 0.961883, 5.10846, 7.99999, 11, 13, 16, 18, 2000},
242    {0, 1.23192, 6.21098, 8, 11, 13.0005, 16, 18.0003, 2000},
243    {0, 1.15846, 5.23573, 7.99995, 11, 13, 16, 18.0002, 2000},
244    {0, 1.26163, 5.5425, 8.00001, 11, 13.0002, 16.0006, 18, 2000},
245    {0, 1.12754, 5.57064, 7.99999, 11, 13, 16, 18.0002, 2000},
246    {0, 1.22768, 6.06283, 8, 11, 13.0002, 16, 18, 2000},
247    {0, 1.83569, 5.87584, 8.00006, 11, 13.0005, 16, 18, 2000},
248    {0, 1.61434, 5.56634, 7, 7.99999, 8.99999, 14.999, 16, 2000},
249    {0, 1.61287, 5.46416, 7.99989, 10, 12, 14.9997, 16, 2000},
250    {0, 1.49053, 6.21581, 9.00001, 12, 14, 16, 22, 2000},
251    {0, 1.64579, 5.08498, 7.99989, 10, 12, 15, 16, 2000},
252    {0, 1.83474, 6.29746, 9.00001, 12, 14.0001, 16.0001, 22, 2000},
253    {0, 1.80066, 6.19725, 9, 12, 14, 16, 22, 2000},
254    {0, 1.9025, 5.83736, 8, 10, 12, 14.9999, 16, 2000},
255    {0, 1.90163, 5.62801, 7.99999, 10, 12, 15, 16, 2000},
256    {0, 2.5518, 5.97325, 9.00012, 12, 15, 18, 22, 2000},
257    {0, 2.53476, 5.75312, 9.00007, 12, 15, 18, 22, 2000},
258    {0, 2.67784, 6.9232, 9.00005, 12, 15, 18, 22, 2000},
259    {0, 2.62769, 7.22552, 9.00003, 12.0001, 15, 18, 22, 2000},
260    {0, 2.58088, 6.30413, 9.0001, 12, 15, 18, 22, 2000},
261    {0, 2.48219, 7.06085, 9.00005, 12, 15, 18, 22, 2000},
262    {0, 3.23157, 5.20668, 9.00007, 12, 15, 18, 22, 2000},
263    {0, 3.38244, 6.45172, 9.00006, 12.0001, 15, 18.0001, 22, 2000},
264    {0, 3.14595, 5.29036, 9.00008, 12, 15, 18, 22.0001, 2000},
265    {0, 3.34692, 6.17283, 9.00041, 12, 15, 18.0001, 22, 2000},
266    {0, 3.16915, 4.25973, 9.00015, 12, 15, 18, 22, 2000},
267    {0, 3.25809, 5.58971, 9.00068, 12, 15, 18, 22.0001, 2000} } ;
268    
269    
270  Float_t A1t[48][9] = {  Float_t A1t[48][9] = {
271  0, -0.148721, -3.39495, -4.31459, -0.929148, 3.54132, -0.781274, 1.31968, 0, 0, 0.300986, -2.80331, -4.23227, 0.298916, 4.10416, -5.18516, 7.03041, 0,  {0, -0.148721, -3.39495, -4.31459, -0.929148, 3.54132, -0.781274, 1.31968, 0},
272  0, -0.590177, -3.12529, -0.44614, 0.620419, 5.19609, 9.88925, 14.9819, 0, 0, -0.173358, -3.98938, -0.616916, 0.405404,  {0, 0.300986, -2.80331, -4.23227, 0.298916, 4.10416, -5.18516, 7.03041, 0},
273  6.25045, 10.5087, 24.7055, 0, 0, -0.32707, -1.1686, -3.46701, -0.284242, 4.09514, -0.561233, -0.166844, 0, 0, 0.0440221, -1.5147, -2.67239,  {0, -0.590177, -3.12529, -0.44614, 0.620419, 5.19609, 9.88925, 14.9819, 0},
274  -1.08848, 5.05632, 3.92546, -0.0525454, 0, 0, -0.331836, -1.25371, -1.59317, 0.654738, 4.41673, 5.99879,  {0, -0.173358, -3.98938, -0.616916, 0.405404, 6.25045, 10.5087, 24.7055, 0},
275  14.9057, 0, 0, 0.00587183, -2.17841, -1.48496, 0.477997, 6.24062, 6.19841, 11.4798, 0, 0, -0.515989, -2.1195, -1.44376, 0.145546, 5.41926,  {0, -0.32707, -1.1686, -3.46701, -0.284242, 4.09514, -0.561233, -0.166844, 0},
276  5.03587, 10.7126, 0, 0, 0, 0, -0.5, 0, 4.35377, 6.97709, 15.0047, 0, 0, -0.554732, -1.6306, -1.54677,  {0, 0.0440221, -1.5147, -2.67239, -1.08848, 5.05632, 3.92546, -0.0525454, 0},
277  0.687092, 3.97612, 4.05449, 3.44324, 0, 0, -0.0314164, -2.83515, -1.29946, 2.31597, 7.15645, 6.95353, 12.8573, 0, 0, -0.218413, -3.04095, -1.50327,  {0, -0.331836, -1.25371, -1.59317, 0.654738, 4.41673, 5.99879, 14.9057, 0},
278  0.291698, 5.27119, 9.06051, 18.4417, 0, 0, 0.410005, -2.45452, -0.851601, 0.206665, 6.44906, 7.53132,  {0, 0.00587183, -2.17841, -1.48496, 0.477997, 6.24062, 6.19841, 11.4798, 0},
279  10.5636, 0, 0, -1.29063, 0.463767, -0.720394, 1.27269, 3.66394, 4.52102, 7.33444, 0, 0, -1.54073, -1.60146, -1.91721, -0.640132, 3.58881, 0.561348,  {0, -0.515989, -2.1195, -1.44376, 0.145546, 5.41926, 5.03587, 10.7126, 0},
280  7.33444, 0, 0, -0.558527, -2.43481, -1.64492, 1.51694, 6.05449, 4.67951, 5.40004, 0, 0, -1.44736, -5.265, -1.28878, -0.238869, 4.13668, 4.58264,  {0, 0, 0.0682, 3.2814, -6.1989, 8.05589, 9.75967, 23.797, 0},
281  3.28758, 0, 0, -0.596315, -3.35555, -2.03624, -0.148223, 6.16332, 4.71164, 15.6531, 0, 0, -0.740826, -4.79843, 0.345734, -0.210722, 6.32702, 9.76698, 19.9151, 0, 0, -0.541817,  {0, -0.554732, -1.6306, -1.54677, 0.687092, 3.97612, 4.05449, 3.44324, 0},
282  -3.30557, -1.76057, -0.216039, 5.79923, 8.00931, 16.4061, 0, 0, -0.0503124, -2.66635, -1.70196, -1.07446, 3.46058, 1.45824,  {0, -0.0314164, -2.83515, -1.29946, 2.31597, 7.15645, 6.95353, 12.8573, 0},
283  -2.21932, 0, 0, -0.495955, -5.78012, -0.174017, 0.675206, 6.30264, 8.30058, 20.3899, 0, 0, -0.315843, -2.8796, -3.04323, -0.681945, 5.49248, 7.42757,  {0, -0.218413, -3.04095, -1.50327, 0.291698, 5.27119, 9.06051, 18.4417, 0},
284  17.1667, 0, 0, -0.643179, -3.5364, -0.245549, 0.694213, 5.79727, 10.2911, 9.61651, 0, 0, -0.315433, -3.56856, -1.25894, 2.05501, 6.85829, 8.74895,  {0, 0.410005, -2.45452, -0.851601, 0.206665, 6.44906, 7.53132, 10.5636, 0},
285  14.9955, 0, 0, -0.478207, -4.82517, 0.688668, 1.40183, 6.78743, 8.02806, 2.65821, 0, 0, -1.63072, -5.05269, -0.582789, 1.22014, 6.80023, 8.8931, 5.15517, 0, 0,  {0, -1.29063, 0.463767, -0.720394, 1.27269, 3.66394, 4.52102, 7.33444, 0},
286  -1.50826, -3.68958, 0.420744, 3.25124, 4.28046, -16.9712, -12, 0, 0, -1.52021, -3.37459, -2.41086, 0.547517, -0.56013, -8.59935, -3, 0, 0, -0.998702, -4.7187, -2.33974,  {0, -1.54073, -1.60146, -1.91721, -0.640132, 3.58881, 0.561348, 7.33444, 0},
287  -0.0974348, 3.10138, 2.3293, -5.71135, 0, 0, -1.66188, -2.39145, -2.55052, 0.29005, -0.16697, -3.97018, -1.5, 0, 0,  {0, -0.558527, -2.43481, -1.64492, 1.51694, 6.05449, 4.67951, 5.40004, 0},
288  -2.04431, -4.95214, -1.51889, 1.92081, 5.92476, 8.94417, -0.172422, 0, 0, -1.94155, -4.95644, -2.47063, 0.0233995, 2.57015, 4.84173,  {0, -1.44736, -5.265, -1.28878, -0.238869, 4.13668, 4.58264, 3.28758, 0},
289  -0.555407, 0, 0, -2.22045, -4.21875, -1.23892, 0.911188, -0.705415, -11.5648, -7, 0, 0, -2.25418, -3.71067,  {0, -0.596315, -3.35555, -2.03624, -0.148223, 6.16332, 4.71164, 15.6531, 0},
290  -1.87307, 0.560423, 0.206679, -4.27293, -3, 0, 0, -3.90179, -5.14354, -4.08454, -3.13545, -3.57868, -5.13198, -1.0019, 0, 0, -3.78789, -4.50313,  {0, -0.740826, -4.79843, 0.345734, -0.210722, 6.32702, 9.76698, 19.9151, 0},
291  -5.24307, -3.24931, -0.319336, -1.407, -3.77821, 0, 0, -4.16337, -7.12861, -2.29639, -0.786276, 2.58494, 4.16162, 7.22747, 0, 0, -4.04189, -7.82707,  {0, -0.541817, -3.30557, -1.76057, -0.216039, 5.79923, 8.00931, 16.4061, 0},
292  -1.34893, -1.05519, 4.33166, 4.87264, 12.3328, 0, 0, -3.85946, -5.71064, -4.43564, -1.53025, 1.42505, -0.0695653, 4.33418, 0, 0, -3.65794, -8.19828,  {0, -0.0503124, -2.66635, -1.70196, -1.07446, 3.46058, 1.45824, -2.21932, 0},
293  -3.32738, -1.25785, -1.13124, -6.79745, -8.37113, 0, 0, -5.571, -2.49596, -2.8623, -2.74219, -1.43215, -0.359863, 0.25062, 0, 0, -6.00932, -5.60393,  {0, -0.495955, -5.78012, -0.174017, 0.675206, 6.30264, 8.30058, 20.3899, 0},
294  -2.33967, -1.53792, 3.67721, 5.49137, 8.34507, 0, 0, -5.36442, -3.19657, -2.9975, -1.73078, 0.0558693, -0.179221, 9.45231, 0, 0, -5.91858, -5.04606, -2.88549, -0.953526, 1.17816, 5.43427, 0.871257, 0,  {0, -0.315843, -2.8796, -3.04323, -0.681945, 5.49248, 7.42757, 17.1667, 0},
295  0, -5.53832, -0.498886, -3.85789, -2.61557, -2.45863, -1.44554, -7.21927, 0, 0, -5.70059, -3.94476, -3.23927, 0.15573, 1.85295, 3.96162, 8.70362, 0 } ;  {0, -0.643179, -3.5364, -0.245549, 0.694213, 5.79727, 10.2911, 9.61651, 0},
296    {0, -0.315433, -3.56856, -1.25894, 2.05501, 6.85829, 8.74895, 14.9955, 0},
297    {0, -0.478207, -4.82517, 0.688668, 1.40183, 6.78743, 8.02806, 2.65821, 0},
298    {0, -1.63072, -5.05269, -0.582789, 1.22014, 6.80023, 8.8931, 5.15517, 0},
299    {0, -1.50826, -3.68958, 0.420744, 3.25124, 4.28046, -16.9712, -12, 0},
300    {0, -1.52021, -3.37459, -2.41086, 0.547517, -0.56013, -8.59935, -3, 0},
301    {0, -0.998702, -4.7187, -2.33974, -0.0974348, 3.10138, 2.3293, -5.71135, 0},
302    {0, -1.66188, -2.39145, -2.55052, 0.29005, -0.16697, -3.97018, -1.5, 0},
303    {0, -2.04431, -4.95214, -1.51889, 1.92081, 5.92476, 8.94417, -0.172422, 0},
304    {0, -1.94155, -4.95644, -2.47063, 0.0233995, 2.57015, 4.84173, -0.555407, 0},
305    {0, -2.22045, -4.21875, -1.23892, 0.911188, -0.705415, -11.5648, -7, 0},
306    {0, -2.25418, -3.71067, -1.87307, 0.560423, 0.206679, -4.27293, -3, 0},
307    {0, -3.90179, -5.14354, -4.08454, -3.13545, -3.57868, -5.13198, -1.0019, 0},
308    {0, -3.78789, -4.50313, -5.24307, -3.24931, -0.319336, -1.407, -3.77821, 0},
309    {0, -4.16337, -7.12861, -2.29639, -0.786276, 2.58494, 4.16162, 7.22747, 0},
310    {0, -4.04189, -7.82707, -1.34893, -1.05519, 4.33166, 4.87264, 12.3328, 0},
311    {0, -3.85946, -5.71064, -4.43564, -1.53025, 1.42505, -0.0695653, 4.33418, 0},
312    {0, -3.65794, -8.19828, -3.32738, -1.25785, -1.13124, -6.79745, -8.37113, 0},
313    {0, -5.571, -2.49596, -2.8623, -2.74219, -1.43215, -0.359863, 0.25062, 0},
314    {0, -6.00932, -5.60393, -2.33967, -1.53792, 3.67721, 5.49137, 8.34507, 0},
315    {0, -5.36442, -3.19657, -2.9975, -1.73078, 0.0558693, -0.179221, 9.45231, 0},
316    {0, -5.91858, -5.04606, -2.88549, -0.953526, 1.17816, 5.43427, 0.871257, 0},
317    {0, -5.53832, -0.498886, -3.85789, -2.61557, -2.45863, -1.44554, -7.21927, 0},
318    {0, -5.70059, -3.94476, -3.23927, 0.15573, 1.85295, 3.96162, 8.70362, 0} };
319    
320    
321  Float_t A2t[48][9] = {  Float_t A2t[48][9] = {
322  0, 0.447567, 2.19777, 4.56362, 2.7416, 2.05411, 10.11, 19.0312, 0, 0, 0.11417, 1.62292, 5.00684, 3,  {0, 0.447567, 2.19777, 4.56362, 2.7416, 2.05411, 10.11, 19.0312, 0},
323  3.00006, 17.3401, 17.8502, 0, 0, 0.613665, 1.84729, 0.717669, 3, 2.53701, 1.23897, 10.2529, 0, 0, 0.318447, 2.30647, 0.936633, 3, 3, 2.95973, 3, 0, 0,  {0, 0.11417, 1.62292, 5.00684, 3, 3.00006, 17.3401, 17.8502, 0},
324  0.398201, 0.701095, 3.91236, 3, 3, 11.5693, 17.9749, 0, 0, 0.202853, 0.806934, 3.11779, 3.57657, 1.59933,  {0, 0.613665, 1.84729, 0.717669, 3, 2.53701, 1.23897, 10.2529, 0},
325  6.71492, 23.6721, 0, 0, 0.378081, 0.60131, 1.91722, 1.97014, 3, 5.08036, 9.64776, 0, 0, 0.185602, 1.13243, 1.95726, 2.25608, 1.31382,  {0, 0.318447, 2.30647, 0.936633, 3, 3, 2.95973, 3, 0},
326  6.06097, 15.9104, 0, 0, 0.519026, 1.16139, 1.92471, 3, 3, 6.24901, 15.0465, 0, 0, 0, 0, 0, 0, 3, 1.24657,  {0, 0.398201, 0.701095, 3.91236, 3, 3, 11.5693, 17.9749, 0},
327  0.76179, 0, 0, 0.584808, 1.01299, 1.55521, 1.3038, 3, 7.23646, 20.977, 0, 0, 0.252569, 1.60163, 1.83587, 0.630466, 0.777058, 6.0142, 15.4738, 0, 0,  {0, 0.202853, 0.806934, 3.11779, 3.57657, 1.59933, 6.71492, 23.6721, 0},
328  0.434331, 1.84922, 1.83168, 3, 3, 3, 6.44375, 0, 0, 0.0330463, 1.50249, 1.15961, 3, 0.810556, 4.20175,  {0, 0.378081, 0.60131, 1.91722, 1.97014, 3, 5.08036, 9.64776, 0},
329  16.0172, 0, 0, 1.15272, -0.461141, 0.6358, 0.566375, 3.20343, 5.26698, 14.6336, 0, 0, 1.24677, 1.12736, 1.76074, 3, 3.77723, 10.7814, 14.6336, 0,  {0, 0.185602, 1.13243, 1.95726, 2.25608, 1.31382, 6.06097, 15.9104, 0},
330  0, 0.551726, 1.59633, 1.18411, 0.119382, 0.843864, 6.67491, 20.4289, 0, 0, 1.17008, 3.53223, 1.7298, 3,  {0, 0.519026, 1.16139, 1.92471, 3, 3, 6.24901, 15.0465, 0},
331  3.51043, 7.10543, 22.3253, 0, 0, 0.612142, 1.96606, 2.64693, 3.25016, 1.25888, 7.04821, 11.7283, 0, 0, 0.69148, 2.84536, 0.249509, 4.29848, 3,  {0, 0, 0, -1.972, 4.7828, -3.1154, -2.11319, -4.7497, 0},
332  3.58229, 9.01681, 0, 0, 0.565678, 1.96366, 2.32387, 3.15843, 1.66386, 3.07223, 7.67847, 0, 0, 0.286252,  {0, 0.584808, 1.01299, 1.55521, 1.3038, 3, 7.23646, 20.977, 0},
333  1.61749, 2.08437, 3.96745, 3.46972, 9.29207, 23.9444, 0, 0, 0.427677, 3.58328, 0.303785, 3, 3, 4.66547, 6.77271, 0, 0, 0.367136, 1.62323,  {0, 0.252569, 1.60163, 1.83587, 0.630466, 0.777058, 6.0142, 15.4738, 0},
334  3.53394, 3.22174, 1.19152, 2.67962, 7.37085, 0, 0, 0.571177, 2.03267, 0.714761, 2.31548, 3, 3, 23.2035, 0,  {0, 0.434331, 1.84922, 1.83168, 3, 3, 3, 6.44375, 0},
335  0, 0.410871, 2.02075, 2.01824, 1.2684, 1.18522, 3.21976, 12.8378, 0, 0, 0.463877, 2.86112, 0.170916, 3, 3, 5.97413, 28.4085, 0, 0, 1.30088,  {0, 0.0330463, 1.50249, 1.15961, 3, 0.810556, 4.20175, 16.0172, 0},
336  3.26557, 2, 3, 3, 4.77584, 22.8794, 0, 0, 1.02941, 2.12558, 0.872765, 2.23727, 4.7981, 24.6338, 24.6338, 0, 0, 1.05783, 1.89525, 2.85289, 3.0898,  {0, 1.15272, -0.461141, 0.6358, 0.566375, 3.20343, 5.26698, 14.6336, 0},
337  7.83407, 17.8466, 20, 0, 0, 0.87851, 2.49044, 1.91387, 2.41541, 3.8418, 9.41288, 24.0375, 0, 0, 1.18188, 1.273, 2.9275, 3.06704, 7.12642, 12.7629, 15,  {0, 1.24677, 1.12736, 1.76074, 3, 3.77723, 10.7814, 14.6336, 0},
338  0, 0, 1.53682, 2.57011, 1.06205, 0.506326, 1.68314, 3.58498, 23.1595, 0, 0, 1.46302, 2.68515, 1.99381, 2.17816, 4.41356, 6.53634,  {0, 0.551726, 1.59633, 1.18411, 0.119382, 0.843864, 6.67491, 20.4289, 0},
339  20.7136, 0, 0, 1.4731, 2.3654, 1.53025, 2.96327, 8.70277, 21.6253, 25, 0, 0, 1.53808, 2.07089, 2.22662, 3.14766, 7.57131, 14.2471, 20, 0, 0,  {0, 1.17008, 3.53223, 1.7298, 3, 3.51043, 7.10543, 22.3253, 0},
340  2.54185, 2.94079, 2.66362, 3.52374, 6.80629, 11.3325, 14.5186, 0, 0, 2.43664, 2.49436, 4.17446, 3.77162,  {0, 0.612142, 1.96606, 2.64693, 3.25016, 1.25888, 7.04821, 11.7283, 0},
341  3.31898, 7.43896, 18.2548, 0, 0, 2.66465, 3.9858, 1.0855, 1.91916, 1.82719, 3.62289, 11.3872, 0, 0, 2.59071, 4.39003, 0.0757547, 3, 0.158868,  {0, 0.69148, 2.84536, 0.249509, 4.29848, 3, 3.58229, 9.01681, 0},
342  3.55454, 5.71387, 0, 0, 2.48014, 3.16071, 3.1975, 1.7259, 1.53532, 6.33812, 11.2325, 0, 0, 2.35236,  {0, 0.565678, 1.96366, 2.32387, 3.15843, 1.66386, 3.07223, 7.67847, 0},
343  4.94998, 1.78836, 1.9115, 4.74233, 13.6973, 21.965, 0, 0, 3.52215, 0.812087, 1.1768, 2.95239, 4.3202, 6.04614, 13.6556, 0, 0, 3.79446, 2.80606,  {0, 0.286252, 1.61749, 2.08437, 3.96745, 3.46972, 9.29207, 23.9444, 0},
344  0.88371, 3, 0.614106, 2.52782, 12.4441, 0, 0, 3.41363, 1.57296, 1.59021, 2.47593, 3.41146, 6.76304, 5.59471, 0, 0, 3.72529, 2.50889, 2, 3, 4.06815, 2.78676,  {0, 0.427677, 3.58328, 0.303785, 3, 3, 4.66547, 6.77271, 0},
345  19.6427, 0, 0, 3.54713, -0.296079, 2.10851, 2.42037, 5.37573, 6.78065, 22.298, 0, 0, 3.61517, 1.96909, 2, 0.249865, 2.46639, 3.42483, 8.1652, 0 } ;  {0, 0.367136, 1.62323, 3.53394, 3.22174, 1.19152, 2.67962, 7.37085, 0},
346    {0, 0.571177, 2.03267, 0.714761, 2.31548, 3, 3, 23.2035, 0},
347    {0, 0.410871, 2.02075, 2.01824, 1.2684, 1.18522, 3.21976, 12.8378, 0},
348    {0, 0.463877, 2.86112, 0.170916, 3, 3, 5.97413, 28.4085, 0},
349    {0, 1.30088, 3.26557, 2, 3, 3, 4.77584, 22.8794, 0},
350    {0, 1.02941, 2.12558, 0.872765, 2.23727, 4.7981, 24.6338, 24.6338, 0},
351    {0, 1.05783, 1.89525, 2.85289, 3.0898, 7.83407, 17.8466, 20, 0},
352    {0, 0.87851, 2.49044, 1.91387, 2.41541, 3.8418, 9.41288, 24.0375, 0},
353    {0, 1.18188, 1.273, 2.9275, 3.06704, 7.12642, 12.7629, 15, 0},
354    {0, 1.53682, 2.57011, 1.06205, 0.506326, 1.68314, 3.58498, 23.1595, 0},
355    {0, 1.46302, 2.68515, 1.99381, 2.17816, 4.41356, 6.53634, 20.7136, 0},
356    {0, 1.4731, 2.3654, 1.53025, 2.96327, 8.70277, 21.6253, 25, 0},
357    {0, 1.53808, 2.07089, 2.22662, 3.14766, 7.57131, 14.2471, 20, 0},
358    {0, 2.54185, 2.94079, 2.66362, 3.52374, 6.80629, 11.3325, 14.5186, 0},
359    {0, 2.43664, 2.49436, 4.17446, 3.77162, 3.31898, 7.43896, 18.2548, 0},
360    {0, 2.66465, 3.9858, 1.0855, 1.91916, 1.82719, 3.62289, 11.3872, 0},
361    {0, 2.59071, 4.39003, 0.0757547, 3, 0.158868, 3.55454, 5.71387, 0},
362    {0, 2.48014, 3.16071, 3.1975, 1.7259, 1.53532, 6.33812, 11.2325, 0},
363    {0, 2.35236, 4.94998, 1.78836, 1.9115, 4.74233, 13.6973, 21.965, 0},
364    {0, 3.52215, 0.812087, 1.1768, 2.95239, 4.3202, 6.04614, 13.6556, 0},
365    {0, 3.79446, 2.80606, 0.88371, 3, 0.614106, 2.52782, 12.4441, 0},
366    {0, 3.41363, 1.57296, 1.59021, 2.47593, 3.41146, 6.76304, 5.59471, 0},
367    {0, 3.72529, 2.50889, 2, 3, 4.06815, 2.78676, 19.6427, 0},
368    {0, 3.54713, -0.296079, 2.10851, 2.42037, 5.37573, 6.78065, 22.298, 0},
369    {0, 3.61517, 1.96909, 2, 0.249865, 2.46639, 3.42483, 8.1652, 0} } ;
370    
371    
372  // S115B failure: 1158700000 // 2006-09-19 21:06:40 UTC  // S115B failure: 1158700000 // 2006-09-19 21:06:40 UTC
373    
374  if (time > 1158700000.) {     // first workaround: just use calibration of PMT S115A  if (time < 1158700000.) {     // first workaround: just use calibration of PMT S115A
375  for ( Int_t jj=0; jj<9; jj++ ){  for ( Int_t jj=0; jj<9; jj++ ){
376  A0t[9][jj] = A0t[8][jj] ;  A0t[9][jj] = A0t[8][jj] ;
377  A1t[9][jj] = A1t[8][jj] ;  A1t[9][jj] = A1t[8][jj] ;
# Line 212  A2t[9][jj] = A2t[8][jj] ; Line 382  A2t[9][jj] = A2t[8][jj] ;
382  //============================================================================  //============================================================================
383    
384  //  2nd-order correction  //  2nd-order correction
385  Float_t corr_a[6][4] = {  0.977261,  0.353729,  -0.83314,  0.452883, 1.27649,  3.53459,  Float_t corr_a[6][4] = {  
386  -5.41948,  2.67854, 2.21926,  4.32797,  -7.24001,  3.77247,  2.4202,  7.99552,  {0.977261,  0.353729,  -0.83314,  0.452883},
387  -12.4371,  6.08982, 2.04984,  13.3375, -19.178,  8.86101,  2.63322,  14.8072,  -20.911,  {1.27649,  3.53459, -5.41948,  2.67854},
388  9.57905 };  {2.21926,  4.32797,  -7.24001,  3.77247},  
389    {2.4202,  7.99552,-12.4371,  6.08982},
390    {2.04984,  13.3375, -19.178,  8.86101},  
391    {2.63322,  14.8072,  -20.911,9.57905} };
392    
393  //---------------------------------------------------------------------  //---------------------------------------------------------------------
394    
# Line 223  Float_t xv[6],yv[6]; Line 396  Float_t xv[6],yv[6];
396  Int_t  iz;  Int_t  iz;
397  Float_t x1[9],y1[9];  Float_t x1[9],y1[9];
398  Int_t n1 = 9;  Int_t n1 = 9;
399  Float_t  Layercharge[6] = {1000., 1000., 1000., 1000., 1000., 1000. };  
400    Float_t  Layercharge[6] = {1005., 1005., 1005., 1005., 1005., 1005. };
401    
402  Int_t  Layerinfo[6] = {0, 0, 0, 0, 0, 0 };  Int_t  Layerinfo[6] = {0, 0, 0, 0, 0, 0 };
403    
404    //Float_t adc[48],adc_c[48],PMTcharge_arr[48];
405    Float_t adc[48],PMTcharge_arr[48];
406    
407  //------------------------------------------------------------------  //------------------------------------------------------------------
408    
409  PamTrack *track = L2->GetTrack(0);  PamTrack *track = L2->GetTrack(0);
410    
411  Float_t beta_mean = fabs(track->GetToFTrack()->beta[12]);  Float_t beta_mean = fabs(track->GetToFTrack()->beta[12]);
 Float_t def = track->GetTrkTrack()->al[4];  
 Float_t rig = 1./def;  
412    
413  Int_t ncount=0;  // New!! If "beta_in" != 100. then overwrite beta_mean with beta_in
414  Float_t charge_chi=1000.;  if (beta_in != 100.) beta_mean=beta_in;
415    
416  if ((beta_mean > 0.05)  && (beta_mean < 1.5)) {  //Float_t def = track->GetTrkTrack()->al[4];
417    //Float_t rig = 1./def;
418    
419    Int_t ncount=0;
420    Float_t charge_chi=1000.;
421    
422  //-------------------------------------------------------------  //-------------------------------------------------------------
423  //------------------  ToF Charge ------------------------------  //------------------  ToF Charge ------------------------------
# Line 248  if ((beta_mean > 0.05)  && (beta_mean < Line 426  if ((beta_mean > 0.05)  && (beta_mean <
426  // fill adc and tdc  // fill adc and tdc
427    
428     Int_t ich,jj,kk;     Int_t ich,jj,kk;
    Float_t adc[48],adc_c[48],PMTcharge_arr[48];  
429    
430     for (ich=0; ich<48; ich++)   adc[ich]   = 4095.;     for (ich=0; ich<48; ich++)   adc[ich]   = 4095.;
431     for (ich=0; ich<48; ich++)   adc_c[ich] = 1000.;     //   for (ich=0; ich<48; ich++)   adc_c[ich] = 1000.;
432     for (ich=0; ich<48; ich++)   PMTcharge_arr[ich] = 1000.;     for (ich=0; ich<48; ich++)   PMTcharge_arr[ich] = 1000.;
433    
434    
435    
436    if ((beta_mean < 0.05)  || (beta_mean > 2.0)) {
437      for (Int_t jj=0; jj<48;jj++) charge_PMT_trk[jj] = 1001.;
438      for (Int_t jj=0; jj<6;jj++) charge_layer_trk[jj] = 1001.;
439      for (Int_t jj=0; jj<6;jj++) charge_layer_trk_raw[jj] = 1001.;
440      for (Int_t jj=0; jj<6;jj++) layerinfo_trk[jj] = 1001;
441      charge_trk = 1001.;
442      ncount_trk = 0;
443                                                  }
444    
445    
446    if ((beta_mean > 0.05)  && (beta_mean < 2.0)) {
447    
448     Float_t betahelp =   pow(beta_mean, 1.2);     Float_t betahelp =   pow(beta_mean, 1.2);
449    
450  //=======================================================================  //=======================================================================
# Line 271  if ((beta_mean > 0.05)  && (beta_mean < Line 462  if ((beta_mean > 0.05)  && (beta_mean <
462            Float_t dEdx = track->GetToFTrack()->dedx[ipmt];            Float_t dEdx = track->GetToFTrack()->dedx[ipmt];
463            ym = dEdx*betahelp;            ym = dEdx*betahelp;
464            Int_t pmtadc = track->GetToFTrack()->pmtadc[ipmt];            Int_t pmtadc = track->GetToFTrack()->pmtadc[ipmt];
465            Int_t adcflag = track->GetToFTrack()->adcflag[ipmt];            //          Int_t adcflag = track->GetToFTrack()->adcflag[ipmt];
466            L2->GetToFLevel2()->GetPMTIndex(pmtadc,jj,kk);            L2->GetToFLevel2()->GetPMTIndex(pmtadc,jj,kk);
467            if (adcflag==0) adc_c[pmtadc] = dEdx;            //          if (adcflag==0) adc_c[pmtadc] = dEdx;
468            if (adc[pmtadc] > PMTsat[pmtadc]) adc_c[pmtadc] = 1000.;  
469    
470            cout<<pmtadc<<" "<<adc[pmtadc]<<" "<<dEdx<<" "<<adc_c[pmtadc]<<endl;            //         if (adc[pmtadc] == 4095) adc_c[pmtadc] = 0.;
471             if (adc[pmtadc] == 4095) PMTcharge_arr[pmtadc] = 0.;
472    
473             //         if ((adc[pmtadc]>PMTsat[pmtadc]) && (adc[pmtadc]<4095)) adc_c[pmtadc] = 1000.;
474    
475           if (adc[pmtadc] < PMTsat[pmtadc]) {           if (adc[pmtadc] < PMTsat[pmtadc]) {
476  //----------------------------------------------------------------------------------------  //----------------------------------------------------------------------------------------
477  if ((pmtadc!=1) && (pmtadc!=9) || (pmtadc!=28) || (pmtadc!=29) || (pmtadc!=34)) {  if ((pmtadc!=1) && (pmtadc!=9) && (pmtadc!=28) && (pmtadc!=29) && (pmtadc!=34)) {
478    
479      for ( Int_t jj=0; jj<9; jj++ ){      for ( Int_t jj=0; jj<9; jj++ ){
480      x1[jj] = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;      x1[jj] = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;
# Line 291  if ((pmtadc!=1) && (pmtadc!=9) || (pmtad Line 484  if ((pmtadc!=1) && (pmtadc!=9) || (pmtad
484      TGraph *gr2 = new TGraph(n1,x1,y1);      TGraph *gr2 = new TGraph(n1,x1,y1);
485      TSpline3 *spl2 = new TSpline3("grs",gr2);    // use a cubic spline      TSpline3 *spl2 = new TSpline3("grs",gr2);    // use a cubic spline
486      chelp = spl2->Eval(ym);      chelp = spl2->Eval(ym);
487        if (chelp<0.) chelp=0.0001;  //WM new
488      charge = TMath::Sqrt(chelp);      charge = TMath::Sqrt(chelp);
489      gr2->Delete();      gr2->Delete();
490      spl2->Delete();      spl2->Delete();
491      PMTcharge_arr[pmtadc] = charge;      PMTcharge_arr[pmtadc] = charge;
492                                                                           } // pmtadc != ...                                                                           } // pmtadc != ...
493    
494  //----------------------------------------------------------------------------------------  //----------------------------------------------------------------------------------------
495    
496  if ((pmtadc==1) || (pmtadc==9) || (pmtadc==28) || (pmtadc==29) || (pmtadc==34)) {  if ((pmtadc==1) || (pmtadc==9) || (pmtadc==28) || (pmtadc==29) || (pmtadc==34)) {
497           for ( Int_t jj=0; jj<8; jj++ ){           for ( Int_t jj=0; jj<8; jj++ ){
498           yl = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;           yl = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;
# Line 305  if ((pmtadc==1) || (pmtadc==9) || (pmtad Line 501  if ((pmtadc==1) || (pmtadc==9) || (pmtad
501           m = (C0t[pmtadc][jj+1]*C0t[pmtadc][jj+1] - C0t[pmtadc][jj]*C0t[pmtadc][jj]) / (yh - yl);           m = (C0t[pmtadc][jj+1]*C0t[pmtadc][jj+1] - C0t[pmtadc][jj]*C0t[pmtadc][jj]) / (yh - yl);
502           b = (C0t[pmtadc][jj]*C0t[pmtadc][jj]) - m*yl;           b = (C0t[pmtadc][jj]*C0t[pmtadc][jj]) - m*yl;
503           chelp = m*ym + b;           chelp = m*ym + b;
504             if (chelp<0.) chelp=0.0001;  //WM new
505           charge= TMath::Sqrt(chelp);           charge= TMath::Sqrt(chelp);
506           PMTcharge_arr[pmtadc] = charge;           PMTcharge_arr[pmtadc] = charge;
507                               }                               }
# Line 312  if ((pmtadc==1) || (pmtadc==9) || (pmtad Line 509  if ((pmtadc==1) || (pmtadc==9) || (pmtad
509                                                                            } // if pmtadc ==....                                                                            } // if pmtadc ==....
510  //----------------------------------------------------------------------------------------  //----------------------------------------------------------------------------------------
511                                         } // adc < sat                                         } // adc < sat
512    
513               }   // ipmt...               }   // ipmt...
514    
515  //====================================================================  //====================================================================
# Line 339  Int_t ihelp_a[6] = {0,16,28,32,36,42}; Line 537  Int_t ihelp_a[6] = {0,16,28,32,36,42};
537    
538  for (Int_t ilay=0; ilay<6; ilay ++) {  for (Int_t ilay=0; ilay<6; ilay ++) {
539  Int_t jj = PaddleIdOfTrack[ilay] ;  Int_t jj = PaddleIdOfTrack[ilay] ;
540  Float_t xhelp = 1000.;  //Float_t xhelp = 1000.;
541    Float_t xhelp = 1005.;
542    
543  if (jj == -1) Layerinfo[ilay] = -1;  if (jj == -1) Layerinfo[ilay] = -1;
544    
545  if (jj != -1) {  if (jj != -1) {
546  Int_t ih = ihelp_a[ilay] + 2*jj;  Int_t ih = ihelp_a[ilay] + 2*jj;
547    
548    // New WM
549    Int_t igood1=0;
550    Int_t igood2=0;
551    if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih] > 0.)) igood1=1;
552    if ((PMTcharge_arr[ih+1] < 1000.) && (PMTcharge_arr[ih+1] > 0.)) igood2=1;
553    
554    if ((PMTcharge_arr[ih]==0.) && (PMTcharge_arr[ih+1]==0.))  xhelp = 0.;
555    if ((igood1==1)&&(igood2==1)) xhelp = 0.5*(PMTcharge_arr[ih]+PMTcharge_arr[ih+1]) ;
556    if ((igood1==1)&&(igood2==0)) xhelp = PMTcharge_arr[ih];
557    if ((igood2==1)&&(igood1==0)) xhelp = PMTcharge_arr[ih+1];
558    
559    
560    /*
561  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1] < 1000.)) xhelp = 0.5*(PMTcharge_arr[ih]+PMTcharge_arr[ih+1]) ;  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1] < 1000.)) xhelp = 0.5*(PMTcharge_arr[ih]+PMTcharge_arr[ih+1]) ;
562  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1]==1000.))  xhelp = PMTcharge_arr[ih] ;  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1]==1000.))  xhelp = PMTcharge_arr[ih] ;
563  if ((PMTcharge_arr[ih]==1000.) && (PMTcharge_arr[ih+1] < 1000.))  xhelp = PMTcharge_arr[ih+1] ;  if ((PMTcharge_arr[ih]==1000.) && (PMTcharge_arr[ih+1] < 1000.))  xhelp = PMTcharge_arr[ih+1] ;
564    */
565     if (adc[ih] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;     if (adc[ih] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;
566     if (adc[ih+1] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;     if (adc[ih+1] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;
567     if ((adc[ih] > PMTsat[ih]) && (adc[ih] < 4095)) Layerinfo[ilay] = Layerinfo[ilay] + 10;     if ((adc[ih] > PMTsat[ih]) && (adc[ih] < 4095)) Layerinfo[ilay] = Layerinfo[ilay] + 10;
568     if ((adc[ih+1] > PMTsat[ih+1]) && (adc[ih+1] < 4095)) Layerinfo[ilay] = Layerinfo[ilay] + 10;     if ((adc[ih+1] > PMTsat[ih+1]) && (adc[ih+1] < 4095)) Layerinfo[ilay] = Layerinfo[ilay] + 10;
 //   cout<<ilay<<" "<<jj<<" "<<Layerinfo[ilay]<<endl;  
   
569         }         }
570  Layercharge[ilay] = xhelp;  Layercharge[ilay] = xhelp;
571                                      } // ilay ...                                      } // ilay ...
572    
573    
574  //cout<<"Trk : ";  
575  //for (Int_t ilay=0; ilay<6; ilay ++) cout<<Layercharge[ilay]<<" ";  //==========================================================================
576    //============= Layercharge without 2nd-order correction   =================
577    //==========================================================================
578    
579      for (Int_t jj=0; jj<6;jj++) charge_layer_trk_raw[jj] = Layercharge[jj];
580    
581  //==========================================================================  //==========================================================================
582  //=========================   2nd-order correction   =======================  //=========================   2nd-order correction   =======================
# Line 381  Float_t c_corr = corr[0]+corr[1]*xb+corr Line 596  Float_t c_corr = corr[0]+corr[1]*xb+corr
596  if ((ic>0)&&(ic<=5)) c_corr = c_corr/(1.*ic) ;  if ((ic>0)&&(ic<=5)) c_corr = c_corr/(1.*ic) ;
597  if (ic>5) c_corr = c_corr/6. ;  if (ic>5) c_corr = c_corr/6. ;
598    
599    //cout<<"beta "<<xb<<" layer "<<ii<<" ic "<<ic<<" => "<<c_corr<<endl;
600    //cout<<xb<<"  "<<ic<<"  "<<c_corr<<endl;
601    
602  Layercharge[ii] = Layercharge[ii]/c_corr;  Layercharge[ii] = Layercharge[ii]/c_corr;
603    
604                              }                              }
# Line 388  Layercharge[ii] = Layercharge[ii]/c_corr Line 606  Layercharge[ii] = Layercharge[ii]/c_corr
606  //==========================================================================  //==========================================================================
607  //==========================================================================  //==========================================================================
608    
609    
610  Int_t  icount=0;  Int_t  icount=0;
611  Float_t charge_mean = 0.;  Float_t charge_mean = 0.;
612  for (Int_t ii=0; ii<6;  ii++) {  for (Int_t ii=0; ii<6;  ii++) {
# Line 461  if (icount>0) { Line 680  if (icount>0) {
680  //  cout<<" => "<<icount<<" "<<charge_chi<<endl;  //  cout<<" => "<<icount<<" "<<charge_chi<<endl;
681    
682  //=============================================================  //=============================================================
683    // changed 30-01-2009 WM
684    
685      for (Int_t jj=0; jj<48;jj++) charge_PMT_trk[jj] = PMTcharge_arr[jj];
 } // 0.05 < beta < 1.5  
   
686    for (Int_t jj=0; jj<6;jj++) charge_layer_trk[jj] = Layercharge[jj];    for (Int_t jj=0; jj<6;jj++) charge_layer_trk[jj] = Layercharge[jj];
687    for (Int_t jj=0; jj<6;jj++) layerinfo_trk[jj] = Layerinfo[jj];    for (Int_t jj=0; jj<6;jj++) layerinfo_trk[jj] = Layerinfo[jj];
688    charge_trk = charge_chi;    charge_trk = charge_chi;
689    ncount_trk = ncount;    ncount_trk = ncount;
690    
691    } // 0.05 < beta < 2.0
692    
693  } // if ntrk == 1  } // if ntrk == 1
694    
695  //================================================================  //================================================================
# Line 482  if (icount>0) { Line 702  if (icount>0) {
702  //  if(!track)return;  //  if(!track)return;
703    if(track) {    if(track) {
704    
705    /*
706  Float_t  PMTsat[48] = {  Float_t  PMTsat[48] = {
707  3162.14, 3165.48, 3153.85, 3085.73, 3089.65, 3107.64, 3097.52, 3078.37, 3130.05, 3087.07, 3112.22,  3162.14, 3165.48, 3153.85, 3085.73, 3089.65, 3107.64, 3097.52, 3078.37, 3130.05, 3087.07, 3112.22,
708  3102.92, 3080.58, 3092.55, 3087.94, 3125.03, 3094.09, 3143.16,  3102.92, 3080.58, 3092.55, 3087.94, 3125.03, 3094.09, 3143.16,
# Line 489  Float_t  PMTsat[48] = { Line 710  Float_t  PMTsat[48] = {
710  3097.99, 3033.84, 3134.98, 3081.37, 3111.04, 3066.77, 3108.17,  3097.99, 3033.84, 3134.98, 3081.37, 3111.04, 3066.77, 3108.17,
711  3133, 3111.06, 3052.52, 3140.66, 3106.33, 3094.85, 3150.85, 3118.8, 3096.24, 3118.47,3111.36, 3117.11  3133, 3111.06, 3052.52, 3140.66, 3106.33, 3094.85, 3150.85, 3118.8, 3096.24, 3118.47,3111.36, 3117.11
712  };  };
713    */
714    
715  Float_t C0t[48][9] = {  // new values from Napoli dec 2008
716  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  Float_t  PMTsat[48] = {
717  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  3176.35,3178.19,3167.38,3099.73,3117.00,3126.29,3111.44,3092.27,
718  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  3146.48,3094.41,3132.13,3115.37,3099.32,3110.97,3111.80,3143.14,
719  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  3106.72,3153.44,3136.00,3188.96,3104.73,3140.45,3073.18,3106.62,
720  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  3112.48,3146.92,3127.24,3136.52,3109.59,3112.89,3045.15,3147.26,
721  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  3095.92,3121.05,3083.25,3123.62,3150.92,3125.30,3067.60,3160.18,
722  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  3119.36,3108.92,3164.77,3133.64,3111.47,3131.98,3128.87,3135.56 };
723  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
724  0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  for (Int_t i=0; i<48;i++) PMTsat[i] = PMTsat[i] - 5.;  // safety margin
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92,  
 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92, 0, 1, 2, 3, 4, 5, 6, 8, 92 };  
725    
726    // calibration file "charge_fits_new_std_2.dat"
727    
728    Float_t C0t[48][9] = {
729    {0, 1, 2, 3, 4, 5, 6, 8, 92},
730    {0, 1, 2, 3, 4, 5, 6, 8, 92},
731    {0, 1, 2, 3, 4, 5, 6, 8, 92},
732    {0, 1, 2, 3, 4, 5, 6, 8, 92},
733    {0, 1, 2, 3, 4, 5, 6, 8, 92},
734    {0, 1, 2, 3, 4, 5, 6, 8, 92},
735    {0, 1, 2, 3, 4, 5, 6, 8, 92},
736    {0, 1, 2, 3, 4, 5, 6, 8, 92},
737    {0, 1, 2, 3, 4, 5, 6, 8, 92},
738    {0, 1, 2, 3, 4, 5, 6, 8, 92},
739    {0, 1, 2, 3, 4, 5, 6, 8, 92},
740    {0, 1, 2, 3, 4, 5, 6, 8, 92},
741    {0, 1, 2, 3, 4, 5, 6, 8, 92},
742    {0, 1, 2, 3, 4, 5, 6, 8, 92},
743    {0, 1, 2, 3, 4, 5, 6, 8, 92},
744    {0, 1, 2, 3, 4, 5, 6, 8, 92},
745    {0, 1, 2, 3, 4, 5, 6, 8, 92},
746    {0, 1, 2, 3, 4, 5, 6, 8, 92},
747    {0, 1, 2, 3, 4, 5, 6, 8, 92},
748    {0, 1, 2, 3, 4, 5, 6, 8, 92},
749    {0, 1, 2, 3, 4, 5, 6, 8, 92},
750    {0, 1, 2, 3, 4, 5, 6, 8, 92},
751    {0, 1, 2, 3, 4, 5, 6, 8, 92},
752    {0, 1, 2, 3, 4, 5, 6, 8, 92},
753    {0, 1, 2, 3, 4, 5, 6, 8, 92},
754    {0, 1, 2, 3, 4, 5, 6, 8, 92},
755    {0, 1, 2, 3, 4, 5, 6, 8, 92},
756    {0, 1, 2, 3, 4, 5, 6, 8, 92},
757    {0, 1, 2, 3, 4, 5, 6, 8, 92},
758    {0, 1, 2, 3, 4, 5, 6, 8, 92},
759    {0, 1, 2, 3, 4, 5, 6, 8, 92},
760    {0, 1, 2, 3, 4, 5, 6, 8, 92},
761    {0, 1, 2, 3, 4, 5, 6, 8, 92},
762    {0, 1, 2, 3, 4, 5, 6, 8, 92},
763    {0, 1, 2, 3, 4, 5, 6, 8, 92},
764    {0, 1, 2, 3, 4, 5, 6, 8, 92},
765    {0, 1, 2, 3, 4, 5, 6, 8, 92},
766    {0, 1, 2, 3, 4, 5, 6, 8, 92},
767    {0, 1, 2, 3, 4, 5, 6, 8, 92},
768    {0, 1, 2, 3, 4, 5, 6, 8, 92},
769    {0, 1, 2, 3, 4, 5, 6, 8, 92},
770    {0, 1, 2, 3, 4, 5, 6, 8, 92},
771    {0, 1, 2, 3, 4, 5, 6, 8, 92},
772    {0, 1, 2, 3, 4, 5, 6, 8, 92},
773    {0, 1, 2, 3, 4, 5, 6, 8, 92},
774    {0, 1, 2, 3, 4, 5, 6, 8, 92},
775    {0, 1, 2, 3, 4, 5, 6, 8, 92},
776    {0, 1, 2, 3, 4, 5, 6, 8, 92} } ;
777    
778  Float_t A0t[48][9] = {  Float_t A0t[48][9] = {
779  0, 0.707632, 5.09223, 7.99994, 11, 13, 16, 18, 2000, 0, 0.636707, 6.37524, 8, 11, 13.0002,  {0, 0.707632, 5.09223, 7.99994, 11, 13, 16, 18, 2000},
780  16.0001, 18, 2000, 0, 0.952117, 6.04188, 7.99999, 11, 13, 16, 18, 2000, 0, 0.880805, 5.80883,  {0, 0.636707, 6.37524, 8, 11, 13.0002, 16.0001, 18, 2000},
781  8.00003, 11.0001, 13.0005, 16.0011, 18.0027, 2000, 0, 0.834937, 5.12617, 8, 11, 13, 16, 17.9998,  {0, 0.952117, 6.04188, 7.99999, 11, 13, 16, 18, 2000},
782  2000, 0, 0.772954, 5.17221, 8, 11, 13, 16, 18.0006, 2000, 0, 0.911496, 5.04755, 8, 11, 13, 16,  {0, 0.880805, 5.80883, 8.00003, 11.0001, 13.0005, 16.0011, 18.0027, 2000},
783  18, 2000, 0, 0.86523, 5.55215, 8, 11, 13, 16, 17.9999, 2000, 0, 1.06061, 5.49757, 12, 15, 20,  {0, 0.834937, 5.12617, 8, 11, 13, 16, 17.9998, 2000},
784  25, 25, 2000, 0, 0.5, 1.8, 3, 3.8, 6.49999, 7.99996, 8.99998, 2000, 0, 1.06974, 4.86153,  {0, 0.772954, 5.17221, 8, 11, 13, 16, 18.0006, 2000},
785  7.99999, 11, 13, 16, 18, 2000, 0, 1.0465, 6.00778, 8, 11, 13, 16, 17.9999, 2000, 0, 1.18132,  {0, 0.911496, 5.04755, 8, 11, 13, 16, 18, 2000},
786  5.48741, 8, 11, 13, 16, 17.9999, 2000, 0, 1.10823, 5.43611, 8, 11, 13, 16, 18.0001, 2000, 0,  {0, 0.86523, 5.55215, 8, 11, 13, 16, 17.9999, 2000},
787  1.19621, 5.27647, 7.99994, 11, 13, 16, 18, 2000, 0, 1.72505, 5.14873, 8.00006, 11, 13, 16,  {0, 1.06061, 5.49757, 12, 15, 20, 25, 25, 2000},
788  17.9999, 2000, 0, 1.48515, 6.07123, 8.00006, 11, 13.0003, 16, 17.9999, 2000, 0, 1.17628,  {0, 0.5, 1.8, 3, 3.8, 6.49999, 7.99996, 8.99998, 2000},
789  6.63392, 8.00011, 11, 13, 16, 17.9999, 2000, 0, 1.11301, 5.94317, 7.99999, 11, 13, 16, 18, 2000,  {0, 1.06974, 4.86153, 7.99999, 11, 13, 16, 18, 2000},
790  0, 1.04361, 6.40789, 8.00002, 11.0002, 13.0015, 16, 17.9996, 2000, 0, 1.12658, 5.69828, 8, 11,  {0, 1.0465, 6.00778, 8, 11, 13, 16, 17.9999, 2000},
791  13, 16, 18.0001, 2000, 0, 0.840188, 5.44945, 8.00005, 11, 13, 16, 18, 2000, 0, 1.16985, 6.21385,  {0, 1.18132, 5.48741, 8, 11, 13, 16, 17.9999, 2000},
792  8.00012, 11, 13.0002, 16, 17.9999, 2000, 0, 0.977696, 5.70252, 8.00004, 11, 13, 16, 17.9999,  {0, 1.10823, 5.43611, 8, 11, 13, 16, 18.0001, 2000},
793  2000, 0, 1.26298, 6.03137, 8.00003, 11, 13, 16.0009, 17.9998, 2000, 0, 0.988707, 5.98453, 8, 11,  {0, 1.19621, 5.27647, 7.99994, 11, 13, 16, 18, 2000},
794  13, 16, 18.0001, 2000, 0, 1.22109, 6.76385, 8.00002, 11, 13.0005, 16.0001, 18.0006, 2000, 0,  {0, 1.72505, 5.14873, 8.00006, 11, 13, 16, 17.9999, 2000},
795  1.65541, 6.01998, 8.00006, 11.0057, 13, 16, 18, 2000, 0, 1.59779, 6.00152, 7.00005, 7.99997,  {0, 1.48515, 6.07123, 8.00006, 11, 13.0003, 16, 17.9999, 2000},
796  8.99997, 14.9991, 18, 2000, 0, 1.6515, 5.95297, 7.99999, 10, 12, 14.9995, 18, 2000, 0, 1.70339,  {0, 1.17628, 6.63392, 8.00011, 11, 13, 16, 17.9999, 2000},
797  6.43684, 9, 12, 14, 16, 21.9999, 2000, 0, 1.64867, 5.6503, 8, 10, 12, 14.9999, 18, 2000, 0,  {0, 1.11301, 5.94317, 7.99999, 11, 13, 16, 18, 2000},
798  1.83955, 6.64378, 9, 12, 14, 16, 22, 2000, 0, 1.71975, 6.42585, 9, 12, 14, 16, 22, 2000, 0,  {0, 1.04361, 6.40789, 8.00002, 11.0002, 13.0015, 16, 17.9996, 2000},
799  1.88735, 6.12987, 8, 10, 12, 15.0001, 18, 2000, 0, 1.86719, 5.94227, 8, 10, 12, 14.9999, 20,  {0, 1.12658, 5.69828, 8, 11, 13, 16, 18.0001, 2000},
800  2000, 0, 2.55127, 5.83621, 8.99997, 12, 15, 17.9999, 21.9998, 2000, 0, 2.59328, 5.90275,  {0, 0.840188, 5.44945, 8.00005, 11, 13, 16, 18, 2000},
801  8.99999, 12, 15, 18, 22, 2000, 0, 2.63523, 6.56428, 9.00004, 12, 15.0003, 18.001, 22.0029, 2000,  {0, 1.16985, 6.21385, 8.00012, 11, 13.0002, 16, 17.9999, 2000},
802  0, 2.63114, 6.77412, 8.99995, 11.9998, 14.9997, 17.9996, 21.9998, 2000, 0, 2.48986, 6.43372,  {0, 0.977696, 5.70252, 8.00004, 11, 13, 16, 17.9999, 2000},
803  8.99996, 11.9998, 14.9995, 17.9997, 21.9995, 2000, 0, 2.43724, 6.51911, 9.00012, 12, 15, 18,  {0, 1.26298, 6.03137, 8.00003, 11, 13, 16.0009, 17.9998, 2000},
804  21.9999, 2000, 0, 3.21403, 5.7, 9, 12, 15, 18, 22, 2000, 0, 3.3517, 6.30461, 8.99997, 12, 15,  {0, 0.988707, 5.98453, 8, 11, 13, 16, 18.0001, 2000},
805  18, 22, 2000, 0, 3.0843, 5.90189, 8.99993, 12, 15, 18, 22, 2000, 0, 3.35806, 6.20792, 8.99998,  {0, 1.22109, 6.76385, 8.00002, 11, 13.0005, 16.0001, 18.0006, 2000},
806  12.0001, 15, 18, 22, 2000, 0, 3.13525, 5.60432, 8.99997, 12, 15.0001, 18, 22, 2000, 0, 3.26271,  {0, 1.65541, 6.01998, 8.00006, 11.0057, 13, 16, 18, 2000},
807  6.38934, 9, 12, 15, 18, 22.0001, 2000 };  {0, 1.59779, 6.00152, 7.00005, 7.99997, 8.99997, 14.9991, 18, 2000},
808    {0, 1.6515, 5.95297, 7.99999, 10, 12, 14.9995, 18, 2000},
809    {0, 1.70339, 6.43684, 9, 12, 14, 16, 21.9999, 2000},
810    {0, 1.64867, 5.6503, 8, 10, 12, 14.9999, 18, 2000},
811    {0, 1.83955, 6.64378, 9, 12, 14, 16, 22, 2000},
812    {0, 1.71975, 6.42585, 9, 12, 14, 16, 22, 2000},
813    {0, 1.88735, 6.12987, 8, 10, 12, 15.0001, 18, 2000},
814    {0, 1.86719, 5.94227, 8, 10, 12, 14.9999, 20,2000},
815    {0, 2.55127, 5.83621, 8.99997, 12, 15, 17.9999, 21.9998, 2000},
816    {0, 2.59328, 5.90275, 8.99999, 12, 15, 18, 22, 2000},
817    {0, 2.63523, 6.56428, 9.00004, 12, 15.0003, 18.001, 22.0029, 2000},
818    {0, 2.63114, 6.77412, 8.99995, 11.9998, 14.9997, 17.9996, 21.9998, 2000},
819    {0, 2.48986, 6.43372, 8.99996, 11.9998, 14.9995, 17.9997, 21.9995, 2000},
820    {0, 2.43724, 6.51911, 9.00012, 12, 15, 18, 21.9999, 2000},
821    {0, 3.21403, 5.7, 9, 12, 15, 18, 22, 2000},
822    {0, 3.3517, 6.30461, 8.99997, 12, 15, 18, 22, 2000},
823    {0, 3.0843, 5.90189, 8.99993, 12, 15, 18, 22, 2000},
824    {0, 3.35806, 6.20792, 8.99998, 12.0001, 15, 18, 22, 2000},
825    {0, 3.13525, 5.60432, 8.99997, 12, 15.0001, 18, 22, 2000},
826    {0, 3.26271, 6.38934, 9, 12, 15, 18, 22.0001, 2000} };
827    
828    
829  Float_t A1t[48][9] = {  Float_t A1t[48][9] = {
830  0, 0.182202, -3.48762, -4.67241, -5.61872, 2.35336, -2.4112, -0.7861, 0, 0, 0.528581, -6.33244,  { 0, 0.182202, -3.48762, -4.67241, -5.61872, 2.35336, -2.4112, -0.7861, 0 },
831  0.176685, -3.3272, 5.47434, 7.62771, 18.9223, 0, 0, -0.148985, -5.31035, -3.1044, -1.84685,  { 0, 0.528581, -6.33244, 0.176685, -3.3272, 5.47434, 7.62771, 18.9223, 0 },
832  -0.678725, -0.00713058, 11.2127, 0, 0, 0.01113, -4.6759, -0.669811, 1.69435, 7.44019, 12.2231,  { 0, -0.148985, -5.31035, -3.1044, -1.84685, -0.678725, -0.00713058, 11.2127, 0 },
833  26.9653, 0, 0, 0.0567585, -3.05564, -2.57264, -0.0868904, 4.88938, 2.64699, -10, 0, 0, 0.331112,  { 0, 0.01113, -4.6759, -0.669811, 1.69435, 7.44019, 12.2231, 26.9653, 0 },
834  -3.06987, -0.451796, -0.660912, 4.49088, 6.43095, 16.7904, 0, 0, 0.0779621, -2.64271, -2.29896,  { 0, 0.0567585, -3.05564, -2.57264, -0.0868904, 4.88938, 2.64699, -10, 0 },
835  -1.95824, 1.8888, 1.02257, 10.5746, 0, 0, 0.257346, -3.93191, 0.564894, 2.04068, 4.12823,  { 0, 0.331112, -3.06987, -0.451796, -0.660912, 4.49088, 6.43095, 16.7904, 0 },
836  5.87416, 16.2268, 0, 0, -0.332593, -3.65149, 0, 10, 20, 30, 40, 0, 0, 0, 0, -0.5, 0, -6.80247,  { 0, 0.0779621, -2.64271, -2.29896, -1.95824, 1.8888, 1.02257, 10.5746, 0 },
837  -9.43463, -8.44329, 0, 0, -0.25099, -2.53532, -2.43846, -2.94008, -1.01258, -1.10502, 5.16068,  { 0, 0.257346, -3.93191, 0.564894, 2.04068, 4.12823, 5.87416, 16.2268, 0 },
838  0, 0, -0.101144, -4.98664, -0.369916, 2.2648, 4.2727, 3.1653, 19.8617, 0, 0, -0.5074, -3.98429,  { 0, -0.332593, -3.65149, 0, 10, 20, 30, 40, 0 },
839  -0.306633, 0.562595, 5.05787, 4.70127, 14.2399, 0, 0, -0.326603, -3.83632, -1.75409, -1.86815,  { 0, 0, 0, -0.5, 0, -6.80247, -9.43463, -8.44329, 0 },
840  0.84194, 1.32718, 14.4304, 0, 0, -0.597543, -3.82759, -6.9094, -2.88583, 5.50573, 4.30943,  { 0, -0.25099, -2.53532, -2.43846, -2.94008, -1.01258, -1.10502, 5.16068, 0 },
841  18.0664, 0, 0, -1.86862, -3.80777, -2.69084, -4.09258, 1.59904, 4.61543, 13.8186, 0, 0,  { 0, -0.101144, -4.98664, -0.369916, 2.2648, 4.2727, 3.1653, 19.8617, 0 },
842  -0.932447, -6.02195, -0.891975, 0.870346, 7.22131, 6.03928, 20.5102, 0, 0, -0.439221, -7.66335,  { 0, -0.5074, -3.98429, -0.306633, 0.562595, 5.05787, 4.70127, 14.2399, 0 },
843  -2.7363, -3.29581, 3.74263, 3.2571, 15.8539, 0, 0, -0.487944, -5.05733, -2.61662, -2.86336,  { 0, -0.326603, -3.83632, -1.75409, -1.86815, 0.84194, 1.32718, 14.4304, 0 },
844  2.65017, -0.919043, 7.10535, 0, 0, -0.0329559, -6.07396, -0.0044396, 2.75593, 8.87808, 14.9627,  { 0, -0.597543, -3.82759, -6.9094, -2.88583, 5.50573, 4.30943, 18.0664, 0 },
845  28.8783, 0, 0, -0.573054, -4.15302, -2.15074, -1.83499, 0.969726, 1.36361, 17.6185, 0, 0,  { 0, -1.86862, -3.80777, -2.69084, -4.09258, 1.59904, 4.61543, 13.8186, 0 },
846  0.238198, -3.75628, -1.02674, 1.12711, 3.06917, 2.61956, 11.2723, 0, 0, -0.473325, -5.88165,  { 0, -0.932447, -6.02195, -0.891975, 0.870346, 7.22131, 6.03928, 20.5102, 0 },
847  -2.10476, -0.508963, 4.24835, 6.41943, 14.9346, 0, 0, 0.0585487, -4.40372, -1.45949, 1.31992,  { 0, -0.439221, -7.66335, -2.7363, -3.29581, 3.74263, 3.2571, 15.8539, 0 },
848  4.7115, 5.03433, 11.968, 0, 0, -0.836615, -5.05945, -0.644868, 2.3894, 9.40413, 11.4195,  { 0, -0.487944, -5.05733, -2.61662, -2.86336, 2.65017, -0.919043, 7.10535, 0 },
849  25.3239, 0, 0, 0.026064, -4.78872, -0.819969, -0.57223, 1.84866, 0.29272, 15.1362, 0, 0,  { 0, -0.0329559, -6.07396, -0.0044396, 2.75593, 8.87808, 14.9627, 28.8783, 0 },
850  -0.659228, -6.61715, 0.371846, 4.36719, 10.657, 17.8551, 29.3359, 0, 0, -1.27483, -4.52966,  { 0, -0.573054, -4.15302, -2.15074, -1.83499, 0.969726, 1.36361, 17.6185, 0 },
851  -1.85458, -0.9634, 3.65819, 2.89211, 13.508, 0, 0, -1.49858, -5.08299, 0.103222, 3.84545,  { 0, 0.238198, -3.75628, -1.02674, 1.12711, 3.06917, 2.61956, 11.2723, 0 },
852  3.46523, -13.6535, -20, 0, 0, -1.70043, -4.92192, -2.46523, -0.681845, -2.80632, -8.55159, -20,  { 0, -0.473325, -5.88165, -2.10476, -0.508963, 4.24835, 6.41943, 14.9346, 0 },
853  0, 0, -1.85437, -5.65787, -1.56314, 0.372468, 4.54151, 2.97956, -7.90681, 0, 0, -1.78092,  { 0, 0.0585487, -4.40372, -1.45949, 1.31992, 4.7115, 5.03433, 11.968, 0 },
854  -4.19601, -1.84397, -0.175657, -2.0339, -5.64021, -20, 0, 0, -2.08786, -6.05197, -1.81875,  { 0, -0.836615, -5.05945, -0.644868, 2.3894, 9.40413, 11.4195, 25.3239, 0 },
855  -0.423923, 5.86772, 7.50042, 4.22714, 0, 0, -1.78679, -5.6835, -1.22858, -0.764359, 2.71007,  { 0, 0.026064, -4.78872, -0.819969, -0.57223, 1.84866, 0.29272, 15.1362, 0 },
856  4.16034, 4.49981, 0, 0, -2.21623, -5.39176, -0.174751, 0.19786, -1.93316, -7.45927, -20, 0, 0,  { 0, -0.659228, -6.61715, 0.371846, 4.36719, 10.657, 17.8551, 29.3359, 0 },
857  -2.2076, -4.93708, -1.49415, 0.576195, 0.552502, -5.02466, -18, 0, 0, -3.95472, -4.97236,  { 0, -1.27483, -4.52966, -1.85458, -0.9634, 3.65819, 2.89211, 13.508, 0 },
858  -5.73642, -7.17611, -8.40014, -10.7071, -13.5198, 0, 0, -3.98713, -4.90269, -4.51467, -4.74549,  { 0, -1.49858, -5.08299, 0.103222, 3.84545, 3.46523, -13.6535, -20, 0 },
859  -5.13124, -6.02539, -4.36386, 0, 0, -4.09193, -6.36148, -1.92129, 0.535293, 4.36379, 8.09335,  { 0, -1.70043, -4.92192, -2.46523, -0.681845, -2.80632, -8.55159, -20, 0 },
860  21.4513, 0, 0, -4.09301, -6.86077, -8.51634, -10.7671, -15.4194, -19.8748, -18.2532, 0, 0,  { 0, -1.85437, -5.65787, -1.56314, 0.372468, 4.54151, 2.97956, -7.90681, 0 },
861  -3.66083, -6.39249, -8.20002, -12.5867, -18.523, -21.1403, -22.5493, 0, 0, -3.66449, -6.84751,  { 0, -1.78092, -4.19601, -1.84397, -0.175657, -2.0339, -5.64021, -20, 0 },
862  -3.49245, -4.82854, 0.21682, 0.54105, -16.1417, 0, 0, -5.55283, -4.22, -4.20093, -2.0392,  { 0, -2.08786, -6.05197, -1.81875, -0.423923, 5.86772, 7.50042, 4.22714, 0 },
863  -1.493, 0.481244, 6.28662, 0, 0, -5.93701, -5.45729, -6.95403, -6.68625, -5.13187, -5.10613,  { 0, -1.78679, -5.6835, -1.22858, -0.764359, 2.71007, 4.16034, 4.49981, 0 },
864  -2.64945, 0, 0, -5.25381, -4.94071, -7.72978, -4.67849, -4.74316, -3.91651, 1.17451, 0, 0,  { 0, -2.21623, -5.39176, -0.174751, 0.19786, -1.93316, -7.45927, -20, 0 },
865  -6.01523, -5.33454, -6.26672, -5.88745, -8.91118, -11.1342, -7.91073, 0, 0, -5.53583, -4.3686,  { 0, -2.2076, -4.93708, -1.49415, 0.576195, 0.552502, -5.02466, -18, 0 },
866  -8.88023, -6.36106, -4.70941, -3.2139, -0.381882, 0, 0, -5.7646, -6.25807, -5.12981, -1.5055,  { 0, -3.95472, -4.97236, -5.73642, -7.17611, -8.40014, -10.7071, -13.5198, 0 },
867  -1.11425, -0.388791, 8.42188, 0 } ;  { 0, -3.98713, -4.90269, -4.51467, -4.74549, -5.13124, -6.02539, -4.36386, 0 },
868    { 0, -4.09193, -6.36148, -1.92129, 0.535293, 4.36379, 8.09335, 21.4513, 0 },
869    { 0, -4.09301, -6.86077, -8.51634, -10.7671, -15.4194, -19.8748, -18.2532, 0 },
870    { 0, -3.66083, -6.39249, -8.20002, -12.5867, -18.523, -21.1403, -22.5493, 0 },
871    { 0, -3.66449, -6.84751, -3.49245, -4.82854, 0.21682, 0.54105, -16.1417, 0 },
872    { 0, -5.55283, -4.22, -4.20093, -2.0392, -1.493, 0.481244, 6.28662, 0 },
873    { 0, -5.93701, -5.45729, -6.95403, -6.68625, -5.13187, -5.10613, -2.64945, 0 },
874    { 0, -5.25381, -4.94071, -7.72978, -4.67849, -4.74316, -3.91651, 1.17451, 0 },
875    { 0, -6.01523, -5.33454, -6.26672, -5.88745, -8.91118, -11.1342, -7.91073, 0 },
876    { 0, -5.53583, -4.3686, -8.88023, -6.36106, -4.70941, -3.2139, -0.381882, 0 },
877    { 0, -5.7646, -6.25807, -5.12981, -1.5055, -1.11425, -0.388791, 8.42188, 0 } };
878    
879    
880  Float_t A2t[48][9] = {  Float_t A2t[48][9] = {
881  0, 0.317852, 2.46394, 4.35287, 6.69993, 1.37704, 9.38636, 22.3426, 0, 0, 0.0270999, 4.03858,  { 0, 0.317852, 2.46394, 4.35287, 6.69993, 1.37704, 9.38636, 22.3426, 0 },
882  0.614142, 7.64715, 3, 4.55046, 9.46688, 0, 0, 0.422802, 3.25444, 2.83067, 3.78916, 7.15528,  { 0, 0.0270999, 4.03858, 0.614142, 7.64715, 3, 4.55046, 9.46688, 0 },
883  9.61404, 9.53181, 0, 0, 0.27719, 2.81849, 2, 3, 3, 3, 3, 0, 0, 0.257138, 1.96682, 2.66388,  { 0, 0.422802, 3.25444, 2.83067, 3.78916, 7.15528, 9.61404, 9.53181, 0 },
884  2.02686, 0.981737, 7.07876, 32, 0, 0, 0.0777448, 1.95238, 0.591915, 3.36314, 1.71777, 3.1121, 3,  { 0, 0.27719, 2.81849, 2, 3, 3, 3, 3, 0 },
885  0, 0, 0.201297, 1.54333, 2.06343, 3.81529, 3.47056, 7.66122, 10.2165, 0, 0, 0.090275, 2.35456,  { 0, 0.257138, 1.96682, 2.66388, 2.02686, 0.981737, 7.07876, 32, 0 },
886  0.150419, 1.48979, 4.43331, 6.09798, 9.59925, 0, 0, 0.472466, 2.2568, 0, 0, 0, 0, 0, 0, 0, 0, 0,  { 0, 0.0777448, 1.95238, 0.591915, 3.36314, 1.71777, 3.1121, 3, 0 },
887  0, 0, 5.8114, 8.76464, 11.718, 0, 0, 0.369669, 1.66502, 2.21937, 4.8545, 6.71778, 9.52608,  { 0, 0.201297, 1.54333, 2.06343, 3.81529, 3.47056, 7.66122, 10.2165, 0 },
888  13.5645, 0, 0, 0.278447, 3.03196, 0.562358, 0.978803, 4.19387, 9.26949, 4.33973, 0, 0, 0.488781,  { 0, 0.090275, 2.35456, 0.150419, 1.48979, 4.43331, 6.09798, 9.59925, 0 },
889  2.52383, 0.674871, 2.54554, 2.33603, 6.75428, 10.7769, 0, 0, 0.396462, 2.42949, 1.33035, 3.9579,  { 0, 0.472466, 2.2568, 0, 0, 0, 0, 0, 0 },
890  4.98889, 7.41728, 8.78462, 0, 0, 0.616543, 2.39152, 7.13157, 4.52173, 0.795959, 5.05895,  { 0, 0, 0, 0, 0, 5.8114, 8.76464, 11.718, 0 },
891  3.58876, 0, 0, 1.3407, 2.54098, 2, 7.35567, 6.08494, 6.47321, 6.60084, 0, 0, 0.855061, 3.97328,  { 0, 0.369669, 1.66502, 2.21937, 4.8545, 6.71778, 9.52608, 13.5645, 0 },
892  2, 3, 3, 10.1946, 7.06782, 0, 0, 0.492265, 5.11681, 2, 2.24085, 0.00142742, 3.12852, 1.94308, 0,  { 0, 0.278447, 3.03196, 0.562358, 0.978803, 4.19387, 9.26949, 4.33973, 0 },
893  0, 0.594536, 3.10529, 2.07652, 4.86122, 2.7748, 10.0368, 14.8149, 0, 0, 0.220041, 3.69287, 2, 3,  { 0, 0.488781, 2.52383, 0.674871, 2.54554, 2.33603, 6.75428, 10.7769, 0 },
894  3, 0.0668348, 0.124322, 0, 0, 0.652342, 2.52474, 1.92129, 3.97957, 5.4076, 8.66393, 5.53485, 0,  { 0, 0.396462, 2.42949, 1.33035, 3.9579, 4.98889, 7.41728, 8.78462, 0 },
895  0, 0.109911, 2.37426, 2, 2.09403, 4.25338, 7.64627, 8.96803, 0, 0, 0.503317, 3.66579, 2, 3, 3,  { 0, 0.616543, 2.39152, 7.13157, 4.52173, 0.795959, 5.05895, 3.58876, 0 },
896  3.95553, 7.79201, 0, 0, 0.18358, 2.71524, 2, 1.64493, 2.67235, 6.00813, 13.3661, 0, 0, 0.762639,  { 0, 1.3407, 2.54098, 2, 7.35567, 6.08494, 6.47321, 6.60084, 0 },
897  3.10968, 2, 1.79493, 0.0228019, 3, 6.68329, 0, 0, 0.218363, 2.87712, 0.218535, 3, 4.57375,  { 0, 0.855061, 3.97328, 2, 3, 3, 10.1946, 7.06782, 0 },
898  9.68986, 4.89219, 0, 0, 0.675406, 4.00709, 2, 1.07325, 3, 0.182969, 8.20433, 0, 0, 0.991549,  { 0, 0.492265, 5.11681, 2, 2.24085, 0.00142742, 3.12852, 1.94308, 0 },
899  2.68269, 2, 3.876, 2.94015, 6.72011, 7.03988, 0, 0, 1.02743, 3.12518, 2, 2.20294, 6.63646,  { 0, 0.594536, 3.10529, 2.07652, 4.86122, 2.7748, 10.0368, 14.8149, 0 },
900  22.0153, 35, 0, 0, 1.18885, 3.01461, 2.30242, 3.46316, 8.98077, 16.6101, 35, 0, 0, 1.47119,  { 0, 0.220041, 3.69287, 2, 3, 3, 0.0668348, 0.124322, 0 },
901  3.24004, 1.07333, 2.31147, 2.98418, 9.99881, 28.0778, 0, 0, 1.28408, 2.55246, 1.49292, 3.01143,  { 0, 0.652342, 2.52474, 1.92129, 3.97957, 5.4076, 8.66393, 5.53485, 0 },
902  8.45419, 13.2062, 35, 0, 0, 1.56497, 3.35834, 0.73553, 3, 2.13162, 5.84836, 18.6428, 0, 0,  { 0, 0.109911, 2.37426, 2, 2.09403, 4.25338, 7.64627, 8.96803, 0 },
903  1.39782, 3.19843, 0.593735, 3.34643, 4.22204, 6.78619, 12.8529, 0, 0, 1.46182, 3.30186,  { 0, 0.503317, 3.66579, 2, 3, 3, 3.95553, 7.79201, 0 },
904  0.0348858, 3.87061, 9.87769, 16.8741, 35, 0, 0, 1.50597, 3.03838, 1.62411, 2.96043, 7.1428,  { 0, 0.18358, 2.71524, 2, 1.64493, 2.67235, 6.00813, 13.3661, 0 },
905  15.4035, 35, 0, 0, 2.6053, 2.92019, 3.8816, 7.13833, 9.84022, 13.4445, 22.2018, 0, 0, 2.58901,  { 0, 0.762639, 3.10968, 2, 1.79493, 0.0228019, 3, 6.68329, 0 },
906  2.74623, 2.66245, 5.37385, 8.40354, 11.6502, 17.4423, 0, 0, 2.65151, 3.592, 2, 3, 3, 3, 3, 0, 0,  { 0, 0.218363, 2.87712, 0.218535, 3, 4.57375, 9.68986, 4.89219, 0 },
907  2.65586, 3.87903, 6.12175, 9.92231, 16.1427, 21.4766, 21.4604, 0, 0, 2.38768, 3.77375, 5.67703,  { 0, 0.675406, 4.00709, 2, 1.07325, 3, 0.182969, 8.20433, 0 },
908  11.8596, 18.8674, 20.8655, 24.5083, 0, 0, 2.40258, 4.1273, 2, 5.81564, 2.29756, 4.40615,  { 0, 0.991549, 2.68269, 2, 3.876, 2.94015, 6.72011, 7.03988, 0 },
909  32.3639, 0, 0, 3.54156, 2.13, 2.79762, 2.76993, 4.67104, 5.20053, 8.36394, 0, 0, 3.76292,  { 0, 1.02743, 3.12518, 2, 2.20294, 6.63646, 22.0153, 35, 0 },
910  2.83393, 5.30926, 6.67988, 7.35393, 9.46522, 14.8599, 0, 0, 3.37723, 2.74166, 6.71253, 5.63259,  { 0, 1.18885, 3.01461, 2.30242, 3.46316, 8.98077, 16.6101, 35, 0 },
911  8.42885, 9.99872, 14.8742, 0, 0, 3.83378, 2.79501, 4.78642, 5.94201, 11.4635, 14.7442, 16.5806,  { 0, 1.47119, 3.24004, 1.07333, 2.31147, 2.98418, 9.99881, 28.0778, 0 },
912  0, 0, 3.59181, 2.3773, 7.14813, 5.60101, 6.47122, 6.64957, 14.2374, 0, 0, 3.68523, 3.54382,  { 0, 1.28408, 2.55246, 1.49292, 3.01143, 8.45419, 13.2062, 35, 0 },
913  3.92867, 2.18506, 5.56025, 7.75895, 7.448, 0 } ;  { 0, 1.56497, 3.35834, 0.73553, 3, 2.13162, 5.84836, 18.6428, 0 },
914    { 0, 1.39782, 3.19843, 0.593735, 3.34643, 4.22204, 6.78619, 12.8529, 0 },
915    { 0, 1.46182, 3.30186, 0.0348858, 3.87061, 9.87769, 16.8741, 35, 0 },
916    { 0, 1.50597, 3.03838, 1.62411, 2.96043, 7.1428, 15.4035, 35, 0 },
917    { 0, 2.6053, 2.92019, 3.8816, 7.13833, 9.84022, 13.4445, 22.2018, 0 },
918    { 0, 2.58901, 2.74623, 2.66245, 5.37385, 8.40354, 11.6502, 17.4423, 0 },
919    { 0, 2.65151, 3.592, 2, 3, 3, 3, 3, 0 },
920    { 0, 2.65586, 3.87903, 6.12175, 9.92231, 16.1427, 21.4766, 21.4604, 0 },
921    { 0, 2.38768, 3.77375, 5.67703, 11.8596, 18.8674, 20.8655, 24.5083, 0 },
922    { 0, 2.40258, 4.1273, 2, 5.81564, 2.29756, 4.40615, 32.3639, 0 },
923    { 0, 3.54156, 2.13, 2.79762, 2.76993, 4.67104, 5.20053, 8.36394, 0 },
924    { 0, 3.76292, 2.83393, 5.30926, 6.67988, 7.35393, 9.46522, 14.8599, 0 },
925    { 0, 3.37723, 2.74166, 6.71253, 5.63259, 8.42885, 9.99872, 14.8742, 0 },
926    { 0, 3.83378, 2.79501, 4.78642, 5.94201, 11.4635, 14.7442, 16.5806, 0 },
927    { 0, 3.59181, 2.3773, 7.14813, 5.60101, 6.47122, 6.64957, 14.2374, 0 },
928    { 0, 3.68523, 3.54382, 3.92867, 2.18506, 5.56025, 7.75895, 7.448, 0 } };
929    
930    
931  // S115B failure: 1158700000 // 2006-09-19 21:06:40 UTC  // S115B failure: 1158700000 // 2006-09-19 21:06:40 UTC
932    
933  if (time > 1158700000.) {     // first workaround: just use calibration of PMT S115A  if (time < 1158700000.) {     // first workaround: just use calibration of PMT S115A
934  for ( Int_t jj=0; jj<9; jj++ ){  for ( Int_t jj=0; jj<9; jj++ ){
935  A0t[9][jj] = A0t[8][jj] ;  A0t[9][jj] = A0t[8][jj] ;
936  A1t[9][jj] = A1t[8][jj] ;  A1t[9][jj] = A1t[8][jj] ;
# Line 629  A2t[9][jj] = A2t[8][jj] ; Line 941  A2t[9][jj] = A2t[8][jj] ;
941    
942  //  2nd-order correction  //  2nd-order correction
943  Float_t corr_a[6][4] = {    Float_t corr_a[6][4] = {  
944  0.551894 , 2.24353 , -3.35885 , 1.51401 , 0.915691 , 4.83967 , -6.85389 , 3.13679 ,  {0.551894 , 2.24353 , -3.35885 , 1.51401} ,
945  1.84338 , 5.63517 , -8.41577 , 4.04055 , 1.51216 , 11.3233 , -16.2119 , 7.45008 ,  {0.915691 , 4.83967 , -6.85389 , 3.13679} ,
946  1.50481 , 15.2538 , -21.2003 , 9.51127 , 1.82038 , 17.5336 , -23.5512 , 10.3036  };  {1.84338 , 5.63517 , -8.41577 , 4.04055} ,
947    {1.51216 , 11.3233 , -16.2119 , 7.45008} ,
948    {1.50481 , 15.2538 , -21.2003 , 9.51127} ,
949    {1.82038 , 17.5336 , -23.5512 , 10.3036}  };
950    
951  //---------------------------------------------------------------------  //---------------------------------------------------------------------
952    
953  Float_t xv[6],yv[6];  //Float_t xv[6],yv[6];
954  Int_t  iz;  Int_t  iz;
955    
956  Float_t x1[9],y1[9];  Float_t x1[9],y1[9];
957  Int_t n1 = 9;  Int_t n1 = 9;
958    
959  Float_t  Layercharge[6] = {1000., 1000., 1000., 1000., 1000., 1000. };  Float_t  Layercharge[6] = {1005., 1005., 1005., 1005., 1005., 1005. };
960    
961  Int_t  Layerinfo[6] = {0, 0, 0, 0, 0, 0 };  Int_t  Layerinfo[6] = {0, 0, 0, 0, 0, 0 };
962    
963    //Float_t adc[48],adc_c[48],PMTcharge_arr[48];
964    Float_t adc[48],PMTcharge_arr[48];
965    
966    Float_t beta_mean = fabs(track->beta[12]);
967    
968    Float_t beta_mean = fabs(track->beta[12]);  // New!! If "beta_in" != 100. then overwrite beta_mean with beta_in
969    if (beta_in != 100.) beta_mean=beta_in;
970    
971    Int_t ncount=0;    Int_t ncount=0;
972    Float_t charge_chi=1000.;    Float_t charge_chi=1000.;
973    
   if ((beta_mean > 0.05)  && (beta_mean < 1.5)) {  
974        
975  //-------------------------------------------------------------  //-------------------------------------------------------------
976    
977  // fill adc and tdc  // fill adc and tdc
978    
979     Int_t ich,jj,kk;     Int_t ich,jj,kk;
    Float_t adc[48],adc_c[48],PMTcharge_arr[48];  
980    
981     for (ich=0; ich<48; ich++)   adc[ich]   = 4095.;     for (ich=0; ich<48; ich++)   adc[ich]   = 4095.;
982     for (ich=0; ich<48; ich++)   adc_c[ich] = 1000.;     //   for (ich=0; ich<48; ich++)   adc_c[ich] = 1000.;
983     for (ich=0; ich<48; ich++)   PMTcharge_arr[ich] = 1000.;     for (ich=0; ich<48; ich++)   PMTcharge_arr[ich] = 1000.;
984    
985    
986    if ((beta_mean < 0.05)  || (beta_mean > 2.0)) {
987      for (Int_t jj=0; jj<48;jj++) charge_PMT_std[jj] = 1001.;
988      for (Int_t jj=0; jj<6;jj++) charge_layer_std[jj] = 1001.;
989      for (Int_t jj=0; jj<6;jj++) charge_layer_std_raw[jj] = 1001.;
990      for (Int_t jj=0; jj<6;jj++) layerinfo_std[jj] = 1001;
991      charge_std = 1001.;
992      ncount_std = 0;
993                                                  }
994    
995    
996      if ((beta_mean > 0.05)  && (beta_mean < 2.0)) {
997    
998     Float_t betahelp =   pow(beta_mean, 1.2);     Float_t betahelp =   pow(beta_mean, 1.2);
999    
1000  //=======================================================================  //=======================================================================
# Line 682  Int_t  Layerinfo[6] = {0, 0, 0, 0, 0, 0 Line 1014  Int_t  Layerinfo[6] = {0, 0, 0, 0, 0, 0
1014            Float_t dEdx = track->dedx[ipmt];            Float_t dEdx = track->dedx[ipmt];
1015            ym = dEdx*betahelp;            ym = dEdx*betahelp;
1016            Int_t pmtadc = track->pmtadc[ipmt];            Int_t pmtadc = track->pmtadc[ipmt];
1017            Int_t adcflag = track->adcflag[ipmt];            //          Int_t adcflag = track->adcflag[ipmt];
1018            L2->GetToFLevel2()->GetPMTIndex(pmtadc,jj,kk);            L2->GetToFLevel2()->GetPMTIndex(pmtadc,jj,kk);
1019            if (adcflag==0) adc_c[pmtadc] = dEdx;            //          if (adcflag==0) adc_c[pmtadc] = dEdx;
1020            if (adc[pmtadc] > PMTsat[pmtadc]) adc_c[pmtadc] = 1000.;  
1021              //         if (adc[pmtadc] == 4095) adc_c[pmtadc] = 0.;
1022             if (adc[pmtadc] == 4095) PMTcharge_arr[pmtadc] = 0.;
1023    
1024             //         if ((adc[pmtadc]>PMTsat[pmtadc]) && (adc[pmtadc]<4095)) adc_c[pmtadc] = 1000.;
1025                                                                                    
1026           if (adc[pmtadc] < PMTsat[pmtadc]) {           if (adc[pmtadc] < PMTsat[pmtadc]) {
1027    
1028  if ((pmtadc!=4) && (pmtadc!=8) || (pmtadc!=28) || (pmtadc!=31) || (pmtadc!=34) || (pmtadc!=39) && (pmtadc!=41) || (pmtadc!=46)) {  if ((pmtadc!=4) && (pmtadc!=8) && (pmtadc!=28) && (pmtadc!=31) && (pmtadc!=34) && (pmtadc!=39) && (pmtadc!=41) && (pmtadc!=46)) {
1029    
1030      for ( Int_t jj=0; jj<9; jj++ ){      for ( Int_t jj=0; jj<9; jj++ ){
1031      x1[jj] = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;      x1[jj] = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;
# Line 702  if ((pmtadc!=4) && (pmtadc!=8) || (pmtad Line 1038  if ((pmtadc!=4) && (pmtadc!=8) || (pmtad
1038      TGraph *gr2 = new TGraph(n1,x1,y1);      TGraph *gr2 = new TGraph(n1,x1,y1);
1039      TSpline3 *spl2 = new TSpline3("grs",gr2);    // use a cubic spline      TSpline3 *spl2 = new TSpline3("grs",gr2);    // use a cubic spline
1040      chelp = spl2->Eval(ym);      chelp = spl2->Eval(ym);
1041        if (chelp<0.) chelp=0.0001;  //WM new
1042      charge = TMath::Sqrt(chelp);      charge = TMath::Sqrt(chelp);
1043    
1044      gr2->Delete();      gr2->Delete();
# Line 709  if ((pmtadc!=4) && (pmtadc!=8) || (pmtad Line 1046  if ((pmtadc!=4) && (pmtadc!=8) || (pmtad
1046      PMTcharge_arr[pmtadc] = charge;      PMTcharge_arr[pmtadc] = charge;
1047                                                                           } // pmtadc != ...                                                                           } // pmtadc != ...
1048    
1049  if ((pmtadc==4) && (pmtadc==8) || (pmtadc==28) || (pmtadc==31) || (pmtadc==34) || (pmtadc==39) && (pmtadc==41) || (pmtadc==46)) {  if ((pmtadc==4) || (pmtadc==8) || (pmtadc==28) || (pmtadc==31) || (pmtadc==34) || (pmtadc==39) || (pmtadc==41) || (pmtadc==46)) {
1050           for ( Int_t jj=0; jj<8; jj++ ){           for ( Int_t jj=0; jj<8; jj++ ){
1051           yl = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;           yl = A0t[pmtadc][jj]+A1t[pmtadc][jj]*beta_mean+A2t[pmtadc][jj]*beta_mean*beta_mean;
1052           yh = A0t[pmtadc][jj+1]+A1t[pmtadc][jj+1]*beta_mean+A2t[pmtadc][jj+1]*beta_mean*beta_mean;           yh = A0t[pmtadc][jj+1]+A1t[pmtadc][jj+1]*beta_mean+A2t[pmtadc][jj+1]*beta_mean*beta_mean;
# Line 717  if ((pmtadc==4) && (pmtadc==8) || (pmtad Line 1054  if ((pmtadc==4) && (pmtadc==8) || (pmtad
1054           m = (C0t[pmtadc][jj+1]*C0t[pmtadc][jj+1] - C0t[pmtadc][jj]*C0t[pmtadc][jj]) / (yh - yl);           m = (C0t[pmtadc][jj+1]*C0t[pmtadc][jj+1] - C0t[pmtadc][jj]*C0t[pmtadc][jj]) / (yh - yl);
1055           b = (C0t[pmtadc][jj]*C0t[pmtadc][jj]) - m*yl;           b = (C0t[pmtadc][jj]*C0t[pmtadc][jj]) - m*yl;
1056           chelp = m*ym + b;           chelp = m*ym + b;
1057             if (chelp<0.) chelp=0.0001;  //WM new
1058           charge= TMath::Sqrt(chelp);           charge= TMath::Sqrt(chelp);
1059           PMTcharge_arr[pmtadc] = charge;           PMTcharge_arr[pmtadc] = charge;
1060                               }                               }
# Line 768  Int_t ihelp_a[6] = {0,16,28,32,36,42}; Line 1106  Int_t ihelp_a[6] = {0,16,28,32,36,42};
1106    
1107  for (Int_t ilay=0; ilay<6; ilay ++) {  for (Int_t ilay=0; ilay<6; ilay ++) {
1108  Int_t jj = PaddleIdOfTrack[ilay] ;  Int_t jj = PaddleIdOfTrack[ilay] ;
1109  Float_t xhelp = 1000.;  //Float_t xhelp = 1000.;
1110    Float_t xhelp = 1005.;
1111    
1112  if (jj == -1) Layerinfo[ilay] = -1;  if (jj == -1) Layerinfo[ilay] = -1;
1113    
1114  if (jj != -1) {  if (jj != -1) {
1115  Int_t ih = ihelp_a[ilay] + 2*jj;  Int_t ih = ihelp_a[ilay] + 2*jj;
1116    
1117    // New WM
1118    Int_t igood1=0;
1119    Int_t igood2=0;
1120    if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih] > 0.)) igood1=1;
1121    if ((PMTcharge_arr[ih+1] < 1000.) && (PMTcharge_arr[ih+1] > 0.)) igood2=1;
1122    
1123    if ((PMTcharge_arr[ih]==0.) && (PMTcharge_arr[ih+1]==0.))  xhelp = 0.;
1124    if ((igood1==1)&&(igood2==1)) xhelp = 0.5*(PMTcharge_arr[ih]+PMTcharge_arr[ih+1]) ;
1125    if ((igood1==1)&&(igood2==0)) xhelp = PMTcharge_arr[ih];
1126    if ((igood2==1)&&(igood1==0)) xhelp = PMTcharge_arr[ih+1];
1127    
1128    
1129    /*
1130  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1] < 1000.)) xhelp = 0.5*(PMTcharge_arr[ih]+PMTcharge_arr[ih+1]) ;  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1] < 1000.)) xhelp = 0.5*(PMTcharge_arr[ih]+PMTcharge_arr[ih+1]) ;
1131  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1]==1000.))  xhelp = PMTcharge_arr[ih] ;  if ((PMTcharge_arr[ih] < 1000.) && (PMTcharge_arr[ih+1]==1000.))  xhelp = PMTcharge_arr[ih] ;
1132  if ((PMTcharge_arr[ih]==1000.) && (PMTcharge_arr[ih+1] < 1000.))  xhelp = PMTcharge_arr[ih+1] ;  if ((PMTcharge_arr[ih]==1000.) && (PMTcharge_arr[ih+1] < 1000.))  xhelp = PMTcharge_arr[ih+1] ;
1133    */
1134    
1135     if (adc[ih] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;     if (adc[ih] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;
1136     if (adc[ih+1] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;     if (adc[ih+1] ==  4095) Layerinfo[ilay] = Layerinfo[ilay] + 1;
# Line 793  Layercharge[ilay] = xhelp; Line 1147  Layercharge[ilay] = xhelp;
1147  //for (Int_t ilay=0; ilay<6; ilay ++) cout<<Layercharge[ilay]<<" ";  //for (Int_t ilay=0; ilay<6; ilay ++) cout<<Layercharge[ilay]<<" ";
1148    
1149  //==========================================================================  //==========================================================================
1150    //============= Layercharge without 2nd-order correction   =================
1151    //==========================================================================
1152    
1153      for (Int_t jj=0; jj<6;jj++) charge_layer_std_raw[jj] = Layercharge[jj];
1154    
1155    //==========================================================================
1156  //=========================   2nd-order correction   =======================  //=========================   2nd-order correction   =======================
1157  //==========================================================================  //==========================================================================
1158    
# Line 801  Float_t xb = beta_mean; Line 1161  Float_t xb = beta_mean;
1161  for (Int_t ii=0; ii<6;  ii++) {  for (Int_t ii=0; ii<6;  ii++) {
1162  Int_t ic = 0;  Int_t ic = 0;
1163  Float_t corr[4] = {1., 0., 0., 0.};  Float_t corr[4] = {1., 0., 0., 0.};
1164  for (Int_t iii=1; iii<9;  iii++) if (fabs(Layercharge[ii] - iii)<0.50) ic = iii;  //for (Int_t iii=1; iii<9;  iii++) if (fabs(Layercharge[ii] - iii)<0.50) ic = iii;
1165    for (Int_t iii=1; iii<10;  iii++) if (fabs(Layercharge[ii] - iii)<0.50) ic = iii;
1166  if ((ic>0)&&(ic<=5)) for (Int_t iii=0; iii<4;  iii++) corr[iii] = corr_a[ic-1][iii];  if ((ic>0)&&(ic<=5)) for (Int_t iii=0; iii<4;  iii++) corr[iii] = corr_a[ic-1][iii];
1167  if (ic >5) for (Int_t iii=0; iii<4;  iii++) corr[iii] = corr_a[5][iii];  if (ic >5) for (Int_t iii=0; iii<4;  iii++) corr[iii] = corr_a[5][iii];
1168    
# Line 810  Float_t c_corr = corr[0]+corr[1]*xb+corr Line 1171  Float_t c_corr = corr[0]+corr[1]*xb+corr
1171  if ((ic>0)&&(ic<=5)) c_corr = c_corr/(1.*ic) ;  if ((ic>0)&&(ic<=5)) c_corr = c_corr/(1.*ic) ;
1172  if (ic>5) c_corr = c_corr/6. ;  if (ic>5) c_corr = c_corr/6. ;
1173    
1174    //cout<<Layercharge[ii]<<" "<<ic<<" "<<c_corr<<" => ";
1175  Layercharge[ii] = Layercharge[ii]/c_corr;  Layercharge[ii] = Layercharge[ii]/c_corr;
1176    //cout<<Layercharge[ii]<<endl;
1177    
1178                              }                              }
1179    
1180    
1181  //==========================================================================  //==========================================================================
1182    //cout<<"In ToFNuclei Std: ";
1183    //for (Int_t ilay=0; ilay<6; ilay ++) cout<<Layercharge[ilay]<<" ";
1184    //cout<<endl;
1185  //==========================================================================  //==========================================================================
1186    
1187    
   
1188  Int_t  icount=0;  Int_t  icount=0;
1189  Float_t charge_mean = 0.;  Float_t charge_mean = 0.;
1190  for (Int_t ii=0; ii<6;  ii++) {  for (Int_t ii=0; ii<6;  ii++) {
# Line 827  if (Layercharge[ii] < 1000) icount++; Line 1193  if (Layercharge[ii] < 1000) icount++;
1193                              }                              }
1194  if (icount>0) charge_mean = charge_mean/(1.*icount) ;  if (icount>0) charge_mean = charge_mean/(1.*icount) ;
1195    
1196    if (icount>0) {
1197    
1198    //for (Int_t ii=0; ii<6;  ii++) cout<<Layercharge[ii]<<" ";
1199    //cout<<endl;
1200    
1201    
1202      vector<float> charge_v;
1203      Float_t charge_median = 0.;
1204    
1205      ////////  get the median charge ////////////
1206      for(Int_t ii=0;ii<6;ii++) {
1207      if (Layercharge[ii] < 1000) charge_v.push_back(Layercharge[ii]);
1208                                }
1209    
1210      std::sort(charge_v.begin(),charge_v.end());
1211      charge_median = charge_v[(int)(charge_v.size()/2+charge_v.size()%2)-1];
1212    
1213    //cout<<charge_mean<<" "<<charge_median<<endl;
1214    
1215      charge_mean = charge_median;
1216    
1217    }  // icount>0
1218    
1219  //--- Calculate charge for the second time, use residuals of the single  //--- Calculate charge for the second time, use residuals of the single
1220  //--- measurements to get a chi2 value  //--- measurements to get a chi2 value
# Line 873  if (icount>0) charge_mean = charge_mean/ Line 1261  if (icount>0) charge_mean = charge_mean/
1261    
1262  //  charge_tof = charge_chi;  //  charge_tof = charge_chi;
1263    
1264   } // 0.05 < fabs( beta) < 1.5  // changed 30-01-2009 WM
1265    
1266      for (Int_t jj=0; jj<48;jj++) charge_PMT_std[jj] = PMTcharge_arr[jj];
1267    for (Int_t jj=0; jj<6;jj++) charge_layer_std[jj] = Layercharge[jj];    for (Int_t jj=0; jj<6;jj++) charge_layer_std[jj] = Layercharge[jj];
1268    for (Int_t jj=0; jj<6;jj++) layerinfo_std[jj] = Layerinfo[jj];    for (Int_t jj=0; jj<6;jj++) layerinfo_std[jj] = Layerinfo[jj];
1269    charge_std = charge_chi;    charge_std = charge_chi;
1270    ncount_std = ncount;    ncount_std = ncount;
1271    
1272     } // 0.05 < fabs( beta) < 2.0
1273    
1274    
1275  } // standalone track found  } // standalone track found
1276    
1277  }  }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.8

  ViewVC Help
Powered by ViewVC 1.1.23