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.
ActionSequence is now a class template on CoreParams / OpticalParams. This allows casting actions to the more specialized ExplicitCoreActionInterface or ExplicitOpticalActionInterface in the ctor instead of doing it in ActionSequence::execute.
This adds the constraint that a given ActionSequence instance operates only on either ExplicitCoreActionInterface or ExplicitOpticalActionInterface (or any other subtype of ExplicitActionInterface)
ActionSequence
is now a class template on CoreParams / OpticalParams. This allows casting actions to the more specializedExplicitCoreActionInterface
orExplicitOpticalActionInterface
in the ctor instead of doing it inActionSequence::execute
.This adds the constraint that a given
ActionSequence
instance operates only on eitherExplicitCoreActionInterface
orExplicitOpticalActionInterface
(or any other subtype ofExplicitActionInterface
)