|
| Interaction (boost::filesystem::path const &mpiInitFile=corsika_data("Pythia/main184.mpi"), bool const print_listing=false) |
|
bool | canInteract (Code const) const |
|
bool | isValid (Code const projectileId, Code const targetId, HEPEnergyType const sqrtS) const |
|
std::tuple< CrossSectionType, CrossSectionType > | getCrossSectionInelEla (Code const projectile, Code const target, FourMomentum const &projectileP4, FourMomentum const &targetP4) const |
| Returns inelastic AND elastic cross sections. More...
|
|
CrossSectionType | getCrossSection (Code const projectile, Code const target, FourMomentum const &projectileP4, FourMomentum const &targetP4) const |
| Returns inelastic (production) cross section. More...
|
|
template<typename TView > |
void | doInteraction (TView &output, Code const projectileId, Code const targetId, FourMomentum const &projectileP4, FourMomentum const &targetP4) |
| In this function PYTHIA is called to produce one event. More...
|
|
double | getAverageSubcollisions (Code targetId, CrossSectionType sigTot) const |
| return average number of sub-collisions in a nucleus, using the parameterizations of Sjöstrand and Utheim, EPJ C 82 (2022) 1, 21, arXiv:2108.03481 [hep-ph] More...
|
|
|
static std::array constexpr | validTargets_ |
|
static bool const | is_process_sequence |
|
static bool const | is_switch_process_sequence |
|
|
using | process_type = Interaction |
| Base processor type for use in other template classes.
|
|
Interaction & | getRef () |
|
const Interaction & | getRef () const |
|
friend | TDerived |
|
Definition at line 22 of file Interaction.hpp.
◆ doInteraction()
template<typename TView >
void corsika::pythia8::Interaction::doInteraction |
( |
TView & |
output, |
|
|
Code const |
projectileId, |
|
|
Code const |
targetId, |
|
|
FourMomentum const & |
projectileP4, |
|
|
FourMomentum const & |
targetP4 |
|
) |
| |
In this function PYTHIA is called to produce one event.
The event is copied (and boosted) into the shower lab frame.
◆ getAverageSubcollisions()
double corsika::pythia8::Interaction::getAverageSubcollisions |
( |
Code |
targetId, |
|
|
CrossSectionType |
sigTot |
|
) |
| const |
return average number of sub-collisions in a nucleus, using the parameterizations of Sjöstrand and Utheim, EPJ C 82 (2022) 1, 21, arXiv:2108.03481 [hep-ph]
- Parameters
-
targetId | target (nucleus) |
sigTot | projectile-nucleon (=proton) cross-secion |
◆ getCrossSection()
Returns inelastic (production) cross section.
This cross section must correspond to the process described in doInteraction. Allowed targets are: nuclei or single nucleons (p,n,hydrogen).
- Parameters
-
projectile | is the Code of the projectile |
target | is the Code of the target |
sqrtSnn | is the center-of-mass energy (per nucleon pair) |
Aprojectil | is the mass number of the projectils, if it is a nucleus |
Atarget | is the mass number of the target, if it is a nucleus |
- Returns
- inelastic cross section elastic cross section
◆ getCrossSectionInelEla()
Returns inelastic AND elastic cross sections.
These cross sections must correspond to the process described in doInteraction AND elastic scattering (sigma_tot = sigma_inel + sigma_el). Allowed targets are: nuclei or single nucleons (p,n,hydrogen). This "InelEla" method is used since Sibyll must be useful inside the NuclearInteraction model, which requires that.
- Parameters
-
projectile | is the Code of the projectile |
target | is the Code of the target |
sqrtSnn | is the center-of-mass energy (per nucleon pair) |
Aprojectil | is the mass number of the projectils, if it is a nucleus |
Atarget | is the mass number of the target, if it is a nucleus |
- Returns
- a tuple of: inelastic cross section, elastic cross section
◆ validTargets_
std::array constexpr corsika::pythia8::Interaction::validTargets_ |
|
static |
Initial value:{Code::Oxygen, Code::Nitrogen,
Code::Argon, Code::Hydrogen,
Code::Proton, Code::Neutron}
Definition at line 90 of file Interaction.hpp.
The documentation for this class was generated from the following file: