1 / 19

From n-Tuples to b-Tags

From n-Tuples to b-Tags. ?. P. Track. P. Jet. Next goal: Boosted Sphericity. Boost. b meson. Detector at rest. b meson at rest. Axel Naumann, D Ø University of Nijmegen, The Netherlands. Next goal: Boosted Sphericity. Boost = f (meson mass)

bowie
Download Presentation

From n-Tuples to b-Tags

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. From • n-Tuples • to • b-Tags ? Dutch Morning Meeting

  2. P Track P Jet Next goal: Boosted Sphericity Boost b meson Detector at rest b meson at rest Axel Naumann, DØ University of Nijmegen, The Netherlands Dutch Morning Meeting

  3. Next goal: Boosted Sphericity • Boost = f(meson mass) • Define asymmetry A where A=f(boost)=f(meson mass) as • with i running over all tracks • Use as new cut parameter Dutch Morning Meeting

  4. Data • Data used to check feasibility of parameters: • 2000 events QCD • 2000 events inclusive b b-bar • 0 min bias, jet Pt>10GeV2 as for now I need (reco’ed) jets only, • generated with Onne’s and Pythia’s help • Ran the whole chain until d0recoanalyze p08-10 • Using SEED to analyze d0recoanalyze output n-tuple Dutch Morning Meeting

  5. SEED(formerly known as D0nau) • Loads of changes since last talk, mainly • renamed to SEED, • documentation on the web: http://www-d0.fnal.gov/nikhef • based on ROOT’s TTree: Much faster, able to handle huge amounts of data • easier to use interfaces • new cvs packages seed and seed_framework • might be added as standard ROOT package • BUT: Still tested only under Windows • ROOT benefits a lot: found about 0.5 ROOT bugs/day… Dutch Morning Meeting

  6. SEED – Problems • Mainly due to ROOT: • Only few ROOT users use Windows, many bug don’t exist in Windows • ROOT still under development, severe changes producing severe bugs, but incredibly helpful development team! • Efforts to get it under control: • Send a bug report every 2nd day • Finally able to compile (and debug) ROOT for Windows locally on D0NTWG03 (dual 1.3GHz Xeon 4, 1GB RAM), formerly allocated as Windows build machine for L3, now allocated to compile ROOT, only one user so far… Dutch Morning Meeting

  7. SEED – Why? • Common analysis classes • OO code • reusable code • n-tuple independent code • looks & feels like ROOT code • use all the ROOT code already there • It so much looks like ROOT it might soon be a part of it! Dutch Morning Meeting

  8. SEED – What? • Define a mapping (called “seeds”) from n-tuple column to class member • SEED converts n-tuple into a file containing data in classes, not in columns, using this mapping • Access data in classes in file, use classes’ (and ROOT’s) methods to analyze and plot your data Dutch Morning Meeting

  9. SEED – main() • using namespace seed; • int main(int argc, char* argv[]){ • TEventSample* pEventSample = • TEventSample::Load("../jets.root"); • // create the data objects • TJCCGJet jet(pEventSample); • TOPRTParticle prt(pEventSample); Dutch Morning Meeting

  10. SEED – main() (cont.) • for (iEvent=0; iEvent< pEventSample->GetNEvents(); iEvent++){ • pEventSample->SetEvent(iEvent); • for (iJet=0; iJet< jet.Size(); iJet++){ • dPhiJet=jet[iJet].Get4Vec().Phi(); • for (int iPrt=0; iPrt < prt.Size(); iPrt++){ • dPhi=prt[iPrt].GetTrack().Get4Vec().Phi(); • h1.Fill((dPhi-dPhiJet)/kPI); • }; // for Particles • }; // for Jets • }; // for Event Dutch Morning Meeting

  11. SEED – Seeds (Header) • #include "seed/TCaloJet.h" • #include "seed/TSeed.h" • namespace seed{ • MAKE_SEED( TCaloJet, TJCCGJet ) • } Dutch Morning Meeting

  12. SEED – Seeds (Source 1/3) • #include "TJCCGJet.h" • #include "seed/TSingleEntryTree.h" • namespace seed { • bool TJCCGJet_Seed::FillSeedData(TSingleEntryTree &tree, const int iEventNo) { • --- Fill data from n-tuple into SEED --- • return true; • } • } // end namespace seed Dutch Morning Meeting

  13. SEED – Seeds (Source 2/3) • In …::FillSeedData(…): • tree.SetBranch("JCCG"); • for (int iJet = 0; iJet<(int)tree.GetValue("JCCGnjet"); iJet++) • { • TCaloJet* pJet=NewEntry(); • tree.SetIndex(iJet); • --- initialize pJet with data from n-tuple --- • } Dutch Morning Meeting

  14. SEED – Seeds (Source 3/3) • From TCaloJet’s header: • TCaloJet& TCaloJet::Set(const TLorentzVector& lv, const double dWidthEta, const double dWidthPhi, const double dEMF, const int iN90); • pJet->Set( • TLorentzVector(tree.GetValue("JCCGPx"), • tree.GetValue("JCCGPy"), • tree.GetValue("JCCGPz"), • tree.GetValue("JCCGE")), • tree.GetValue("JCCGEtaW"), • tree.GetValue("JCCGPhiW"), • tree.GetValue("JCCGEMF"), • tree.GetValue("JCCGn90")); Dutch Morning Meeting

  15. SEED – n-Tuple to Class • #include "seed/TEventSample.h" • #include "TJCCGJet.h" • #include "TOPRTParticle.h" • using namespace seed; • int main(int argc, char* argv[]) • { • TEventSample es; • es.Create("bbbar.ntpl","bbbar.root"); • return 0; • } Dutch Morning Meeting

  16. SEED – Get it, it’s free! • Look at http://www-d0.fnal.gov/nikhef to download the package. • Or d0-cvs checkout seed and seed_framework. • Or ask me to send you a copy by email. Dutch Morning Meeting

  17. SEED – The result: HEP classes • Or: HEPEVT+++ • Discussion on • Design of standard MC classes • Particle • Branching Ratios • Stack (decay tree) • PDG connection • Design of standard Physics Objects classes • Feasibility • Interfaces • Analysis methods Dutch Morning Meeting

  18. HEP Classes • Currently 14 members from 5 experiments • D0, CDF, ALICE, BaBar, Atlas • Participate or inform yourself at • http://listserv.fnal.gov/archives/root_hep_classes.html • or send me an email. • First meeting during ROOT workshop, see status report at • http://www-root.fnal.gov/root2001/presentations/session6/HEP%20(Particle)%20Classes%20in%20Root.pdf Dutch Morning Meeting

  19. HEP Classes - Status • PDG implementations in StdHep++ and ROOT will be merged (incl. branching ratios) • Discussion on how to implement vertex and stack class, using ALICE and StdHep++ libraries as starting point; review of both implementations w.r.t. requirements specified during discussion session • Physics Objects: Many doubts (Politics? Do experiments share a non-trivial part of the results of their event reconstruction? Will we all die before we have a standard set of classes?). Going to discuss feasibility on actual (example) implementation. Dutch Morning Meeting

More Related