CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
corsika::fluka::InteractionModel Class Reference

This class exposes the (hadronic) interactions of FLUKA. More...

#include <InteractionModel.hpp>

Inheritance diagram for corsika::fluka::InteractionModel:

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...
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ InteractionModel()

template<typename TEnvironment >
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.

Member Function Documentation

◆ doInteraction()

template<typename TSecondaryView >
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.


The documentation for this class was generated from the following file: