-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove multiple scattering from Processes #631
Conversation
auto msc_action = make_shared<ImplicitPhysicsAction>( | ||
action_reg.next_id(), | ||
"msc-range", | ||
"range limitation due to multiple scattering"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a bit of a hack too... but with the current AlongStepFactory
implementation we can't create new implicit IDs when loading the MSC parameters 🤔 but I think a solution may become apparent down the line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me @sethrj! There's just the accel example that needs to be updated.
This is a continuation of #604 on the long road to #253 . It moves the MSC process/model data out of the purview of the Physics class since it doesn't affect the energy loss or have a discrete action.
In the process it changes the ImportData (and corresponding ROOT format), so MSC models have their own top-level entry next to processes. They have very different data layouts and needs; Geant4 shoehorns them into that class.
I'm not sure of the updated file organization (a new
em/msc
directory) ... how and where to put the different MSC helper functions. Should we for example putUrbanMscParams
directly inem/
sinceFluctuationParams
are there?Important : this is a backward incompatible change so the merge commit for this branch should be marked as v0.3.0-dev.