|
CORSIKA
@c8_version@
The framework to simulate particle cascades for astroparticle physics
|
This class exposes the (hadronic) interactions of FLUKA. More...
#include <InteractionModel.hpp>

Public Member Functions | |
| template<typename TEnvironment > | |
| InteractionModel (TEnvironment const &) | |
| Create a new InteractionModel. More... | |
| CrossSectionType | getCrossSection (Code projectileId, Code targetId, FourMomentum const &projectileP4, FourMomentum const &targetP4) const |
| Return the cross-section of a given combination of projectile/target. | |
| bool | isValid (Code projectileID, Code targetID, HEPEnergyType sqrtS) const |
| bool | isValid (Code projectileID, int material, HEPEnergyType sqrtS) const |
| int | getMaterialIndex (Code targetID) const |
| convert target Code to FLUKA material number | |
| template<typename TSecondaryView > | |
| void | doInteraction (TSecondaryView &view, Code const projectileId, Code const targetId, FourMomentum const &projectileP4, FourMomentum const &targetP4) |
| Perform an interaction. More... | |
This class exposes the (hadronic) interactions of FLUKA.
FLUKA needs to be initialized with a predefined set of target materials and a flag describing the type of interactions (elastic, inelastic, electromagnetic dissociation). Currently, only inelastic events are supported.
Definition at line 30 of file InteractionModel.hpp.
| corsika::fluka::InteractionModel::InteractionModel | ( | TEnvironment const & | ) |
Create a new InteractionModel.
The FLUKA materials are collected from the elements present in the environment. Each element is its own FLUKA material, no FLUKA compounds are used.
| void corsika::fluka::InteractionModel::doInteraction | ( | TSecondaryView & | view, |
| Code const | projectileId, | ||
| Code const | targetId, | ||
| FourMomentum const & | projectileP4, | ||
| FourMomentum const & | targetP4 | ||
| ) |
Perform an interaction.
Since FLUKA expects a fixed-target configuration, we perform a Lorentz transform into the rest frame of the target.