|
CORSIKA
@c8_version@
The framework to simulate particle cascades for astroparticle physics
|

Public Member Functions | |
| InteractionModel (std::string const &dataPath="", bool const epos_printout_on=false) | |
| std::tuple< CrossSectionType, CrossSectionType > | calcCrossSectionCoM (Code const corsikaId, int const, int const, Code const targetId, int const, int const, HEPEnergyType const sqrtS) const |
| Returns production and elastic cross section for hadrons in epos. More... | |
| std::tuple< CrossSectionType, CrossSectionType > | readCrossSectionTableLab (Code const, int const, int const, Code const, HEPEnergyType const) const |
| Returns production and elastic cross section for hadrons in epos by reading pre-calculated tables from epos. | |
| std::tuple< CrossSectionType, CrossSectionType > | getCrossSectionInelEla (Code const projectileId, Code const targetId, FourMomentum const &projectileP4, FourMomentum const &targetP4) const |
| Returns production and elastic cross section. More... | |
| bool | isValid (Code const projectileId, Code const targetId, HEPEnergyType const sqrtS) const |
| Checks validity of projectile, target and energy combination. More... | |
| CrossSectionType | getCrossSection (Code const projectileId, Code const targetId, FourMomentum const &projectileP4, FourMomentum const &targetP4) const |
| Get the inelatic/production cross section. More... | |
| template<typename TSecondaries > | |
| void | doInteraction (TSecondaries &, Code const projectileId, Code const targetId, FourMomentum const &projectileP4, FourMomentum const &targetP4) |
| Calculate one hadron-hadron interaction. | |
| void | initializeEventCoM (Code const, int const, int const, Code const, int const, int const, HEPEnergyType const) const |
| void | initializeEventLab (Code const, int const, int const, Code const, int const, int const, HEPEnergyType const) const |
| void | configureParticles (Code const, int const, int const, Code const, int const, int const) const |
Definition at line 19 of file InteractionModel.hpp.
| std::tuple<CrossSectionType, CrossSectionType> corsika::epos::InteractionModel::calcCrossSectionCoM | ( | Code const | corsikaId, |
| int | const, | ||
| int | const, | ||
| Code const | targetId, | ||
| int | const, | ||
| int | const, | ||
| HEPEnergyType const | sqrtS | ||
| ) | const |
Returns production and elastic cross section for hadrons in epos.
Allowed targets are: nuclei or single nucleons (p,n,hydrogen). This routine calculates the cross sections from scratch.
Note: Very slow!, use tabulation for any performance application.
| corsikaId | - PID of beam particle, |
| targetId | - PID of target particle |
| sqrtS | - center-of-mass energy. |
|
inline |
Get the inelatic/production cross section.
| projectileId | |
| targetId | |
| projectileP4 | |
| targetP4 |
Definition at line 78 of file InteractionModel.hpp.
| std::tuple<CrossSectionType, CrossSectionType> corsika::epos::InteractionModel::getCrossSectionInelEla | ( | Code const | projectileId, |
| Code const | targetId, | ||
| FourMomentum const & | projectileP4, | ||
| FourMomentum const & | targetP4 | ||
| ) | const |
Returns production and elastic cross section.
Allowed configurations are hadron-nucleon, hadron-nucleus and nucleus-nucleus. Inputs are particle id's mass and charge numbers and total energy in the lab.
| bool corsika::epos::InteractionModel::isValid | ( | Code const | projectileId, |
| Code const | targetId, | ||
| HEPEnergyType const | sqrtS | ||
| ) | const |
Checks validity of projectile, target and energy combination.
EPOSLHC only accepts nuclei with X<=A<=Y as targets, or protons aka Hydrogen or neutrons (p,n == nucleon).