#include <NuCounter.h>
|
|
|
Definition at line 83 of file NuCounter.cxx. References MSG. 00084 {
00085 MSG("NuCounter",Msg::kDebug)
00086 <<"Running NuCounter Destructor..."<<endl;
00087
00088
00089 MSG("NuCounter",Msg::kDebug)
00090 <<"Finished NuCounter Destructor"<<endl;
00091 }
|
|
||||||||||||||||||||
|
Definition at line 321 of file NuCounter.cxx. References abs(), NtpTHTrack::completeall, NtpTHTrack::completeslc, NuEvent::evt, NuReco::GetBestShower(), NuReco::GetShowerWithIndexX(), NtpMCStdHep::IdHEP, NtpTHTrack::index, NtpSRTrack::index, NtpSRShower::index, NtpSREvent::index, NuLibrary::Instance(), NuReco::IsTrkWithDimuon(), NuReco::IsTrkWithMuonFromKaonDecay(), NuReco::IsTrkWithMuonFromNotNuNotPiNotKaonNotCharm(), NuReco::IsTrkWithMuonFromPionDecay(), NtpStRecord::mc, MSG, mtrkstdhepId, NtpTHTrack::neumc, NtpTHShower::neumc, NtpTHEvent::neumc, NtpTHTrack::neustdhep, print(), NuReco::PrintStdhep(), NtpTHTrack::purity, NuLibrary::reco, NuEvent::run, NuEvent::snarl, NtpStRecord::stdhep, NtpStRecord::thevt, NtpStRecord::thshw, NtpStRecord::thtrk, and NtpTHTrack::trkstdhep. Referenced by NuDemoModule::Ana(), and NuAnalysis::ChargeSeparationOneSnarl(). 00325 {
00326 TClonesArray& thtrkTca=(*ntp.thtrk);//TruthHelper Track TCA
00327 const Int_t numthtrks=thtrkTca.GetEntriesFast();
00328 if (numthtrks<=0) {
00329 return;
00330 }
00331
00332 //get an instance of the code library
00333 NuLibrary& lib=NuLibrary::Instance();
00334
00335 Int_t evtmc=-1;
00336 Int_t trkmc=-1;
00337 Int_t shwmc=-1;
00338
00339 TClonesArray& thevtTca=(*ntp.thevt);//TruthHelper Event TCA
00340 const Int_t numthevts=thevtTca.GetEntriesFast();
00341 if (numthevts>0) {
00342 const NtpTHEvent& thevt=
00343 *dynamic_cast<NtpTHEvent*>(thevtTca[evt.index]);
00344 evtmc=thevt.neumc;
00345 }
00346
00347 TClonesArray& thshwTca=(*ntp.thshw);//TruthHelper Shower TCA
00348 const Int_t numthshws=thshwTca.GetEntriesFast();
00349 if (numthshws>0) {
00350 Int_t bestShower=lib.reco.GetBestShower(nu);
00351 const NtpSRShower* pshw=lib.reco.GetShowerWithIndexX(ntp,evt,
00352 bestShower-1);
00353 if (pshw) {
00354 const NtpSRShower& shw=*pshw;
00355 const NtpTHShower& thshw=
00356 *dynamic_cast<NtpTHShower*>(thshwTca[shw.index]);
00357 shwmc=thshw.neumc;
00358 }
00359 }
00360
00361 const NtpTHTrack& thtrk=
00362 *dynamic_cast<NtpTHTrack*>(thtrkTca[trk.index]);
00363 trkmc=thtrk.neumc;
00364
00365 /*
00366 if (trkmc!=evtmc || (shwmc!=evtmc && shwmc>=0)) {
00367 MSG("NuPlots",Msg::kWarning)
00368 <<endl<<endl<<endl
00369 <<"evtmc="<<evtmc
00370 <<", trkmc="<<trkmc
00371 <<", shwmc="<<shwmc
00372 <<endl<<endl<<endl<<endl;
00373 }
00374 */
00375
00376 TClonesArray& hepTca=(*ntp.stdhep);
00377 //const Int_t numHeps=hepTca.GetEntriesFast();
00378
00379 const NtpMCStdHep& stdhep=
00380 *dynamic_cast<NtpMCStdHep*>(hepTca[thtrk.trkstdhep]);
00381
00382 Int_t trkstdhepId=stdhep.IdHEP;
00383
00384 if (abs(trkstdhepId)!=13) {
00385 MSG("NuPlots",Msg::kDebug)
00386 <<"Found THTrack, index="<<thtrk.index
00387 <<", neumc="<<thtrk.neumc
00388 <<", neustdhep="<<thtrk.neustdhep
00389 <<", trkstdhep="<<thtrk.trkstdhep
00390 <<", trkstdhepId="<<trkstdhepId
00391 <<", purity="<<thtrk.purity
00392 <<", completeall="<<thtrk.completeall
00393 <<", completeslc="<<thtrk.completeslc
00394 <<endl;
00395 }
00396
00397 //check if the particle came from special processes
00398 //if so then create custom ID number
00399 if (lib.reco.IsTrkWithDimuon(ntp,trk)) {
00400 if (trkstdhepId>0) trkstdhepId+=100000;
00401 else trkstdhepId+=-100000;
00402 }
00403 if (lib.reco.IsTrkWithMuonFromPionDecay(ntp,trk)) {
00404 if (trkstdhepId>0) trkstdhepId+=900000;
00405 else trkstdhepId+=-900000;
00406 }
00407 if (lib.reco.IsTrkWithMuonFromKaonDecay(ntp,trk)) {
00408 if (trkstdhepId>0) trkstdhepId+=9000000;
00409 else trkstdhepId+=-9000000;
00410 }
00411 if (lib.reco.IsTrkWithMuonFromNotNuNotPiNotKaonNotCharm(ntp,
00412 trk)) {
00413 if (trkstdhepId>0) trkstdhepId+=90000000;
00414 else trkstdhepId+=-90000000;
00415 }
00416
00417 Bool_t print=false;
00418 //Bool_t print=true;
00419 //if (abs(trkstdhepId)>=100000 && print) {
00420 if (abs(trkstdhepId)==22 && print) {
00421 MSG("NuPlots",Msg::kInfo)
00422 <<"Found THTrack, index="<<thtrk.index
00423 <<", neumc="<<thtrk.neumc
00424 <<", neustdhep="<<thtrk.neustdhep
00425 <<", trkstdhep="<<thtrk.trkstdhep
00426 <<", trkstdhepId="<<trkstdhepId
00427 <<", purity="<<thtrk.purity
00428 <<", completeall="<<thtrk.completeall
00429 <<", completeslc="<<thtrk.completeslc
00430 <<endl;
00431 TClonesArray& mcTca=*ntp.mc;
00432 const NtpMCTruth& mc=
00433 *(dynamic_cast<NtpMCTruth*>(mcTca[thtrk.neumc]));
00434 lib.reco.PrintStdhep(ntp,mc);
00435 cout<<nu.run<<" "<<nu.snarl<<" "<<nu.evt<<endl;
00436 }
00437
00438 //count up the stdhep ids
00439 mtrkstdhepId[trkstdhepId]++;
00440 }
|
|
|
Definition at line 95 of file NuCounter.cxx. References badSpillCounter, NuCuts::CalcTotalPot(), NuLibrary::cuts, evtCounter, evtInFidVolCounter, evtNotIsLI, evtNotlitime, evtWithTrkCounter, goodBestTrkCounter, goodBeyondTrkEndCounter, goodDeltaTCounter, goodDirectionCosineCounter, goodEvtsPerSlcCounter, goodFitChi2Counter, goodFitProbCounter, goodFitSigQPCounter, goodPIDCounter, goodRecoEnCounter, goodShwFractCounter, goodSpillCounter, goodTrkPassCounter, goodUVDiffCounter, NuLibrary::Instance(), MSG, nuNoQCounter, nuNoTrkCounter, nuNQCounter, nuPQCounter, totalPot, totalPotBad, and trkInFidVolCounter. 00096 {
00097 //get an instance of the code library
00098 NuLibrary& lib=NuLibrary::Instance();
00099
00100 Float_t totalPotHist=0;
00101 Float_t totalPotBadHist=0;
00102 lib.cuts.CalcTotalPot(totalPotHist,totalPotBadHist);
00103 Float_t pcPotRejected=0;
00104 if (totalPotHist) pcPotRejected=100.*totalPotBadHist/totalPotHist;
00105
00106 cout<<"Number of good spills="<<goodSpillCounter<<endl
00107 <<"Number of bad spills ="<<badSpillCounter<<endl
00108 <<"Sum of good+bad spill="<<badSpillCounter+goodSpillCounter<<endl
00109 <<endl
00110 <<"Total POT good ="<<totalPot*1e12<<endl
00111 <<"Total POT bad ="<<totalPotBad*1e12<<endl
00112 <<"Total POT good (hist)="<<totalPotHist*1e12<<endl
00113 <<"Total POT bad (hist)="<<totalPotBadHist*1e12
00114 <<" ("<<pcPotRejected<<"%)"<<endl;
00115
00116 MSG("NuAnalysis",Msg::kInfo)
00117 <<endl<<"*************************************"<<endl
00118 <<"Total Events ="<<evtCounter<<endl
00119 <<"Evt not litime ="<<evtNotlitime<<endl
00120 <<"Evt not IsLI ="<<evtNotIsLI<<endl
00121 <<"Evts in Fid ="<<evtInFidVolCounter<<endl
00122 <<"Evts w/ Trk ="<<evtWithTrkCounter<<endl
00123 <<"Good Best Trk ="<<goodBestTrkCounter<<endl
00124 <<"Track Pass ="<<goodTrkPassCounter<<endl
00125 <<"Good Dir. Cos. ="<<goodDirectionCosineCounter<<endl
00126 <<"Good UVDiff ="<<goodUVDiffCounter<<endl
00127 <<"Trk Vtx in Fid ="<<trkInFidVolCounter<<endl
00128 <<"Good reco energy="<<goodRecoEnCounter<<endl
00129 <<"Good Fit SigQP ="<<goodFitSigQPCounter<<endl
00130 <<"Good Fit Prob ="<<goodFitProbCounter<<endl
00131 <<"Good Fit Chi2 ="<<goodFitChi2Counter<<endl
00132 <<"Good Delta T ="<<goodDeltaTCounter<<endl
00133 <<"Good EvtPerSlc ="<<goodEvtsPerSlcCounter<<endl
00134 <<"Good PID ="<<goodPIDCounter<<endl
00135 <<"Good beyond tEnd="<<goodBeyondTrkEndCounter<<endl
00136 <<"Good shw fract ="<<goodShwFractCounter<<endl
00137 <<"*************************************"<<endl;
00138
00139 Float_t pcPQ=0;
00140 if (nuPQCounter+nuNQCounter>0) pcPQ=100.*nuPQCounter/
00141 (nuPQCounter+nuNQCounter);
00142 MSG("NuAnalysis",Msg::kInfo)
00143 <<endl
00144 <<"Neutrinos with NQ="<<nuNQCounter<<endl
00145 <<"Neutrinos with PQ="<<nuPQCounter
00146 <<" ("<<pcPQ<<"%)"<<endl
00147 <<"Neutrinos with undefined charge (q=0)="<<nuNoQCounter<<endl
00148 <<"Events with no track="<<nuNoTrkCounter<<endl
00149 <<"Sum NQ+PQ ="<<nuNQCounter+nuPQCounter<<endl
00150 <<"Sum NQ+PQ+Q0+NoTrk="<<nuNQCounter+nuPQCounter+nuNoQCounter+nuNoTrkCounter<<endl
00151 <<endl;
00152
00153 }
|
|
|
Definition at line 219 of file NuCounter.cxx. References badSpillCounter, NuCuts::CalcTotalPot(), NuLibrary::cuts, entry, evtCounter, evtInFidVolCounter, evtNotlitime, evtWithTrkCounter, goodCoilCurrentSpillCounter, goodSpillCounter, NuLibrary::Instance(), MSG, nuNQCounter, nuPQCounter, totalPot, and totalPotBad. Referenced by NuDSTAna::ConcatenateDSTs(), and NuAnalysis::StoreOrFinishTree(). 00220 {
00221 //get an instance of the code library
00222 const NuLibrary& lib=NuLibrary::Instance();
00223
00224 Float_t totalPotHist=0;
00225 Float_t totalPotBadHist=0;
00226 lib.cuts.CalcTotalPot(totalPotHist,totalPotBadHist);
00227 Float_t pcPotRejected=0;
00228 if (totalPotHist) pcPotRejected=100.*totalPotBadHist/totalPotHist;
00229
00230 MSG("NuAnalysis",Msg::kInfo)
00231 <<endl<<"*************************************"<<endl
00232 <<"POT good beam ="<<totalPot*1e12<<endl
00233 <<"POT bad beam ="<<totalPotBad*1e12<<endl
00234 <<"POT good (hist)="<<totalPotHist*1e12<<endl
00235 <<"POT bad (hist)="<<totalPotBadHist*1e12
00236 <<" ("<<pcPotRejected<<"%)"<<endl;
00237
00238 MSG("NuAnalysis",Msg::kInfo)
00239 <<endl<<"*************************************"<<endl
00240 <<"Snarls processed ="<<entry+1<<endl
00241 <<"Good coil current ="<<goodCoilCurrentSpillCounter<<endl
00242 <<"Good beam spills ="<<goodSpillCounter<<endl
00243 <<"Bad beam spills ="<<badSpillCounter<<endl
00244 <<"Sum good+bad spills="<<badSpillCounter+goodSpillCounter
00245 <<endl;
00246
00247 MSG("NuAnalysis",Msg::kInfo)
00248 <<endl<<"*************************************"<<endl
00249 <<"Total Events ="<<evtCounter<<endl
00250 <<"Evts w/ Trk ="<<evtWithTrkCounter<<endl
00251 <<"Evt not litime ="<<evtNotlitime<<endl
00252 <<"Evt Vtx in Fid ="<<evtInFidVolCounter<<endl
00253 <<"*************************************"<<endl;
00254
00255 Float_t pcPQ=0;
00256 if (nuPQCounter+nuNQCounter>0) pcPQ=100.*nuPQCounter/
00257 (nuPQCounter+nuNQCounter);
00258 MSG("NuAnalysis",Msg::kInfo)
00259 <<endl
00260 <<"Neutrinos with NQ="<<nuNQCounter<<endl
00261 <<"Neutrinos with PQ="<<nuPQCounter
00262 <<" ("<<pcPQ<<"%)"<<endl
00263 <<"Sum NQ+PQ ="<<nuNQCounter+nuPQCounter<<endl
00264 <<endl;
00265 }
|
|
|
Definition at line 269 of file NuCounter.cxx. References NuCuts::CalcTotalPot(), NuLibrary::cuts, evtCounter, evtInFidVolCounter, evtNotIsLI, evtWithTrkCounter, goodBeamDetPOTCountingStage, goodBeamInfoDBCounter, goodDataQualityCounter, goodDirectionCosineCounter, goodFitProbCounter, goodFitSigQPCounter, goodPIDCounter, goodTimeToNearestSpillCounter, goodTrkPassCounter, NuLibrary::Instance(), MSG, nuNQCounter, nuPQCounter, totalPot, totalPotBad, totalPotDB, and trkInFidVolCounter. Referenced by NuDSTAna::BRevAna(), NuDSTAna::Contamination(), NuDSTAna::DPSystematic(), NuDSTAna::FDTestAna(), NuDSTAna::FluxComponents(), NuDSTAna::JeffsTestAna(), NuDSTAna::MakeDstPQ(), NuDSTAna::MakeFCTree(), NuDSTAna::MakeMicroDst2010(), NuDSTAna::MakeMicroDstFakeData(), NuDSTAna::MakeMicroDstForCSSSystematics(), NuDSTAna::MakeMicroDstHe(), NuDSTAna::MakeMicroDstJJEPresel(), NuDSTAna::MakeMicroDstWithStdCCRecoAndCuts(), NuDSTAna::MakeSelMicroDST(), NuDSTAna::MMTransition(), NuDSTAna::NDOsc(), NuDSTAna::NDQPRB(), NuDSTAna::NDTestAna(), NuDSTAna::NewFieldAna(), NuCutImps::NuCutsSelection::PrintSummary(), NuDSTAna::QPStudy(), NuDSTAna::RHCTest(), NuDSTAna::SelectorTable(), NuDSTAna::StdCCAna(), NuDSTAna::StdNMBAna(), and NuDSTAna::VsTime(). 00270 {
00271 //get an instance of the code library
00272 const NuLibrary& lib=NuLibrary::Instance();
00273
00274 Float_t totalPotHist=0;
00275 Float_t totalPotBadHist=0;
00276 lib.cuts.CalcTotalPot(totalPotHist,totalPotBadHist);
00277 Float_t pcPotRejected=0;
00278 if (totalPotHist) pcPotRejected=100.*totalPotBadHist/totalPotHist;
00279
00280 MSG("NuAnalysis",Msg::kInfo)
00281 <<endl<<"*************************************"<<endl
00282 <<"POT good beam ="<<totalPot*1e12<<endl
00283 <<"POT bad beam ="<<totalPotBad*1e12<<endl
00284 <<"POT good (hist)="<<totalPotHist*1e12<<endl
00285 <<"POT bad (hist)="<<totalPotBadHist*1e12<<endl
00286 <<"POT good (DB) ="<<totalPotDB*1e12<<endl
00287 <<" ("<<pcPotRejected<<"%)"<<endl;
00288
00289 MSG("NuAnalysis",Msg::kInfo)
00290 <<endl<<"*************************************"<<endl
00291 <<"Total Events ="<<evtCounter<<endl
00292 <<"Good BeamDet@POT="<<goodBeamDetPOTCountingStage<<endl
00293 <<"Evt Vtx in Fid ="<<evtInFidVolCounter<<endl
00294 <<"Evts w/ Trk ="<<evtWithTrkCounter<<endl
00295 <<"Trk Vtx in Fid ="<<trkInFidVolCounter<<endl
00296 <<"Evt not IsLI ="<<evtNotIsLI<<endl
00297 <<"Good Data Qual. ="<<goodDataQualityCounter<<endl
00298 <<"Good Time2Spill ="<<goodTimeToNearestSpillCounter<<endl
00299 <<"Good Beam DBInfo="<<goodBeamInfoDBCounter<<endl
00300 <<"Good TrkFitPass ="<<goodTrkPassCounter<<endl
00301 <<"Good Dir. Cos. ="<<goodDirectionCosineCounter<<endl
00302 <<"Good PID ="<<goodPIDCounter<<endl
00303 <<"Good Fit SigQP ="<<goodFitSigQPCounter<<endl
00304 <<"Good Fit Prob ="<<goodFitProbCounter<<endl
00305 <<"*************************************"<<endl;
00306
00307 Float_t pcPQ=0;
00308 if (nuPQCounter+nuNQCounter>0) pcPQ=100.*nuPQCounter/
00309 (nuPQCounter+nuNQCounter);
00310 MSG("NuAnalysis",Msg::kInfo)
00311 <<endl
00312 <<"Neutrinos with NQ="<<nuNQCounter<<endl
00313 <<"Neutrinos with PQ="<<nuPQCounter
00314 <<" ("<<pcPQ<<"%)"<<endl
00315 <<"Sum NQ+PQ ="<<nuNQCounter+nuPQCounter<<endl
00316 <<endl;
00317 }
|
|
|
Definition at line 157 of file NuCounter.cxx. References badSpillCounter, NuCuts::CalcTotalPot(), NuLibrary::cuts, entry, evtCounter, evtInFidVolCounter, evtNotIsLI, evtNotlitime, evtWithTrkCounter, goodBeamDetPOTCountingStage, goodBeamInfoDBCounter, goodCoilCurrentSpillCounter, goodDataQualityCounter, goodDirectionCosineCounter, goodFitProbCounter, goodFitSigQPCounter, goodPIDCounter, goodSpillCounter, goodTimeToNearestSpillCounter, goodTrkPassCounter, NuLibrary::Instance(), MSG, nuNQCounter, nuPQCounter, totalPot, totalPotBad, and trkInFidVolCounter. Referenced by NuAnalysis::LIRejectionTest(). 00158 {
00159 //get an instance of the code library
00160 const NuLibrary& lib=NuLibrary::Instance();
00161
00162 Float_t totalPotHist=0;
00163 Float_t totalPotBadHist=0;
00164 lib.cuts.CalcTotalPot(totalPotHist,totalPotBadHist);
00165 Float_t pcPotRejected=0;
00166 if (totalPotHist) pcPotRejected=100.*totalPotBadHist/totalPotHist;
00167
00168 MSG("NuAnalysis",Msg::kInfo)
00169 <<endl<<"*************************************"<<endl
00170 <<"POT good beam ="<<totalPot*1e12<<endl
00171 <<"POT bad beam ="<<totalPotBad*1e12<<endl
00172 <<"POT good (hist)="<<totalPotHist*1e12<<endl
00173 <<"POT bad (hist)="<<totalPotBadHist*1e12
00174 <<" ("<<pcPotRejected<<"%)"<<endl;
00175
00176 MSG("NuAnalysis",Msg::kInfo)
00177 <<endl<<"*************************************"<<endl
00178 <<"Snarls processed ="<<entry+1<<endl
00179 <<"Good coil current ="<<goodCoilCurrentSpillCounter<<endl
00180 <<"Good beam spills ="<<goodSpillCounter<<endl
00181 <<"Bad beam spills ="<<badSpillCounter<<endl
00182 <<"Sum good+bad spills="<<badSpillCounter+goodSpillCounter
00183 <<endl;
00184
00185 MSG("NuAnalysis",Msg::kInfo)
00186 <<endl<<"*************************************"<<endl
00187 <<"Total Events ="<<evtCounter<<endl
00188 <<"Evt not litime ="<<evtNotlitime<<endl
00189 <<"Good BeamDet@POT="<<goodBeamDetPOTCountingStage<<endl
00190 <<"Evt Vtx in Fid ="<<evtInFidVolCounter<<endl
00191 <<"Evts w/ Trk ="<<evtWithTrkCounter<<endl
00192 <<"Trk Vtx in Fid ="<<trkInFidVolCounter<<endl
00193 <<"Evt not IsLI ="<<evtNotIsLI<<endl
00194 <<"Good Data Qual. ="<<goodDataQualityCounter<<endl
00195 <<"Good Time2Spill ="<<goodTimeToNearestSpillCounter<<endl
00196 <<"Good Beam DBInfo="<<goodBeamInfoDBCounter<<endl
00197 <<"Good TrkFitPass ="<<goodTrkPassCounter<<endl
00198 <<"Good Dir. Cos. ="<<goodDirectionCosineCounter<<endl
00199 <<"Good PID ="<<goodPIDCounter<<endl
00200 <<"Good Fit SigQP ="<<goodFitSigQPCounter<<endl
00201 <<"Good Fit Prob ="<<goodFitProbCounter<<endl
00202 <<"*************************************"<<endl;
00203
00204 Float_t pcPQ=0;
00205 if (nuPQCounter+nuNQCounter>0) pcPQ=100.*nuPQCounter/
00206 (nuPQCounter+nuNQCounter);
00207 MSG("NuAnalysis",Msg::kInfo)
00208 <<endl
00209 <<"Neutrinos with NQ="<<nuNQCounter<<endl
00210 <<"Neutrinos with PQ="<<nuPQCounter
00211 <<" ("<<pcPQ<<"%)"<<endl
00212 <<"Sum NQ+PQ ="<<nuNQCounter+nuPQCounter<<endl
00213 <<endl;
00214
00215 }
|
|
|
Definition at line 444 of file NuCounter.cxx. References abs(), NuGeneral::IdHEPAsString(), and mtrkstdhepId. Referenced by NuAnalysis::StoreOrFinishTree(). 00445 {
00446 const NuGeneral general;
00447
00448 typedef map<Int_t,Int_t>::const_iterator mIter;
00449
00450 Int_t totalEvents=0;
00451
00452 MsgFormat pcfmt("%3.2f");
00453 MsgFormat errfmt("%.1f");
00454
00455 //sum up the total events
00456 for (mIter it=mtrkstdhepId.begin();it!=mtrkstdhepId.end();++it) {
00457 totalEvents+=it->second;
00458 }
00459 if (totalEvents==0) return;
00460
00461 multimap<Int_t,Int_t> mOpp;
00462
00463 cout<<endl<<"Particle associated with track:"<<endl;
00464
00465 //loop and switch the key and value in the map
00466 for (mIter it=mtrkstdhepId.begin();it!=mtrkstdhepId.end();++it) {
00467 mOpp.insert(pair<Int_t,Int_t>(it->second,it->first));
00468
00469 string special="";
00470 Int_t trkstdhepId=it->first;
00471 Int_t N=it->second;
00472
00473 if (abs(trkstdhepId)>90000000){
00474 if (trkstdhepId>0) trkstdhepId-=90000000;
00475 else trkstdhepId+=90000000;
00476 special="What is this???";
00477 }
00478 else if (abs(trkstdhepId)>9000000){
00479 if (trkstdhepId>0) trkstdhepId-=9000000;
00480 else trkstdhepId+=9000000;
00481 special="k->mu";
00482 }
00483 else if (abs(trkstdhepId)>900000){
00484 if (trkstdhepId>0) trkstdhepId-=900000;
00485 else trkstdhepId+=900000;
00486 special="pi->mu";
00487 }
00488 else if (abs(trkstdhepId)>100000){
00489 if (trkstdhepId>0) trkstdhepId-=100000;
00490 else trkstdhepId+=100000;
00491 special="dimuon";
00492 }
00493
00494 string idhep=general.IdHEPAsString(trkstdhepId);
00495
00496 Float_t err=1;
00497 if (N!=0) err=sqrt(static_cast<Float_t>(N));
00498
00499 Float_t pc=100.*N/totalEvents;
00500 cout<<idhep<<" (id="<<trkstdhepId<<"), N="<<N
00501 <<" +/- "<<errfmt(err)
00502 <<" ("<<pcfmt(pc)<<"%)"<<" "<<special<<endl;
00503 }
00504
00505
00506 cout<<endl<<"Particle associated with track:"<<endl;
00507 //loop and print out info
00508 for (mIter it=(--(mOpp.end()));it!=(--(mOpp.begin()));--it) {
00509 string special="";
00510 //Int_t trkstdhepId=it->first;
00511 //Int_t N=it->second;
00512 Int_t trkstdhepId=it->second;
00513 Int_t N=it->first;
00514
00515 if (abs(trkstdhepId)>90000000){
00516 if (trkstdhepId>0) trkstdhepId-=90000000;
00517 else trkstdhepId+=90000000;
00518 special="What is this???";
00519 }
00520 else if (abs(trkstdhepId)>9000000){
00521 if (trkstdhepId>0) trkstdhepId-=9000000;
00522 else trkstdhepId+=9000000;
00523 special="k->mu";
00524 }
00525 else if (abs(trkstdhepId)>900000){
00526 if (trkstdhepId>0) trkstdhepId-=900000;
00527 else trkstdhepId+=900000;
00528 special="pi->mu";
00529 }
00530 else if (abs(trkstdhepId)>100000){
00531 if (trkstdhepId>0) trkstdhepId-=100000;
00532 else trkstdhepId+=100000;
00533 special="dimuon";
00534 }
00535
00536 string idhep=general.IdHEPAsString(trkstdhepId);
00537
00538 Float_t err=1;
00539 if (N!=0) err=sqrt(static_cast<Float_t>(N));
00540
00541 Float_t pc=100.*N/totalEvents;
00542 cout<<idhep<<" (id="<<trkstdhepId<<"), N="<<N
00543 <<" +/- "<<errfmt(err)
00544 <<" ("<<pcfmt(pc)<<"%)"<<" "<<special<<endl;
00545 }
00546 }
|
|
|
Definition at line 32 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuAnalysis::MakeFullDST(), NuCounter(), Print(), PrintFullDST(), and PrintNMB(). |
|
|
Definition at line 27 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::MakeFullDST(), NuCounter(), PrintFullDST(), and PrintNMB(). |
|
|
|
Definition at line 40 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::MakeFullDST(), NuCounter(), Print(), PrintFullDST(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 38 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 37 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuAnalysis::MakeFullDST(), NuCounter(), Print(), PrintFullDST(), and PrintNMB(). |
|
|
Definition at line 41 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintFullDST(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 39 of file NuCounter.h. Referenced by NuCounter(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 47 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuCounter(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 42 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 57 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 30 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::MakeFullDST(), NuCounter(), PrintFullDST(), and PrintNMB(). |
|
|
Definition at line 45 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 54 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 44 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 55 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 53 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 52 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuFCExperimentFactory::IsGoodStdCuts(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 51 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuFCExperimentFactory::IsGoodStdCuts(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 56 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuFCExperimentFactory::IsGoodStdCuts(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 48 of file NuCounter.h. Referenced by NuAnalysis::LIRejectionTest(), NuCounter(), and Print(). |
|
|
Definition at line 58 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 31 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuAnalysis::MakeFullDST(), NuCounter(), Print(), PrintFullDST(), and PrintNMB(). |
|
|
Definition at line 46 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 43 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 49 of file NuCounter.h. Referenced by NuCounter(), and Print(). |
|
|
Definition at line 64 of file NuCounter.h. Referenced by CountTrkStdhepId(), and PrintStdhepCounter(). |
|
|
Definition at line 61 of file NuCounter.h. Referenced by NuAnalysis::MakeFullDST(), NuCounter(), and Print(). |
|
|
Definition at line 62 of file NuCounter.h. Referenced by NuAnalysis::MakeFullDST(), NuCounter(), and Print(). |
|
|
|
|
Definition at line 33 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuAnalysis::MakeFullDST(), NuCounter(), Print(), PrintFullDST(), PrintMicroDST(), PrintNMB(), and NuDSTAna::VsTime(). |
|
|
Definition at line 35 of file NuCounter.h. Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuAnalysis::MakeFullDST(), NuCounter(), Print(), PrintFullDST(), PrintMicroDST(), and PrintNMB(). |
|
|
Definition at line 34 of file NuCounter.h. Referenced by NuCounter(), PrintMicroDST(), and NuDSTAna::VsTime(). |
|
|
Definition at line 50 of file NuCounter.h. Referenced by NuDemoModule::Ana(), NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts(), NuFCExperimentFactory::IsGoodStdCuts(), NuAnalysis::LIRejectionTest(), NuCounter(), Print(), PrintMicroDST(), and PrintNMB(). |
1.3.9.1