340 likes | 521 Views
LHC computing. HEP 101 Lecture #8 ayana arce. Outline. Major computing systems for LHC experiments: (ATLAS) Data Reduction (ATLAS) Data Production (ATLAS) Data Analysis End-user tools: Exercise: plotting and fitting data with ROOT homework: writing a toy Monte Carlo.
E N D
LHC computing HEP 101 Lecture #8 ayanaarce
Outline • Major computing systems for LHC experiments: • (ATLAS) Data Reduction • (ATLAS) Data Production • (ATLAS) Data Analysis • End-user tools: • Exercise: plotting and fitting data with ROOT • homework: writing a toy Monte Carlo
managing the data volume Data reduction
40 MHz 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 Hardware Trigger (prefilter) 10010011000001 1011010010011100 100011011010001 11001010111110 01000011111010 101001101101 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 10010011000001 1011010010011100 100011011010001 11001000101000 0100001100010 101001101001 75 kHz Event Filter (software event selection) 300 Hz data reconstruction and distribution ~500 MB/sec overview: the data reduction chain
The TDAQ system • Trigger: • (almost) real-time filteringofcollisionevents • Eventsreadevery~25ns: • how long doesthetriggertaketo decide? • DAQ: • Sendsevent data throughthetriggerandreadoutsystems • Mergestriggerand detector conditions data withevent data
ATLAS triggersystem local (event fragments) ATLAS full events ~1700 nodes (8/12 core, 16/24 GB) dedicated L3 ~10 Gb links flexible L2/L3 processors 10 Gb links
managing the data volume Data Production
Global data processing and storage • LHC data output estimate: 15 PB/year (and we prefer multiple copies) • Stored and processed on WLCG: shared by all CERN experiments • Your “local” Tier-1: BNL • Your local Tier-3: in your backpack! • Every stored physics event is modeled by many simulated events • thus most resources are spent in Monte Carlo simulation note: ATLAS computingsystemsalonemusthandle MILLIONS ofproduction/analysisjobsdaily
ATLAS Tiercomputing: roles backup RAW reprocess (re-reconstruct) store RAW calibrate reconstruct (6k cores) analyze create MC Tier 2 Tier 1 Tier 2 Tier 0 物理学者 Tier 2 Tier 1 Tier 1 38 T2 centers 120k cores total cernVM environment Tier 2 Tier 2 Tier 2 Tier 2 Tier 2 Tier 2 physicists físicos
Production: data convert ATLAS trigger bytestream RDO (raw) esd D3PD RECO MERGE& derive aod aod pattern recognition sorting tag
Production: Monte Carlo MONTE CARLO PRODUCTION CHAIN RDO (raw) esd D3PD RECO MERGE & derive aod aod tag
What is Monte Carlo, really? Monte Carlo calculation of π • HEP predictions require a lot of convolution integrals • one reason: QM! pick random x, random y if y2 < 1-x2: increment area
What is Monte Carlo? Monte Carlo calculation of π • HEP predictions require a lot of convolution integrals • one reason: QM! • The Monte Carlo Method: • use random numbers as an integration tool pick random x, random y if y2 < 1-x2: increment area thisisprobablythesimplestwayto use a computer for a calculation… butitworks!
What is Monte Carlo? • The Monte Carlo Method: • use random numbers as an integration tool • Very intuitive picture of convolution integrals: • a series of choices from probability distributions Z picks mass electron ET and decay angles
What is Monte Carlo? • The Monte Carlo Method: • use random numbers as an integration tool • Very intuitive picture of convolution integrals: • a series of choices from probability distributions Z picks mass electron ET observed electron ET calorimeter (mis)measurement and decay angles
Meet your (3-part) Monte Carlo Slides: Sjöstrand
Meet your MC: PYTHIA, HERWIG, MadGraph, MCFM, MC@NLO, BaurMC, POWHEG, &c.…
Meet your MC: PYTHIA, HERWIG, MadGraph, MCFM, MC@NLO, BaurMC, POWHEG, &c.…
What’sthethirdpart? • Detector simulation: up to 5 minutes for a high-massevent (lotsofparticles, eachindividuallytrackedthroughhundredsof detector elements) whyisthisessential?
measurements and discoveries! Data Analysis
ATLAS computing for users Programminglanguages Interactive interfaces Maininterface: athena readsall data formats C++ ; steered by python thisrunsallsimulationandreconstruction can runyouranalysistoo…butexcecutabletypically 4GB Light interface: ROOT • Main programming languages: • FORTRAN (some generators) • C++ (main reconstruction algorithms, analysis) • python (steering, analysis)
Data representation event • always organized by event • global quantities: • metadata • missing energy… • physics object lists: • muons • jets • tracks • “truth” particles… • object properties: • hits on tracks • jet constituents µ jet jet jet track track track track track track track track hit track hit “n-tuple” “tree”
User’s interface to nature: histograms Pseudocode: histo = makeHisto(nbins=50, firstbin=0*GeV, lastbin=200*GeV) for thisEvent in allEvents: if HasZBoson( thisEvent ): m = reconstructZBosonMass( thisEvent ) histo.FillWith( m ) ``Hello World’’ for HEP computing: making a histogram TH1F(“name”, “title; x title; y title”, nBins, firstBinValue, LastBinValue) TH1F::Fill(value,weight)
note: in code examples, your input is given in green Example!
Let’s measure the kaon lifetime (again)! • open the ROOT file: • you% root Hep101Data_2013.root • How to see everything in the file: • root [1] new TBrowser(); the file containsonehistogram (takenfromyourhomework)
SomeROOT features: root [0] double x(3.0),y(4.0); sqrt(x*x+y*y) (const double)5.00000000000000000e+00 root [1] TLorentzVector pion(1500,0,0,1506.482); root [2] printf("The mass is %3.4g\n", pion.M( )); The mass is 139.6 root [3] TMath::C( <TAB> Double_t C() // m s^-1 root [4] TMath::C() (Double_t)2.99792458000000000e+08
Mathematicalfunctions in ROOT • Simple: FitPanel (under Tools) • Alsoeasy: root [9] KaonDecays->Fit(“expo”) • More explicit: root [10] TF1 f("f","[0]*exp(-x/(100*[1]*TMath::C()))",0,60); //free parameters specified in brackets root [11] KaonDecays->Fit(f); • Complete program (from Dave)
Nextsteps • You can download ROOT: • root.cern.ch • Homework: writeyourown Monte Carlo generatortosolveProblem 2 fromlecture5 a neutral pionbeamwithenergy E decaystotwophotons. Whatisthephotonenergydistribution in thelaboratoryframe? • Feel free tocontactatarce@phy.duke.eduwithsolutions, questions, etc!!
homework hint: random numbers • Use the ROOT class TRandom3 for good performance. • Example • root [1] TRandom3 r; • root [2] float random1 = r.Gaus(0,35); //generate a gaussian-distributed random number with mean 0 and width 35; • root [3] float random2 = r.Flat(0,2*TMath::Pi()); //generate a scalar meson decay angle
Postscript: ifyoudon’tlike C++ >>> import ROOT #from ROOT import * also works >>> pion = ROOT.TLorentzVector(1500,0,0,1506.482); >>> print "The mass is", pion.M(), "MeV" The mass is 139.5994854 MeV