par clebomb a model independent event generator
play

Par$cleBomb: a model independent event generator Andy - PowerPoint PPT Presentation

Par$cleBomb: a model independent event generator Andy Furmanski Sim mee$ng Feb 21 2017 Andy Furmanski 1 Model dependency A common discussion within


  1. Par$cleBomb: ¡a ¡model ¡ independent ¡event ¡generator ¡ Andy ¡Furmanski ¡ Sim ¡mee$ng ¡Feb ¡21 ¡2017 ¡ Andy ¡Furmanski ¡ 1 ¡

  2. Model ¡dependency ¡ • A ¡common ¡discussion ¡within ¡the ¡neutrino ¡xsec ¡ community: ¡ – How ¡model-­‑dependent ¡is ¡this ¡measurement? ¡ – Oh, ¡it’s ¡completely ¡model-­‑independent ¡ – So ¡how ¡do ¡you ¡es$mate ¡the ¡efficiency? ¡ – Oh, ¡we ¡use ¡MC ¡with ¡the ¡default ¡GENIE ¡model ¡ – so ¡your ¡data ¡depends ¡on ¡the ¡GENIE ¡model… ¡ • One ¡problem ¡is ¡that ¡GENIE ¡only ¡produces ¡events ¡ in ¡parts ¡of ¡phase ¡space ¡that ¡GENIE ¡wants ¡to ¡ – Different ¡models ¡can ¡cover ¡different ¡phase-­‑spaces ¡ – What ¡if ¡nature ¡fills ¡some ¡part ¡of ¡phase ¡space ¡that ¡no ¡ generator ¡does? ¡ Andy ¡Furmanski ¡ 2 ¡

  3. But ¡what ¡can ¡we ¡do ¡about ¡it? ¡ • Instead ¡of ¡relying ¡on ¡GENIE’s ¡predic$ons, ¡just ¡put ¡ events ¡everywhere ¡in ¡the ¡phase ¡space ¡you ¡care ¡ about! ¡ • Use ¡a ¡par$cle ¡bomb ¡ – Like ¡a ¡par$cle ¡gun, ¡but ¡with ¡more ¡than ¡one ¡par$cle… ¡ • SingleGen ¡currently ¡can ¡generate ¡mul$ple ¡ par$cles, ¡but ¡their ¡loca$ons ¡are ¡either: ¡ – all ¡random ¡within ¡an ¡event ¡ – fixed ¡event-­‑to-­‑event ¡ Andy ¡Furmanski ¡ 3 ¡

  4. Task ¡#1 ¡ • Modify ¡SingleGen ¡ to ¡be ¡able ¡to ¡generate ¡ mul$ple ¡par$cles ¡all ¡in ¡a ¡single, ¡random ¡ loca$on ¡ • new ¡fcl ¡parameter ¡– ¡ SingleVertex: true • If ¡set ¡to ¡true, ¡it ¡selects ¡a ¡loca$on ¡first, ¡then ¡ picks ¡par$cle ¡kinema$cs ¡for ¡each ¡par$cle ¡ individually ¡ • I ¡believe ¡this ¡is ¡a ¡non-­‑breaking ¡change ¡ Andy ¡Furmanski ¡ 4 ¡

  5. Did ¡I ¡do ¡it ¡right? ¡ • Generated ¡10k ¡mu+p ¡events ¡in ¡uBooNE ¡ 120 10000 100 8000 number ¡of ¡ 80 GEANT ¡ muon ¡start ¡point ¡(x) ¡ 6000 60 primaries ¡ 40 4000 20 2000 0 0 50 100 150 200 250 10000 0 distance ¡from ¡muon ¡start ¡to ¡ 0 1 2 3 4 5 6 7 8 9 10 8000 proton ¡start ¡(x) ¡ 6000 • Plots ¡look ¡the ¡same ¡for ¡y ¡and ¡z ¡ posi$ons ¡ 4000 • I ¡seem ¡to ¡be ¡genera$ng ¡pairs ¡of ¡ 2000 par$cles ¡in ¡a ¡single, ¡random ¡loca$on ¡ 0 − 10 − 8 − 6 − 4 − 2 0 2 4 6 8 10 Andy ¡Furmanski ¡ 5 ¡

  6. Awesome, ¡sounds ¡perfect! ¡ • It’s ¡not . ¡ • Sta3s3cs ¡will ¡become ¡your ¡enemy. ¡ ¡Quickly ¡ • You ¡have ¡to ¡ be ¡a ¡bit ¡ smart ¡about ¡it. ¡ – This ¡is ¡up ¡to ¡each ¡analyser ¡to ¡do ¡ – But, ¡for ¡example, ¡how ¡much ¡do ¡you ¡care ¡about ¡the ¡proton ¡ efficiency ¡for ¡a ¡4GeV/c ¡proton? ¡ • So ¡maybe ¡you ¡don’t ¡need ¡so ¡many ¡events ¡produced ¡over ¡there? ¡ • Useful ¡idea: ¡ – Generate ¡events ¡according ¡to ¡input ¡histogram ¡distribu$ons ¡ – Decouple ¡angle, ¡momentum, ¡mul$plicity, ¡etc ¡ – But ¡s$ck ¡to ¡“realis$c” ¡areas ¡of ¡phase ¡space, ¡and ¡weight ¡ according ¡to ¡how ¡much ¡you ¡care ¡ Andy ¡Furmanski ¡ 6 ¡

  7. I ¡need ¡an ¡example! ¡ • GENIE ¡couples ¡muon ¡ • But ¡if ¡we ¡take ¡away ¡ angle ¡and ¡momentum ¡ the ¡correla$on: ¡ implicitly: ¡ 400 1 900 θ muon cos 350 800 60 0.8 300 700 600 250 0.6 50 500 200 0.4 400 150 300 40 0.2 100 200 50 0 100 30 0 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 − 1 − 0.8 − 0.6 − 0.4 − 0.2 0 0.2 0.4 0.6 0.8 1 − 0.2 muon momentum (GeV/c) muon cos θ 1 θ muon cos 0.4 20 − 0.8 0.6 − 0.6 10 0.4 0.8 − 0.2 1 0 − 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 0 muon momentum (GeV/c) 0.2 − − 0.4 − 0.6 We’ve ¡filled ¡in ¡this ¡area ¡whilst ¡s$ll ¡retaining ¡ − 0.8 the ¡general ¡shape ¡of ¡the ¡distribu$on ¡ ¡ − 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 muon momentum (GeV/c) Andy ¡Furmanski ¡ 7 ¡

  8. Task ¡#2 ¡ • Modify ¡SingleGen ¡ to ¡accept ¡input ¡histograms ¡ for ¡par$cle ¡momenta/angles ¡ • Simply ¡set ¡Pdist ¡and ¡AngleDist ¡to ¡2 ¡ • fcl ¡parameters: ¡ Note ¡– ¡the ¡angular ¡ histogram ¡is ¡a ¡2D ¡ – HistogramFile: “filename.root” histogram ¡in ¡ thetaxz ¡,thetayz ¡ – Phist: [“h_muonmom”, “h_protonmom”] – ThetaXzYzHist: [“h_muonangle”,”h_protonangle”] • Just ¡need ¡a ¡file ¡with ¡histograms ¡in ¡ • Can ¡re-­‑use ¡histograms ¡for ¡mul$ple ¡par$cles ¡ Andy ¡Furmanski ¡ 8 ¡

  9. And ¡did ¡I ¡do ¡this ¡one ¡right? ¡ • 10k ¡muon+proton ¡events ¡generated ¡ • Simple ¡toy ¡input ¡histograms ¡– ¡SetBinContent(i, ¡i) ¡ – i.e. ¡linearly ¡increasing ¡ • Generated ¡events ¡match ¡input ¡histograms ¡ pp pp phimu phimu thetamu thetamu 700 700 700 input histogram input histogram input histogram 600 600 600 generated events generated events generated events 500 500 500 400 400 400 300 300 300 200 200 200 100 100 100 0 0 0 0 0.5 1 1.5 2 2.5 3 0 100 200 300 400 500 600 700 800 900 1000 0 1 2 3 4 5 6 Andy ¡Furmanski ¡ 9 ¡

  10. Wait, ¡I ¡want ¡to ¡vary ¡my ¡mul$plicity! ¡ • I ¡didn’t ¡implement ¡a ¡mul$plicity ¡varia$on ¡ – Mainly ¡because ¡it’s ¡slightly ¡more ¡complex ¡ – Also ¡because ¡of ¡the ¡sta$s$cs ¡problem ¡ • Phase ¡space ¡just ¡grows ¡and ¡grows ¡ • My ¡(Wes’s) ¡solu$on: ¡ – Use ¡a ¡histogram ¡with ¡a ¡large ¡bin ¡at ¡0 ¡ – 0 ¡momentum ¡par$cles ¡won’t ¡get ¡tracked ¡by ¡G4 ¡ – Therefore ¡the ¡mul$plicity ¡will ¡be ¡less ¡at ¡random ¡ • Alterna$ve ¡solu$on ¡ – Think ¡about ¡the ¡exact ¡topologies ¡you ¡care ¡about, ¡and ¡ produce ¡separate ¡samples ¡ Andy ¡Furmanski ¡ 10 ¡

  11. Conclusions ¡ • I ¡have ¡ changes ¡available ¡for ¡larsim , ¡that ¡enable ¡2 ¡ things: ¡ – Producing ¡mul3ple ¡par3cles ¡ in ¡a ¡single, ¡random ¡ loca$on ¡ – Selec3ng ¡momenta ¡and ¡angles ¡from ¡input ¡ histograms ¡ • I ¡believe ¡this ¡is ¡all ¡non-­‑breaking ¡ • This ¡is ¡poten$ally ¡useful, ¡but ¡analysers ¡s$ll ¡need ¡ to ¡ think ¡carefully ¡about ¡the ¡sta3s3cs ¡available ¡ – Most ¡useful ¡when ¡ restric3ng ¡yourself ¡to ¡a ¡specific ¡ topology ¡ • Code ¡is ¡ready ¡to ¡merge ¡ Andy ¡Furmanski ¡ 11 ¡

Recommend


More recommend