Celeritas is a new Monte Carlo transport code designed to accelerate scientific discovery in high energy physics by improving detector simulation throughput and energy efficiency using GPUs.
I'm extracting a few changes from #1194 that I added for the raytrace work (to improve feedback to the user). The Celeritas unit system enum now lives in corecel/Types, so that it can be used by geocel. I also refactored the runtime assertion errors for readability, and I've changed "not configured" and "not implemented" to runtime errors, since we might want to let users encounter those naturally rather than adding additional validation checks. (For example, it's easier to let the code hit a NOT_CONFIGURED("Vecgeom") then have that as a debug check and do an additional validation on the user input.)
I'm extracting a few changes from #1194 that I added for the raytrace work (to improve feedback to the user). The Celeritas unit system enum now lives in
corecel/Types
, so that it can be used bygeocel
. I also refactored the runtime assertion errors for readability, and I've changed "not configured" and "not implemented" to runtime errors, since we might want to let users encounter those naturally rather than adding additional validation checks. (For example, it's easier to let the code hit aNOT_CONFIGURED("Vecgeom")
then have that as a debug check and do an additional validation on the user input.)