Skip to content

Commit

Permalink
Merge branch 'main' into add_np_sum
Browse files Browse the repository at this point in the history
  • Loading branch information
artlbv authored Oct 14, 2024
2 parents e6476b4 + 752ff83 commit 6403c96
Show file tree
Hide file tree
Showing 656 changed files with 41,521 additions and 17,995 deletions.
4 changes: 2 additions & 2 deletions .flake8
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[flake8]
ignore = W391, W503
ignore = W391, W503, E712
max-line-length = 88
extend-ignore = E203, E704, E266
exclude = menu_tools/object_performance/quality_obj.py
exclude = menu_tools/object_performance/quality_obj.py,menu_tools/**/test_*.py
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,10 +1,22 @@
**/__pycache__/*
*.pyc
pyenv/*
*.swp
**/*.png
**/*.pdf
**/.DS_Store
**/*.parquet
**/*.root
rates/table/out/*
rates/table/cache/**/*
rates/table/lib/*
rates/table/rates_tables/*
*.backup*
**/tmp/*
*~
outputs
menu_tools.egg-info
dist
ph2-menu-tools
prod_ph2-menu-tools
dev_ph2-menu-tools
32 changes: 19 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,38 @@

## Trigger efficiencies and rates

This repository contains the python-based framework for the measurement of matching efficiencies, trigger turn-on curves, and scalings for the assessment of the physics performance of the CMS Phase-2 L1 Menu.
This repository contains the python-based framework for the measurement of matching efficiencies,
trigger turn-on curves, and scalings for the assessment of the physics performance of the CMS Phase-2 L1 Menu.

The repository is organized as follows:
For further instructions on how to run the tools, see the `docs`.
Some documentation can also be found in the [wiki](https://github.com/cms-l1-dpg/Phase2-L1MenuTools/wiki).

* `objectPerformance`: tools for the measurement of the performance (matching efficiency, L1 turn-on efficiency curves, and online-to-offline scalings) of L1 objects. The definition of the L1 objects should follow the recommendations detailed [here](https://twiki.cern.ch/twiki/bin/view/CMS/PhaseIIL1TriggerMenuTools).
## Setup

* `rates`: tools for the measurement of trigger rates starting from the scalings derived with the tools in `objectPerformance`.
These tools are expected to be used primarily on lxplus.
To clone the repository run

Detailed instructions on how to run each step of the workflow are
provided in each folder.

## Setup of Python environment
**Note:** The code should run without any setup on `lxplus`.
```bash
git clone [email protected]:cms-l1-dpg/Phase2-L1MenuTools.git
```

A standard venv with Python3.11 can be created on lxplus
via `python3.11 -m venv <name_of_venv>` and all necessary
dependencies installed via `pip install -r requirements.txt`:
dependencies installed via `pip install -e .`:

```bash
python3.11 -m venv <name_of_venv>
source <name_of_venv>/bin/activate
pip install .
pip install -e .
```

You can then execute the tools (e.g. for object performance) via
**ATTENTION:** If you do not use the `-e` flag (editable), you will `pip install . --upgrade` whenever you pull changes.

You can then execute the tools via

```python
python -m menu_tools.object_performance.plotter <path_to_config>
cache_objects <path_to_config>
object_performance <path_to_config>
rate_plots <path_to_config>
rate_table <path_to_config>
```
1 change: 1 addition & 0 deletions cache
75 changes: 0 additions & 75 deletions configs/V22/caching.yaml

This file was deleted.

94 changes: 0 additions & 94 deletions configs/V22/object_performance/electron_matching.yaml

This file was deleted.

96 changes: 0 additions & 96 deletions configs/V22/object_performance/electron_matching_eta.yaml

This file was deleted.

Loading

0 comments on commit 6403c96

Please sign in to comment.