Warning, /Alignment/OfflineValidation/README_DMR.md is written in an unsupported language. File is not indexed.
0001 # Track-Hit Residuals Validation (DMR, DRnR, etc.)
0002
0003 ## General info
0004 ```
0005 validations:
0006 DMR:
0007 <step_type>:
0008 <step_name>:
0009 <options>
0010 ```
0011
0012 DMR validation runs in consequent steps of 4 possible types:
0013 - single (validation analysis by DMR_cfg.py)
0014 - merge (DMRmerge macro)
0015 - (optional) trends (DMRtrends macro)
0016 - (optional) averaged (mkLumiAveragedPlots.py script)
0017 Step name is arbitrary string which will be used as a reference for consequent steps.
0018 Merge job will only start if all corresponding single jobs are done.
0019 Trends/Averaged job will start if all corresponding merge jobs are done.
0020 Trends and averaged jobs will run in parallel.
0021 Averaged job consists of 3 types of sub-jobs (submission is automatized internally).
0022
0023 ## Single DMR jobs
0024 Single jobs can be specified per run (IoV as well). In case of MC, IoV is specified to arbitrary 1.
0025
0026 Variable | Default value | Explanation/Options
0027 -------- | ------------- | --------------------
0028 IOV | None | List of IOVs/runs defined by integer value. IOV 1 is reserved for MC.
0029 Alignments | None | List of alignments. Will create separate directory for each.
0030 dataset | See defaultInputFiles_cff.py | Path to txt file containing list of datasets to be used. If file is missing at EOS or is corrupted - job will eventually fail (most common issue).
0031 goodlumi | cms.untracked.VLuminosityBlockRange() | Path to json file containing lumi information about selected IoV - must contain list of runs under particular IoV with lumiblock info. Format: `IOV_Vali_{}.json`
0032 magneticfield | true | Is magnetic field ON? Not really needed for validation...
0033 maxevents | 1 | Maximum number of events before cmsRun terminates.
0034 maxtracks | 1 | Maximum number of tracks per event before next event is processed.
0035 trackcollection | "generalTracks" | Track collection to be specified here, e.g. "ALCARECOTkAlMuonIsolated" or "ALCARECOTkAlMinBias" ...
0036 tthrbuilder | "WithAngleAndTemplate" | Specify TTRH Builder
0037 usePixelQualityFlag | True | Use pixel quality flag?
0038 cosmicsZeroTesla | False | Is this validation for cosmics with zero magnetic field?
0039 vertexcollection | "offlinePrimaryVertices" | Specify vertex collection to be used.
0040
0041 ## Merge DMR job
0042 Its name do not need to match single job name but option `singles` must list all single jobs to be merged.
0043 Needs to be specified in order to run averaged/trends jobs.
0044 DMR merged plot style can be adjusted from global plotting style (see `Alignment/OfflineValidation/test/example_DMR_full.yaml`)
0045
0046 Variable | Default value | Explanation/Options
0047 -------- | ------------- | --------------------
0048 singles | None | List of strings matching single job names to be merged in one plot.
0049 methods | ["median","rmsNorm"] | List of types of plots to be produced. Available: median,mean,rms,meanNorm,rmsNorm + X/Y suffix optionally
0050 curves | ["plain"] | List of additional plot type otions. Available: plain,split,layers,layersSeparate,layersSplit,layersSplitSeparate
0051 customrighttitle | "" | Top right title. (To be re-implemented)
0052 legendheader | "" | Legend title.
0053 usefit | false | Use gaussian function to fit distribution otherwise extract mean and rms directly from histogram.
0054 legendoptions | ["mean","rms"] | Distribution features to be displayed in stat box: mean,meanerror,rms,rmserror,modules,all
0055 minimum | 15 | Minimum number of hits requested.
0056 bigtext | false | Legend text size should be enlarged.
0057 moduleid | None | Plot residuals for selected list of module IDs. (debugging)
0058
0059 ## Trends DMR job
0060 Its name do not need to match merge neither single job name but option `merges` must list all merge jobs to be put in trend plot.
0061 Trend plot style is defined globally for all trend plots (see `Alignment/OfflineValidation/test/example_DMR_full.yaml`)
0062
0063 Variable | Default value | Explanation/Options
0064 -------- | ------------- | --------------------
0065 merges | None | List of merge job names to be processed for trends.
0066 Variables | ["median"] | Trend plot type to be plotted: DrmsNR, median
0067 firstRun | 272930 | Specify starting run to be plotted.
0068 lastRun | 325175 | Specify the last run to be considered.
0069 labels | None | List of string tags to be added in output rootfile.
0070 year | Run2 | Enforce year tag to be included in lumiInputFile option specified in trend style (This is extra measure)
0071
0072 ## Averaged DMR job
0073 Its name do not need to match merge neither single job name but option `merges` must list all merge jobs to be put in averaged distribution.
0074 Each merge job to be passed to averager must consist of data OR MC single jobs exclusively (no mix of Data and MC).
0075 Some style options are accessible from global style config (see `Alignment/OfflineValidation/test/example_DMR_full.yaml`).
0076 DISCLAIMER: this tool is not to be used blindly. Averaged distributions will only make sense if the same number of events and tracks is considered for each IOV.
0077
0078 Variable | Default value | Explanation/Options
0079 -------- | ------------- | --------------------
0080 merges | None | List of merge job names to be processed for averaged distributions.
0081 lumiPerRun | None | List of lumi-per-run files.
0082 lumiPerIoV | None | List of lumi-per-iov files.
0083 maxfiles | 700 | Maximum number of files to be merged per sub-job.
0084 lumiMC | None | Define scale factors to be used for normalisation of MC from the list of merge jobs. Format: `["(<igroup>::)<merge_name>::<scale_factor>"]`. `<igroup>` is optional integer in case of multiple MC groups to be merged.
0085
0086 Example 1:
0087 ```
0088 lumiMC:
0089 - 1::PaperMC2018ideal::64482.432
0090 - 2::PaperMC2018realistic::64482.432
0091 - 2::PaperMC2016::20433.379
0092 ```
0093 Group 2 will merge PaperMC2018realistic simulation object with PaperMC2016 simulation object assuming respective scale factors 64482.432/(64482.432+20433.37) and 20433.37/(64482.432+20433.37).
0094 Group 1 only consists of one object and will be plotted alongside Group 2 curve.
0095
0096 Example 2:
0097 ```
0098 lumiMC:
0099 - PaperMC2018ideal::64482.432
0100 - PaperMC2018realistic::64482.432
0101 - PaperMC2016::20433.379
0102 ```
0103 Only one group is considered merging 3 simulation objects with corresponding scale factors 64482.432/(64482.432+64482.432+20433.379), ...