95 TH1D* x_of_vertex_in_kal;
96 TH1D* y_of_vertex_in_kal;
97 TH1D* z_of_vertex_in_kal;
98 f.GetObject(
"/zhsVER/x_of_vertex_in_kal", x_of_vertex_in_kal );
99 f.GetObject(
"/zhsVER/y_of_vertex_in_kal", y_of_vertex_in_kal );
100 f.GetObject(
"/zhsVER/z_of_vertex_in_kal", z_of_vertex_in_kal );
106 func =
new TF1(
"func",
"gaus", -0.6, 0.6 );
107 funcY =
new TF1(
"funcY",
"gaus", -0.6, 0.2 );
108 funcZ =
new TF1(
"funcZ",
"gaus", -6, 6 );
112 func =
new TF1(
"func",
"gaus", 0., 1.8 );
113 funcY =
new TF1(
"funcY",
"gaus", -1., 1. );
114 funcZ =
new TF1(
"funcZ",
"gaus", -6, 6 );
116 x_of_vertex_in_kal->Fit(
"func",
"RQ" );
117 Double_t MeanXKal = func->GetParameter( 1 );
118 Double_t SigmaXKal = func->GetParameter( 2 );
120 y_of_vertex_in_kal->Fit(
"funcY",
"RQ" );
121 Double_t MeanYKal = funcY->GetParameter( 1 );
122 Double_t SigmaYKal = funcY->GetParameter( 2 );
124 z_of_vertex_in_kal->Fit(
"funcZ",
"RQ" );
125 Double_t MeanZKal = funcZ->GetParameter( 1 );
126 Double_t SigmaZKal = funcZ->GetParameter( 2 );
129 if ( MeanXKal < -0.3 || MeanXKal > 0.3 || SigmaXKal > 0.12 || SigmaXKal < 0. )
131 std::cout <<
"--------------x_of_vertex_in_kal-------out of range--" << MeanXKal <<
" " << SigmaXKal <<
" runID is:" <<
runNo
136 if ( MeanYKal < -0.4 || MeanYKal > 0.4 || SigmaYKal > 0.12 || SigmaYKal < 0 )
138 std::cout <<
"--------------y_of_vertex_in_kal-------out of range--" << MeanYKal <<
" " << SigmaYKal <<
" runID is:" <<
runNo
143 if ( MeanZKal < -2.0 || MeanZKal > 2.0 || SigmaZKal > 1.5 || SigmaZKal < 0 )
145 std::cout <<
"--------------z_of_vertex_in_kal-------out of range--" << MeanZKal <<
" " << SigmaZKal <<
" runID is:" <<
runNo
153 if ( MeanXKal < 0.6 || MeanXKal > 1.2 || SigmaXKal > 0.18 || SigmaXKal < 0. )
155 std::cout <<
"--------------x_of_vertex_in_kal-------out of range--" << MeanXKal <<
" " << SigmaXKal <<
" runID is:" <<
runNo
160 if ( MeanYKal < -0.4 || MeanYKal > 0 || SigmaYKal > 0.12 || SigmaYKal < 0. )
162 std::cout <<
"--------------y_of_vertex_in_kal-------out of range--" << MeanYKal <<
" " << SigmaYKal <<
" runID is:" <<
runNo
167 if ( MeanZKal < -0.8 || MeanZKal > 0.8 || SigmaZKal > 1.5 || SigmaZKal < 0. )
169 std::cout <<
"--------------z_of_vertex_in_kal-------out of range--" << MeanZKal <<
" " << SigmaZKal <<
" runID is:" <<
runNo
175 char VerFitFunc[] =
"Kalman";
176 char DistFitFunc[] =
"single Gaussian";
178 double AcSigmaVx, AcSigmaVy;
182 char query[1024 * 100];
184 sprintf( query,
"DELETE FROM BeamPar where RunNo = '%d' && SftVer='%s' && ParVer='%s'",
189 "BeamPar(BeamParSerNo,RunNo,Vx,Vy,Vz,SigmaVx,SigmaVy,SigmaVz,VerFitFunc,"
190 "DistFitFunc,SftVer,Creator,AcSigmaVx,AcSigmaVy,ParVer) "
191 "values(0,'%d','%f','%f','%f','%f','%f','%f','%s','%s','%s','%s','%f','%f','%s')",
192 runNo, MeanXKal, MeanYKal, MeanZKal, SigmaXKal, SigmaYKal, SigmaZKal, VerFitFunc,
327 cout <<
"************************************" << endl;
329 cout <<
"************************************" << endl;
332 if ( !file_open )
return -1;
336 double Lum_start = -1;
338 double Tau_Value = -1;
340 while ( !rwite.eof() )
342 rwite >> m_runNo >> runTime >> Lum_start >> Lum_end >> Tau_Value;
343 if ( Tau_Value < 0 ) Tau_Value = 99999;
346 "update OfflineLum set runTime=%f, Lum_start=%f, Lum_end=%f, Tau_Value=%f where "
347 "runNo=%d && SftVer='%s' && ParVer='%s' ",
348 runTime, Lum_start, Lum_end, Tau_Value, m_runNo,
SftVer,
ParVer );
351 cout <<
"************************************" << endl;
352 cout <<
"LumTau FOR RUN " << m_runNo <<
" is OK!" << endl;
353 cout <<
"************************************" << endl;
360 cerr << __FILE__ <<
" : " << __LINE__ <<
": Should not reach here!" << endl;
sprintf(cut, "kal_costheta0_em>-0.93&&kal_costheta0_em<0.93&&kal_pxy0_em>=0.05+%d*0.1&&kal_" "pxy0_em<0.15+%d*0.1&&NGch>=2", j, j)