#include <PreT0MdcCalib.h>
Inheritance diagram for PreT0MdcCalib:
Public Member Functions | |
PreT0MdcCalib () | |
~PreT0MdcCalib () | |
void | initialize (TObjArray *hlist, IMdcGeomSvc *mdcGeomSvc, IMdcCalibFunSvc *mdcFunSvc, IMdcUtilitySvc *mdcUtilitySvc) |
void | setParam (MdcCalParams ¶m) |
int | fillHist (MdcCalEvent *event) |
int | updateConst (MdcCalibConst *calconst) |
void | clear () |
Static Private Member Functions | |
static Double_t | funTmin (Double_t *x, Double_t *par) |
static Double_t | funTmax (Double_t *x, Double_t *par) |
static Double_t | xtfun (Double_t *x, Double_t *par) |
Private Attributes | |
MdcCalParams | m_param |
TObjArray * | m_hlist |
IMdcGeomSvc * | m_mdcGeomSvc |
IMdcCalibFunSvc * | m_mdcFunSvc |
IMdcUtilitySvc * | m_mdcUtilitySvc |
int | m_nzbin |
double | m_zwid [MdcCalNLayer] |
double | m_zst [MdcCalNLayer] |
double | m_vp [MdcCalNLayer] |
TFolder * | m_fdTrec |
TFolder * | m_fdTrecZ |
TH1F * | m_hTrec [MdcCalNLayer][MdcCalLR] |
TH1F * | m_hTrecCosm [MdcCalNLayer][2] |
TH1F * | m_hTrecZ [MdcCalNLayer][MdcCalLR][11] |
Definition at line 14 of file PreT0MdcCalib.h.
PreT0MdcCalib::PreT0MdcCalib | ( | ) |
Definition at line 31 of file PreT0MdcCalib.cxx.
References m_nzbin.
00031 { 00032 m_nzbin = 11; 00033 }
PreT0MdcCalib::~PreT0MdcCalib | ( | ) |
void PreT0MdcCalib::clear | ( | ) | [virtual] |
Implements MdcCalib.
Definition at line 38 of file PreT0MdcCalib.cxx.
References bin, MdcCalib::clear(), m_fdTrec, m_fdTrecZ, m_hTrec, m_hTrecCosm, m_hTrecZ, m_nzbin, MdcCalLR, and MdcCalNLayer.
00038 { 00039 int lay; 00040 int lr; 00041 int bin; 00042 for(lay=0; lay<MdcCalNLayer; lay++){ 00043 for(lr=0; lr<MdcCalLR; lr++){ 00044 delete m_hTrec[lay][lr]; 00045 for(bin=0; bin<m_nzbin; bin++){ 00046 delete m_hTrecZ[lay][lr][bin]; 00047 } 00048 } 00049 } 00050 for(lay=0; lay<MdcCalNLayer; lay++){ 00051 for(bin=0; bin<2; bin++) delete m_hTrecCosm[lay][bin]; 00052 } 00053 delete m_fdTrec; 00054 delete m_fdTrecZ; 00055 00056 MdcCalib::clear(); 00057 }
int PreT0MdcCalib::fillHist | ( | MdcCalEvent * | event | ) | [virtual] |
Implements MdcCalib.
Definition at line 138 of file PreT0MdcCalib.cxx.
References bin, Bes_Common::DEBUG, MdcCalEvent::getEsCutFlag(), MdcCalEvent::getRecTrk(), MdcCalEvent::getTes(), IMdcCalibFunSvc::getTimeWalk(), genRecEmupikp::i, m_hTrec, m_hTrecCosm, m_hTrecZ, m_mdcFunSvc, m_mdcGeomSvc, m_nzbin, m_param, m_vp, m_zst, m_zwid, MdcCalTdcCnv, msgSvc(), and MdcCalParams::timeShift.
00138 { 00139 IMessageSvc* msgSvc; 00140 Gaudi::svcLocator() -> service("MessageSvc", msgSvc); 00141 MsgStream log(msgSvc, "PreT0MdcCalib"); 00142 log << MSG::DEBUG << "PreT0MdcCalib::fillHist()" << endreq; 00143 00144 // MdcCalib::fillHist(event); 00145 00146 int i; 00147 int k; 00148 int lay; 00149 int cel; 00150 int lr; 00151 int bin; 00152 00153 double tdc; 00154 double traw; 00155 double trec; 00156 double tdr; 00157 double t0; 00158 double tp = 0.0; 00159 double tof = 0.0; 00160 double zhit; 00161 double zprop; 00162 00163 MdcCalRecTrk* rectrk; 00164 MdcCalRecHit* rechit; 00165 00166 IDataProviderSvc* eventSvc = NULL; 00167 Gaudi::svcLocator()->service("EventDataSvc", eventSvc); 00168 00169 // get EsTimeCol 00170 double tes = event->getTes(); 00171 // cout << "tes " << tes << endl; 00172 bool esCutFg = event->getEsCutFlag(); 00173 if( ! esCutFg ) return -1; 00174 00175 int nhit; 00176 int ntrk = event -> getNTrk(); 00177 for(i=0; i<ntrk; i++){ 00178 rectrk = event->getRecTrk(i); 00179 nhit = rectrk -> getNHits(); 00180 for(k=0; k<nhit; k++){ 00181 rechit = rectrk -> getRecHit(k); 00182 lay = rechit -> getLayid(); 00183 cel = rechit -> getCellid(); 00184 lr = rechit -> getLR(); 00185 zhit = rechit -> getZhit(); 00186 tdc = rechit -> getTdc(); 00187 tdr = rechit -> getTdrift(); 00188 00189 traw = tdc * MdcCalTdcCnv; 00190 // traw = tdc; // ns 00191 00192 zprop = fabs(zhit - m_zst[lay]); 00193 bin = (int)(zprop / m_zwid[lay]); 00194 tp = zprop / m_vp[lay]; 00195 t0 = m_mdcFunSvc -> getT0(lay, cel); 00196 tof = rechit -> getTof(); 00197 00198 double adc = rechit -> getQhit(); 00199 double tw = m_mdcFunSvc->getTimeWalk(lay, adc); 00200 // cout << setw(15) << adc << setw(15) << tw << endl; 00201 00202 const MdcGeoWire* pWire = m_mdcGeomSvc -> Wire(lay, cel); 00203 double y1 = pWire -> Backward().y(); 00204 double y2 = pWire -> Forward().y(); 00205 double ymid = (y1+y2)*0.5; 00206 // if(5==m_param.particle){ // cosmic-ray 00207 // if(ymid > 0) trec = traw - tp + tof - tes + m_param.timeShift - tw; 00208 // else trec = traw - tp - tof - tes + m_param.timeShift - tw; 00209 // } else{ 00210 // trec = traw - tp - tof - tes + m_param.timeShift - tw; 00211 // } 00212 trec = traw - tp - tof - tes + m_param.timeShift - tw; 00213 00214 m_hTrec[lay][lr] -> Fill(trec); 00215 m_hTrec[lay][2] -> Fill(trec); // l-r in common 00216 if(ymid > 0) m_hTrecCosm[lay][0] -> Fill(trec); 00217 else m_hTrecCosm[lay][1] -> Fill(trec); 00218 00219 if(bin < m_nzbin){ 00220 m_hTrecZ[lay][lr][bin] -> Fill(trec); 00221 m_hTrecZ[lay][2][bin] -> Fill(trec); 00222 } 00223 } 00224 } 00225 return 1; 00226 }
Double_t PreT0MdcCalib::funTmax | ( | Double_t * | x, | |
Double_t * | par | |||
) | [static, private] |
Definition at line 445 of file PreT0MdcCalib.cxx.
References exp().
Referenced by updateConst().
00445 { 00446 Double_t fitval; 00447 fitval = par[0] + par[1] / (1 + exp((x[0]-par[2])/par[3])); 00448 return fitval; 00449 }
Double_t PreT0MdcCalib::funTmin | ( | Double_t * | x, | |
Double_t * | par | |||
) | [static, private] |
Definition at line 438 of file PreT0MdcCalib.cxx.
References exp().
Referenced by updateConst().
00438 { 00439 Double_t fitval; 00440 fitval = par[0] + par[1]*exp( -par[2]*(x[0]-par[3]) ) / 00441 ( 1 + exp( -(x[0]-par[4])/par[5] )); 00442 return fitval; 00443 }
void PreT0MdcCalib::initialize | ( | TObjArray * | hlist, | |
IMdcGeomSvc * | mdcGeomSvc, | |||
IMdcCalibFunSvc * | mdcFunSvc, | |||
IMdcUtilitySvc * | mdcUtilitySvc | |||
) | [virtual] |
Implements MdcCalib.
Definition at line 59 of file PreT0MdcCalib.cxx.
References MdcGeoWire::Backward(), bin, MdcGeoWire::Forward(), Bes_Common::INFO, m_fdTrec, m_fdTrecZ, m_hlist, m_hTrec, m_hTrecCosm, m_hTrecZ, m_mdcFunSvc, m_mdcGeomSvc, m_mdcUtilitySvc, m_nzbin, m_vp, m_zst, m_zwid, MdcCalLR, MdcCalNLayer, msgSvc(), and IMdcGeomSvc::Wire().
00060 { 00061 IMessageSvc* msgSvc; 00062 Gaudi::svcLocator() -> service("MessageSvc", msgSvc); 00063 MsgStream log(msgSvc, "PreT0MdcCalib"); 00064 log << MSG::INFO << "PreT0MdcCalib::initialize()" << endreq; 00065 00066 m_hlist = hlist; 00067 m_mdcGeomSvc = mdcGeomSvc; 00068 m_mdcFunSvc = mdcFunSvc; 00069 m_mdcUtilitySvc = mdcUtilitySvc; 00070 00071 // MdcCalib::initialize(m_hlist, m_mdcGeomSvc, m_mdcFunSvc, m_mdcUtilitySvc); 00072 00073 int lay; 00074 int lr; 00075 int bin; 00076 char hname[200]; 00077 00078 m_fdTrec = new TFolder("Trec", "Trec"); 00079 m_hlist->Add(m_fdTrec); 00080 00081 m_fdTrecZ = new TFolder("TrecZ", "TrecZ"); 00082 m_hlist->Add(m_fdTrecZ); 00083 00084 for(lay=0; lay<MdcCalNLayer; lay++){ 00085 for(lr=0; lr<MdcCalLR; lr++){ 00086 if(0 == lr) sprintf(hname, "Trec%02d_L", lay); 00087 else if(1 == lr) sprintf(hname, "Trec%02d_R", lay); 00088 else sprintf(hname, "Trec%02d_C", lay); 00089 00090 if(lay < 8) m_hTrec[lay][lr] = new TH1F(hname, "", 100, 0, 400); 00091 else m_hTrec[lay][lr] = new TH1F(hname, "", 125, 0, 500); 00092 m_fdTrec -> Add(m_hTrec[lay][lr]); 00093 } 00094 } 00095 00096 for(lay=0; lay<MdcCalNLayer; lay++){ 00097 for(int iud=0; iud<2; iud++){ 00098 if(0 == iud) sprintf(hname, "TrecCosm%02d_Up", lay); 00099 else sprintf(hname, "TrecCosm%02d_Dw", lay); 00100 if(lay < 8) m_hTrecCosm[lay][iud] = new TH1F(hname, "", 100, 0, 400); 00101 else m_hTrecCosm[lay][iud] = new TH1F(hname, "", 125, 0, 500); 00102 m_fdTrec -> Add(m_hTrecCosm[lay][iud]); 00103 } 00104 } 00105 00106 for(lay=0; lay<MdcCalNLayer; lay++){ 00107 for(lr=0; lr<MdcCalLR; lr++){ 00108 for(bin=0; bin<m_nzbin; bin++){ 00109 if(0 == lr) sprintf(hname, "Trec%02d_z%02d_L", lay, bin); 00110 else if(1 == lr) sprintf(hname, "Trec%02d_z%02d_R", lay, bin); 00111 else sprintf(hname, "Trec%02d_z%02d_C", lay, bin); 00112 00113 if(lay < 8) m_hTrecZ[lay][lr][bin] = new TH1F(hname, "", 100, 0, 400); 00114 else m_hTrecZ[lay][lr][bin] = new TH1F(hname, "", 125, 0, 500); 00115 m_fdTrecZ -> Add(m_hTrecZ[lay][lr][bin]); 00116 } 00117 } 00118 } 00119 00120 double zeast; 00121 double zwest; 00122 for(lay=0; lay<MdcCalNLayer; lay++){ 00123 zwest = m_mdcGeomSvc->Wire(lay, 0)->Forward().z(); 00124 zeast = m_mdcGeomSvc->Wire(lay, 0)->Backward().z(); 00125 m_zwid[lay] = (zeast - zwest) / (double)m_nzbin; 00126 00127 if(lay < 8) m_vp[lay] = 220.0; // *10^9 mm/s 00128 else m_vp[lay] = 240.0; // *10^9 mm/s 00129 00130 if( 0 == (lay % 2) ){ // west end 00131 m_zst[lay] = zwest; 00132 } else{ // east end 00133 m_zst[lay] = zeast; 00134 } 00135 } 00136 }
void PreT0MdcCalib::setParam | ( | MdcCalParams & | param | ) | [inline, virtual] |
Implements MdcCalib.
Definition at line 51 of file PreT0MdcCalib.h.
References m_param, and MdcCalib::setParam().
00051 { 00052 MdcCalib::setParam(param); 00053 m_param = param; 00054 }
int PreT0MdcCalib::updateConst | ( | MdcCalibConst * | calconst | ) | [virtual] |
Implements MdcCalib.
Definition at line 228 of file PreT0MdcCalib.cxx.
References Bes_Common::DEBUG, MdcCalParams::fgCalib, funTmax(), funTmin(), MdcCalibConst::getT0(), MdcCalibConst::getXtpar(), genRecEmupikp::i, MdcGeoWire::Id(), MdcCalParams::initT0, MdcCalParams::initTm, m_hTrec, m_hTrecCosm, m_mdcGeomSvc, m_param, MdcCalLR, MdcCalNLayer, msgSvc(), SetOptFit(), MdcCalParams::t0Shift, MdcCalParams::timeShift, MdcCalParams::tmaxFitChindf, MdcCalParams::tmaxFitRange, MdcCalParams::tminFitChindf, MdcCalParams::tminFitRange, and IMdcGeomSvc::Wire().
00228 { 00229 IMessageSvc* msgSvc; 00230 Gaudi::svcLocator() -> service("MessageSvc", msgSvc); 00231 MsgStream log(msgSvc, "PreT0MdcCalib"); 00232 log << MSG::DEBUG << "PreT0MdcCalib::updateConst()" << endreq; 00233 00234 // MdcCalib::updateConst(calconst); 00235 00236 // fit Tmin 00237 int lay; 00238 int wir; 00239 int lr; 00240 double t0Fit[MdcCalNLayer][MdcCalLR]; 00241 double t0Cal[MdcCalNLayer][MdcCalLR]; 00242 double tmax[MdcCalNLayer][MdcCalLR]; 00243 double initT0 = m_param.initT0; 00244 00245 int fitTminFg[MdcCalNLayer][MdcCalLR]; 00246 int fitTmaxFg[MdcCalNLayer][MdcCalLR]; 00247 double chisq; 00248 double ndf; 00249 double chindfTmin[MdcCalNLayer][MdcCalLR]; 00250 double chindfTmax[MdcCalNLayer][MdcCalLR]; 00251 char funname[200]; 00252 00253 // add for cosmic-ray 00254 TF1* ftminCosm[MdcCalNLayer][2]; 00255 double t0FitCosm[MdcCalNLayer][2]; 00256 00257 TF1* ftmin[MdcCalNLayer][MdcCalLR]; 00258 // sprintf(funname, "ftmin"); 00259 // TF1* ftmin = new TF1(funname, funTmin, 0, 150, 6); 00260 for(lay=0; lay<MdcCalNLayer; lay++){ 00261 for(lr=0; lr<MdcCalLR; lr++){ 00262 fitTminFg[lay][lr] = 0; 00263 chindfTmin[lay][lr] = -1; 00264 sprintf(funname, "ftmin%02d_%d", lay, lr); 00265 ftmin[lay][lr] = new TF1(funname, funTmin, 0, 150, 6); 00266 00267 if(1 == m_param.fgCalib[lay]){ 00268 Stat_t nEntryTot = 0; 00269 for(int ibin=1; ibin<=25; ibin++){ 00270 Stat_t entry = m_hTrec[lay][lr]->GetBinContent(ibin); 00271 nEntryTot += entry; 00272 } 00273 double c0Ini = (double)nEntryTot / 25.0; 00274 double c1Ini = (m_hTrec[lay][lr]->GetMaximum()) - c0Ini; 00275 00276 ftmin[lay][lr] -> SetParameter(0, c0Ini); 00277 ftmin[lay][lr] -> SetParameter(1, c1Ini); 00278 ftmin[lay][lr] -> SetParameter(2, 0); 00279 ftmin[lay][lr] -> SetParameter(4, initT0); 00280 ftmin[lay][lr] -> SetParameter(5, 2); 00281 00282 m_hTrec[lay][lr] -> Fit(funname, "Q", "", 00283 m_param.tminFitRange[lay][0], 00284 m_param.tminFitRange[lay][1]); 00285 gStyle -> SetOptFit(11); 00286 // chisq = ftmin[lay][lr]->GetChisquare(); 00287 // ndf = ftmin[lay][lr]->GetNDF(); 00288 chisq = ftmin[lay][lr]->GetChisquare(); 00289 ndf = ftmin[lay][lr]->GetNDF(); 00290 chindfTmin[lay][lr] = chisq / ndf; 00291 00292 if(chindfTmin[lay][lr] < m_param.tminFitChindf){ 00293 fitTminFg[lay][lr] = 1; 00294 t0Fit[lay][lr] = ftmin[lay][lr]->GetParameter(4); 00295 // t0Fit[lay][lr] = ftmin->GetParameter(4); 00296 t0Fit[lay][lr] += m_param.t0Shift; 00297 t0Cal[lay][lr] = t0Fit[lay][lr] - m_param.timeShift; 00298 } 00299 } 00300 00301 if(0 == fitTminFg[lay][lr]){ 00302 wir = m_mdcGeomSvc->Wire(lay, 0)->Id(); 00303 t0Cal[lay][lr] = calconst->getT0(wir); 00304 t0Fit[lay][lr] = t0Cal[lay][lr] + m_param.timeShift; 00305 } 00306 } 00307 00308 for(int iud=0; iud<2; iud++){ 00309 sprintf(funname, "ftminCosm_%02d_%d", lay, iud); 00310 ftminCosm[lay][iud] = new TF1(funname, funTmin, 0, 150, 6); 00311 ftminCosm[lay][iud] -> SetParameter(0, 0); 00312 ftminCosm[lay][iud] -> SetParameter(4, initT0); 00313 ftminCosm[lay][iud] -> SetParameter(5, 1); 00314 m_hTrecCosm[lay][iud] -> Fit(funname, "Q", "", 00315 m_param.tminFitRange[lay][0], 00316 m_param.tminFitRange[lay][1]); 00317 gStyle -> SetOptFit(11); 00318 t0FitCosm[lay][iud] += m_param.t0Shift; 00319 t0FitCosm[lay][iud] = ftminCosm[lay][iud]->GetParameter(4); 00320 } 00321 } 00322 00323 // fit Tmax 00324 TF1* ftmax[MdcCalNLayer][MdcCalLR]; 00325 for(lay=0; lay<MdcCalNLayer; lay++){ 00326 for(lr=0; lr<MdcCalLR; lr++){ 00327 fitTmaxFg[lay][lr] = 0; 00328 chindfTmax[lay][lr] = -1; 00329 sprintf(funname, "ftmax%02d_%d", lay, lr); 00330 ftmax[lay][lr] = new TF1(funname, funTmax, 250, 500, 4); 00331 00332 if(1 == m_param.fgCalib[lay]){ 00333 ftmax[lay][lr] -> SetParameter(2, m_param.initTm[lay]); 00334 ftmax[lay][lr] -> SetParameter(3, 10); 00335 m_hTrec[lay][lr] -> Fit(funname, "Q+", "", 00336 m_param.tmaxFitRange[lay][0], 00337 m_param.tmaxFitRange[lay][1]); 00338 gStyle -> SetOptFit(11); 00339 chisq = ftmax[lay][lr]->GetChisquare(); 00340 ndf = ftmax[lay][lr]->GetNDF(); 00341 chindfTmax[lay][lr] = chisq / ndf; 00342 if(chindfTmax[lay][lr] < m_param.tmaxFitChindf){ 00343 fitTmaxFg[lay][lr] = 1; 00344 tmax[lay][lr] = ftmax[lay][lr]->GetParameter(2); 00345 } 00346 } 00347 00348 if(0 == fitTmaxFg[lay][lr]){ 00349 tmax[lay][lr] = (calconst->getXtpar(lay, 0, lr, 6)) + t0Fit[lay][2]; 00350 } 00351 } 00352 } 00353 00354 // output for check 00355 ofstream ft0("preT0.dat"); 00356 for(lay=0; lay<MdcCalNLayer; lay++){ 00357 ft0 << setw(5) << lay << setw(3) << fitTminFg[lay][2] 00358 << setw(15) << t0Cal[lay][2] << setw(15) << t0Fit[lay][2] 00359 << setw(15) << chindfTmin[lay][2] << endl; 00360 } 00361 ft0 << endl; 00362 for(lay=0; lay<MdcCalNLayer; lay++){ 00363 ft0 << setw(5) << lay 00364 << setw(3) << fitTmaxFg[lay][0] << setw(10) << tmax[lay][0] 00365 << setw(10) << chindfTmax[lay][0] 00366 << setw(3) << fitTmaxFg[lay][1] << setw(10) << tmax[lay][1] 00367 << setw(10) << chindfTmax[lay][1] 00368 << setw(3) << fitTmaxFg[lay][2] << setw(10) << tmax[lay][2] 00369 << setw(10) << chindfTmax[lay][2] 00370 << setw(10) << tmax[lay][0] - t0Fit[lay][2] 00371 << setw(10) << tmax[lay][1] - t0Fit[lay][2] 00372 << setw(10) << tmax[lay][2] - t0Fit[lay][2] 00373 << endl; 00374 } 00375 ft0.close(); 00376 cout << "preT0.dat was written." << endl; 00377 00378 // output for cosmic T0 00379 ofstream ft0cosm("cosmicT0.dat"); 00380 for(lay=0; lay<MdcCalNLayer; lay++){ 00381 ft0cosm << setw(5) << lay << setw(15) << t0Fit[lay][2] 00382 << setw(15) << t0FitCosm[lay][0] << setw(15) << t0FitCosm[lay][1] << endl; 00383 } 00384 ft0cosm.close(); 00385 00386 // set T0 00387 int i; 00388 int nwire = m_mdcGeomSvc -> getWireSize(); 00389 for(i=0; i<nwire; i++){ 00390 lay = m_mdcGeomSvc -> Wire(i) -> Layer(); 00391 if(1 == m_param.fgCalib[lay]){ 00392 calconst -> resetT0(i, t0Cal[lay][2]); 00393 calconst -> resetDelT0(i, 0.0); 00394 } 00395 } 00396 00397 // set tm of X-T 00398 if(m_param.preT0SetTm){ 00399 int iEntr; 00400 double tm; 00401 for(lay=0; lay<MdcCalNLayer; lay++){ 00402 if(1 != m_param.fgCalib[lay]) continue; 00403 00404 for(iEntr=0; iEntr<MdcCalNENTRXT; iEntr++){ 00405 for(lr=0; lr<MdcCalLR; lr++){ 00406 tm = tmax[lay][lr] - t0Fit[lay][2]; 00407 if( (tmax[lay][lr] > m_param.tmaxFitRange[lay][0]) && 00408 (tmax[lay][lr] < m_param.tmaxFitRange[lay][1]) ){ 00409 calconst -> resetXtpar(lay, iEntr, lr, 6, tm); 00410 } 00411 } 00412 } 00413 } 00414 } 00415 00416 // set sigma 00417 int bin; 00418 double sdpar = m_param.initSigma; // mm 00419 for(lay=0; lay<MdcCalNLayer; lay++){ 00420 for(int iEntr=0; iEntr<MdcCalNENTRSD; iEntr++){ 00421 for(lr=0; lr<2; lr++){ 00422 for(bin=0; bin<MdcCalSdNBIN; bin++){ 00423 calconst -> resetSdpar(lay, iEntr, lr, bin, sdpar); 00424 } 00425 } 00426 } 00427 } 00428 00429 // delete ftmin; 00430 for(lay=0; lay<MdcCalNLayer; lay++){ 00431 for(lr=0; lr<MdcCalLR; lr++){ 00432 delete ftmin[lay][lr]; 00433 delete ftmax[lay][lr]; 00434 } 00435 } 00436 return 1; 00437 }
static Double_t PreT0MdcCalib::xtfun | ( | Double_t * | x, | |
Double_t * | par | |||
) | [static, private] |
TFolder* PreT0MdcCalib::m_fdTrec [private] |
TFolder* PreT0MdcCalib::m_fdTrecZ [private] |
TObjArray* PreT0MdcCalib::m_hlist [private] |
Reimplemented from MdcCalib.
Definition at line 34 of file PreT0MdcCalib.h.
Referenced by initialize().
TH1F* PreT0MdcCalib::m_hTrec[MdcCalNLayer][MdcCalLR] [private] |
Definition at line 46 of file PreT0MdcCalib.h.
Referenced by clear(), fillHist(), initialize(), and updateConst().
TH1F* PreT0MdcCalib::m_hTrecCosm[MdcCalNLayer][2] [private] |
Definition at line 47 of file PreT0MdcCalib.h.
Referenced by clear(), fillHist(), initialize(), and updateConst().
TH1F* PreT0MdcCalib::m_hTrecZ[MdcCalNLayer][MdcCalLR][11] [private] |
IMdcCalibFunSvc* PreT0MdcCalib::m_mdcFunSvc [private] |
Reimplemented from MdcCalib.
Definition at line 36 of file PreT0MdcCalib.h.
Referenced by fillHist(), and initialize().
IMdcGeomSvc* PreT0MdcCalib::m_mdcGeomSvc [private] |
Reimplemented from MdcCalib.
Definition at line 35 of file PreT0MdcCalib.h.
Referenced by fillHist(), initialize(), and updateConst().
IMdcUtilitySvc* PreT0MdcCalib::m_mdcUtilitySvc [private] |
Reimplemented from MdcCalib.
Definition at line 37 of file PreT0MdcCalib.h.
Referenced by initialize().
int PreT0MdcCalib::m_nzbin [private] |
Definition at line 39 of file PreT0MdcCalib.h.
Referenced by clear(), fillHist(), initialize(), and PreT0MdcCalib().
MdcCalParams PreT0MdcCalib::m_param [private] |
Reimplemented from MdcCalib.
Definition at line 32 of file PreT0MdcCalib.h.
Referenced by fillHist(), setParam(), and updateConst().
double PreT0MdcCalib::m_vp[MdcCalNLayer] [private] |
double PreT0MdcCalib::m_zst[MdcCalNLayer] [private] |
double PreT0MdcCalib::m_zwid[MdcCalNLayer] [private] |