Closed sethrj closed 3 years ago
For a minimal set of EM processes for this multi-processes demo, Compton-Bremsstahlung-Ionization may be a good choice for simulating a self-contained (electron-gamma) cascade, which contains both discrete processes (all of them) and continuous energy loss processes (brem and ioni) with input of either photons or electrons: 1) starting from photons, it will undergo Compton (scattering and electron production) -> electron (energy loss by ionization, delta-ray by ioni and photon production by brem) -> repeat this cycle until both (primary and secondary) photons and secondary electrons reach to energy thresholds of processes, 2) starting with electrons, a similar cycle, but competing (brem+ioni) first followed by Compton and so on. It is a good demo with a complete simulation cycle for demonstrating performance measurements and basic validations if the total number of steps and tracks are statistically comparable to results from an equivalent Geant4 application.
Rescoping this and calling it done, even though there's still clearly work to be had in the demo loop.
Propagate through a VecGeom geometry with multiple materials. Include at least one each of continuous and discrete processes. Compare simulation results and timing against Geant4.
Requirements:
Add the following kernels:
calc_tabulated_physics_step
)calc_energy_loss
)ModelInterface
onMemSpace
and overload modelinteract
method to work with host pointersMissing pieces:
Process
classes (Rayleigh?, bremsstrahlung)