This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
2013:groups:tools:substructure [2013/06/06 08:56] loch.peter [Configurations] |
2013:groups:tools:substructure [2013/06/07 15:46] (current) andy.buckley [Software version 1] Link to Bitbucket, etc. |
||
---|---|---|---|
Line 31: | Line 31: | ||
- | ===== Configurations ===== | + | ===== Configurations & Software ===== |
+ | |||
+ | The following configurations for the (average) number of pile-up interactions ⟨μ⟩ are suggested | ||
+ | ⟨μ⟩={30,60,120,240} | ||
+ | The actual number of pile-up interactions added to the signal event is taken from a Poisson distribution around ⟨μ⟩. | ||
+ | |||
+ | ==== Software version 1 ==== | ||
+ | |||
+ | Pile-up can be added dynamically using Peter's eventmanager software. All the software for the LH pile-up/substructure studies is being developed through a [[https://bitbucket.org/andybuckley/lh2013pileup/overview|Bitbucket repository]]: you can check out without an account. Send a request for access if you want to commit (push) to the main code repository. | ||
+ | |||
+ | (Previous version of software as a {{:2013:groups:tools:anal02.tar.gz| tarball}}.) | ||
+ | |||
+ | The main concept here is that the ROOT based raw data is converted into an ''Event'' object containing lists of ''PseudoJet''s (from ''Fastjet'') representing | ||
+ | |||
+ | * the total particle (hadron) level event (signal + pile-up) | ||
+ | * the particle (hadron) level signal event | ||
+ | * the particle (hadron) level pile-up event | ||
+ | |||
+ | The code is not very convenient to use in this version. On most systems I expect a | ||
+ | <code>make all</code> should work to compile the library and the example in ''anal02.C''. For implementing your own analysis, please check the ''anal02.C'' and ''Zprime_Py8::analyze(Event& rEvt)'' (your playground) in ''Zprime_Py8.C'' as examples. The program supports a few command line arguments | ||
+ | <code> | ||
+ | anal02.exe --help --mu=<mu> --nevts=<number of (signal) events> | ||
+ | --sigflist=<text file with list of signal files> | ||
+ | --puflist=<text file with list of pile-up files> | ||
+ | </code> | ||
+ | Some hints: | ||
+ | * ''--help'' prints a brief usage instruction (which I think is not up-to-date, so please ignore!) | ||
+ | * ''--mu=<mu>'' expects the number of interactions per event. if ''<mu> < 0'', exactly ''|<mu>|'' interactions are collected into one event. ''<mu> > 0'' means a Poisson-distributed number of pile-up interactions will be collected from the pile-up (minimum bias) event samples. | ||
+ | * if you specify both signal and pile-up input, ''<mu>'' should be the number of pile-up events to be added to one signal event | ||
+ | * ''--sigflist=<file>'' specifies a text file (no "" around file name!) with a list of signal files to be processed. If this list is not given, ''Zprime_Py8::analyze(...)'' will not be invoked. | ||
+ | * ''--puflist=<file>'' specifies a text file (no "" around file name!) with a list of pile-up files to be processed. If this list is not given, only signal events are analyzed (you should set ''--mu=1'' in this case!). | ||
- | Pile-up can be added dynamically using this **{{:2013:groups:tools:anal02.tar.gz| software}}**. The following configurations for the (average) number of pile-up interactions ⟨μ⟩ are suggested | ||
- | ⟨μ⟩={30,60,120,240} | ||
===== Methods ===== | ===== Methods ===== | ||
+ | The idea is to test filtering/grooming techniques as a way to reduce the sensiticity to bsoft backgrounds (initially the filter used with the BDRS tagger was meant to reduce the sensitivity to the UE). | ||
+ | |||
+ | Following the Filter tool in FastJet3, we need (i) a jet definition to break the jet into subjets and (ii) a selection criterion that decides what subjets are kept. We'll consider 3 options: | ||
+ | |||
+ | * "Filtering": | ||
+ | * cluster with Cambridge/Aachen, Rfilt=ηfiltRjet [ηfilt between 1/3 and 1/2 sounds about right] | ||
+ | * keep the nfilt hardest subjets [nfilt=2.3.4] | ||
+ | * "Trimming": | ||
+ | * cluster with Cambridge/Aachen, Rfilt=0.2 | ||
+ | * keep all subjets with pt,sub>fpt,jet [f between 0.01 and 0.05 should be fine] | ||
+ | * "Area-filtering": | ||
+ | * cluster with Cambridge/Aachen, Rfilt=0.2 | ||
+ | * keep all subjets with pt,sub>ρAsub+nσ√Asub [n between 2 and 5] | ||
+ | |||
+ | The 3rd option is new and based on the idea that the PU scales ρ and σ should set the scale of the PU/noise removal. | ||
+ | |||
+ | For pileup sutraction, one usually want to first subtract the average PU contamination (ρAsub) from each subjet before deciding which subjets are to be kept. This is implemented in the fastjet::Filter. Note that with "Area-filtering" you should then cut with p_{t,\rm sub} > n \sigma \sqrt{A_{\rm sub}} since the baseline has already been subtracted. | ||
- | |||