Simplify selectors for Fatras processes
Split the Process
selectors into two categories: input selectors that take ActsFatras::Particle
and Acts::MaterialProperties
as input and particle selectors that only take ActsFatras::Particle
. Simplify most selectors to particle selectors. Contains some related fixes.
Fixes #698 (closed). Depends on !760 (merged) and must be merged afterwards.
Merge request reports
Activity
changed milestone to %0.17.00
added Component - Fatras Improvement Minor labels
Hi @msmk, let's discuss this first.
X0/L0 limit selectors.
These are in place for the actual pre-sampling of X0 or L0 path length, which in fact the better way to implement interactions:
- before the particle is sent on its way 'god' throws the dice and determines how much L0 a hadron is allowed to see ... hence, this hadron only needs to keep on going until it reaches the limit, which omits checking for a HI probability at each surface. Also, if you then hit a thick layer, you can emulate that the particle interacts somewhere within and you can send the daughter particles ahead including the chance to interact again in the same layer ...
That makes sense. It might make sense then to split the pure particle check from the X0/L0 + particle check to keep the simplification. I'll update !760 (merged) and this MR.
mentioned in merge request !760 (merged)
added 51 commits
-
2fe89dbc...b32ac93d - 45 commits from branch
master
- a5a8ea12 - Fatras: use fixed-size array as physics return types
- 0556dadc - Fatras: remove detector parameter from most selectors
- cb4c8ec0 - Fatras: reorder limit selector params and fix tests
- 668fff3d - Fatras: use std functions for kinematic casts
- 3e0bab9b - Fatras: replace SelectorList w/ simpler implementation
- 8a6e51b2 - Fatras: fix process interface and add missing test
Toggle commit list-
2fe89dbc...b32ac93d - 45 commits from branch
added 13 commits
-
af0b20c8...a92b4429 - 7 commits from branch
master
- fdfc9b91 - Fatras: use fixed-size array as physics return types
- a54e53fb - Fatras: remove detector parameter from most selectors
- 28b883df - Fatras: reorder limit selector params and fix tests
- 768dff4b - Fatras: use std functions for kinematic casts
- d5f3c1a9 - Fatras: replace SelectorList w/ simpler implementation
- fead612a - Fatras: fix process interface and add missing test
Toggle commit list-
af0b20c8...a92b4429 - 7 commits from branch
assigned to @asalzbur
assigned to @fklimpel
added 21 commits
-
fead612a...7813a2a1 - 15 commits from branch
master
- b63143ad - Fatras: use fixed-size array as physics return types
- e022812b - Fatras: remove detector parameter from most selectors
- f9e5f803 - Fatras: reorder limit selector params and fix tests
- 13c3488f - Fatras: use std functions for kinematic casts
- 34398ce6 - Fatras: replace SelectorList w/ simpler implementation
- 3a5af32d - Fatras: fix process interface and add missing test
Toggle commit list-
fead612a...7813a2a1 - 15 commits from branch
mentioned in merge request !773 (merged)
added 19 commits
-
3a5af32d...e8ade263 - 13 commits from branch
master
- d385babf - Fatras: use fixed-size array as physics return types
- 77064a0e - Fatras: remove detector parameter from most selectors
- 76d8a91c - Fatras: reorder limit selector params and fix tests
- 777858a6 - Fatras: use std functions for kinematic casts
- cbd239e8 - Fatras: replace SelectorList w/ simpler implementation
- 0d01782e - Fatras: fix process interface and add missing test
Toggle commit list-
3a5af32d...e8ade263 - 13 commits from branch
added 8 commits
-
0d01782e...56fd8f38 - 2 commits from branch
master
- 57c691b3 - Fatras: use fixed-size array as physics return types
- 5f07f1d4 - Fatras: remove detector parameter from most selectors
- d138e4e3 - Fatras: reorder limit selector params and fix tests
- 74d9033e - Fatras: use std functions for kinematic casts
- ca237096 - Fatras: replace SelectorList w/ simpler implementation
- 86010646 - Fatras: fix process interface and add missing test
Toggle commit list-
0d01782e...56fd8f38 - 2 commits from branch