This project presents a simulation-based study of invariant mass reconstruction in a simplified high-energy physics environment. The goal is to model particle collision events, incorporate realistic detector effects, and statistically extract a resonance signal from background using sideband estimation techniques.
In collider experiments such as those at the LHC, resonant particles appear as peaks in invariant mass distributions above a smooth background. Extracting such signals requires careful statistical treatment and background modeling.
This notebook reproduces that essential workflow in a simplified but conceptually accurate framework.
The simulation models a Z boson–like resonance at:
- True mass: 91 GeV
- Intrinsic width (signal spread): 2 GeV
Two types of events are generated:
- Signal events: Gaussian-distributed around 91 GeV
- Background events: Uniformly distributed between 70–110 GeV
To mimic detector resolution, Gaussian smearing with σ = 1.5 GeV is applied to all events.
N_signal = 5000
N_background = 5000
true_mass = 91 # GeV
signal_width = 2 # GeV
detector_resolution = 1.5 # GeV
mass_window = [70, 110] # GeVTotal simulated events: 10,000
- Generate Gaussian-distributed signal events
- Generate uniformly distributed background events
- Combine signal and background samples
- Apply detector smearing
- Reconstruct invariant mass distribution
- Define signal region (88–94 GeV)
- Estimate background using sideband method
- Extract signal yield
From the reconstructed data:
- Mean invariant mass: 90.55 GeV
- Standard deviation: 8.38 GeV
- Median invariant mass: 90.87 GeV
The mean lies close to the true simulated mass (91 GeV), confirming that the signal peak dominates the central region despite background contamination.
The larger standard deviation reflects the presence of uniformly distributed background events.
Signal window defined as:
88 GeV < m < 94 GeV
- Number of events in signal window: 4613 events
- Fraction of total dataset in signal window: 0.461
Sidebands defined as:
- Left sideband: 75–85 GeV
- Right sideband: 97–107 GeV
Estimated background in signal window: 1299 events
Signal estimate:
Signal = (Events in signal window) − (Estimated background)
- Extracted signal events: 3313 events
- Signal-to-background ratio (S/B): 2.55
This demonstrates a statistically significant resonance structure emerging from noisy detector data.
This analysis illustrates how:
- Detector resolution broadens physical signals
- Background modeling is essential for meaningful interpretation
- Sideband subtraction provides a simple yet powerful signal extraction technique
- Statistical reasoning transforms raw distributions into quantitative physics results
- Python 3.13
- NumPy
- Matplotlib
- Jupyter Notebook
Vectorized NumPy operations are used for efficient event generation and statistical computation.
- Maximum likelihood fitting of Gaussian + background model
- Estimation of statistical uncertainties on signal yield
- χ² goodness-of-fit test
- Implementation of significance calculation (S/√B)
- Multi-parameter fitting
- Extension to multi-dimensional observables
The techniques demonstrated here are foundational to:
- Z boson measurements
- Higgs boson searches
- Resonance discovery analyses
- Any invariant mass–based particle search
Although simplified, the workflow mirrors real high-energy physics data analysis logic.
pip install numpy matplotlib jupyterjupyter notebook analysis.ipynbExecute the cells sequentially to reproduce the complete analysis workflow.
.
├── analysis.ipynb # Main analysis notebook with simulation and visualization
└── README.md # This file
| Metric | Value |
|---|---|
| Total Events | 10,000 |
| Signal Events (true) | 5,000 |
| Background Events (true) | 5,000 |
| Events in Signal Region | 4,613 |
| Estimated Background | 1,299 |
| Extracted Signal | 3,313 |
| Signal-to-Background Ratio | 2.55 |
This simulation framework demonstrates techniques used in real high-energy physics experiments at facilities like the Large Hadron Collider (LHC).