Commit 0cf03e7
Add
### Briefly, what does this PR introduce?
This PR adds a new data type, `edm4eic::SimPulse`, to represent
simulated pulses before digitization.
The new structure is modeled consistently with the edmhep simulated hit
types and aligns with existing waveform structures such as
`edm4hep::RawTimeSeries` (generic digitization output) and
`edm4hep::TimeSeries` (generic measured time series).
`SimPulse` defines four one-to-many relations relations:
- **`SimCalorimeterHit`**: Pulses can be constructed from contributions
of one or more simulated calorimeter hits.
- **`SimTrackerHit`**: Pulses can be constructed from one or more
simulated tracker hits.
- **`SimPulse`**: Pulses can be constructed out of other pulses.
- **`MCParticle`**: Each pulse can be attributed to a single MCParticle
(primary pulse), multiple MCParticles (overlayed pulses), or zero
MCParticles (noise pulse).
Storing pulses at the simulation level ensures conceptual clarity and
consistency within our data model. The simulated pulse data to be stored
in this structure have no equivalent in real detector output, and are
therefore not digitization output.
By using a Simulation structure, we gain direct `Relation` support with
other simulation entities, enabling efficient backward navigation
through the simulation chain. While Associations are used to link
digitization and reconstruction structures to simulation, Relations are
preferred for internal connections within the same domain (e.g. within
Simulation or within Reconstruction). This design avoids introducing
redundant Association types and keeps the data model consistent, clean
and efficient.
### What kind of change does this PR introduce?
- [ ] Bug fix (issue #__)
- [X] New feature (issue #__)
- [ ] Documentation update
- [ ] Other: __
### Please check if this PR fulfills the following:
- [ ] Tests for the changes have been added
- [X] Documentation has been added / updated
- [X] Changes have been communicated to collaborators
### Does this PR introduce breaking changes? What changes might users
need to make to their code?
No
### Does this PR change default behavior?
No
---------
Co-authored-by: Dmitry Kalinkin <dmitry.kalinkin@gmail.com>
Co-authored-by: Derek M Anderson <derek.murphy.anderson@protonmail.com>
Co-authored-by: Simon Gardner <simon.gardner@glasgow.ac.uk>SimPulse data type for storing simulated pulses pre-digitization (#106)1 parent f0805ab commit 0cf03e7
2 files changed
+24
-3
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
206 | 227 | | |
207 | 228 | | |
208 | 229 | | |
| |||
0 commit comments