Skip to content
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

Automate and check "integral xs" option #1571

Open
sethrj opened this issue Jan 10, 2025 · 3 comments
Open

Automate and check "integral xs" option #1571

sethrj opened this issue Jan 10, 2025 · 3 comments
Labels
enhancement New feature or request physics Particles, processes, and stepping algorithms

Comments

@sethrj
Copy link
Member

sethrj commented Jan 10, 2025

The integral cross section treatment (variously named use_integral_xs or integral_approach; aka G4EmParameters::Integral) is only valid for monotonic nonincreasing cross sections. We pull this parameter from Geant4 usually, but we should validate it ourselves. I think Geant4 recently added an option to handle integral rejection for single- and two-peak cross sections too.

We should either calculate this ourselves from the cross section tables, or pull it directly from Geant4.

@sethrj sethrj added enhancement New feature or request physics Particles, processes, and stepping algorithms labels Jan 10, 2025
@amandalund
Copy link
Contributor

Could you clarify a bit what you mean by "validate [the parameter] ourselves" and "calculate this ourselves"?

@sethrj
Copy link
Member Author

sethrj commented Jan 10, 2025

I mean validating whether the cross sections are monotonic... we could do it ourselves for tabulated cross sections but would have to rely on self-reporting for the on-the-fly methods (or validate at runtime that after slowing down, the cross section is no less than the starting XS).

@amandalund
Copy link
Contributor

You mean monotonic over the entire energy range? I don't think that's necessary for the approach to be valid; as implemented I think it just needs to be unimodal. If there's more than one peak, it should be accurate as long as the cross section is monotonic (increasing or decreasing) within the pre- and post-step energy or that range contains the global maximum.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request physics Particles, processes, and stepping algorithms
Projects
None yet
Development

No branches or pull requests

2 participants