Back to home page

sPhenix code displayed by LXR

 
 

    


Warning, /analysis/JS-Jet/TrackJetQAMaker/README.md is written in an unsupported language. File is not indexed.

0001 # TrksInJetQA
0002 
0003 A Fun4All package to generate QA plots for tracks in jets and related objects. Can be
0004 run as a plain `SubsysReco` module or as a QA module.
0005 
0006 The top-level macro included here illustrates both use cases.
0007 
0008 ## General Usage
0009 
0010 There are four categories of plots that can be produced -- tracker hits, tracker clusters,
0011 tracks, and jets -- both inclusively and inside of jets (track, calo, or otherwise).
0012 
0013 The most relevant user-configurable options (set in the `Configure` call) are:
0014 
0015 ```
0016   .verbose     # verbosity
0017   .doDebug     # turn on debugging comments
0018   .doInclusive # make inclusive plots
0019   .doInJet     # make in-jet plots
0020   .doHitQA     # make tracker hit plots
0021   .doClustQA   # make tracker cluster plots
0022   .doTrackQA   # make track plots
0023   .doJetQA     # make jet plots
0024   .rJet        # resolution parameter of jets analyzed
0025   .jetInNode   # DST node with jets to be analyzed
0026 ```
0027 
0028 Where additional configurable options can seen in `src/TracksInJetsQAMakerConfig.h`.
0029 
0030 Finally, code is compiled in the usual way:
0031 
0032 ```
0033 # in src/
0034 cd build
0035 ../autogen.sh --prefix=$MYINSTALL
0036 make -j 4
0037 make install
0038 ```
0039 
0040 ## Code Structure
0041 
0042 The code is organized into 3 layers:
0043 
0044   1. **Histogram Managers:** the lowest level, which define what histograms are
0045      going to be generated and how they're going to be filled for each category
0046      (hit, cluster, track, jet).
0047   2. **Histogram Fillers:** these call the histogram managers and define the
0048      various loops for each mode (inclusive, in-jet).
0049   3. **Top Level Modules:** finally, these call the histogram fillers and pass
0050      along the generated histograms to the relevant places.
0051 
0052 All chunks of code that are common to the 4 managers and 2 fillers are
0053 consolidated into relevant base classes -- `BaseHistogramManager`, `BaseHistogramFiller`.
0054 
0055 Lastly, alongside the core pieces described above, there are a few additional headers with
0056 things to streamline the code and centralize related information.
0057 
0058   - `TrksInJetQAHist.h:` consoldiates the binning schemes used across all three sub-modules,
0059   - `TrksInJetQATypes.h:` defines a variety of commonly-used or clunky types,
0060   - `TrksInJetQAConfig.h:` defines a struct used to collect **all** user-configurable options.