CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
corsika::proposal::ProposalProcessBase Class Referenceabstract

PROPOSAL base process which handels mapping of particle codes to stored interpolation tables. More...

#include <ProposalProcessBase.hpp>

Inheritance diagram for corsika::proposal::ProposalProcessBase:

Classes

struct  hash
 Hash to store interpolation tables related to a pair of particle and nuclear composition. More...
 

Protected Types

using calc_key_t = std::pair< std::size_t, Code >
 

Protected Member Functions

template<typename TEnvironment >
 ProposalProcessBase (TEnvironment const &_env)
 Store cut and nuclear composition of the whole universe in media which are required for creating crosssections by proposal.
 
bool canInteract (Code pcode) const
 Checks if a particle can be processed by proposal.
 
virtual void buildCalculator (Code, NuclearComposition const &)=0
 Builds the calculator to the corresponding class.
 
template<typename Particle , typename Calculators >
auto getCalculator (Particle &vP, Calculators &calc)
 Searches the particle dependet calculator dependent of actuall medium composition and particle type. If no calculator is found, the corresponding new calculator is built and then returned.
 

Protected Attributes

default_prng_type & RNG_ = RNGManager<>::getInstance().getRandomStream("proposal")
 
std::unordered_map< std::size_t, PROPOSAL::Medium > media
 maps nuclear composition from univers to media to produce crosssections, which requires further ionization constants.
 

Detailed Description

PROPOSAL base process which handels mapping of particle codes to stored interpolation tables.

Definition at line 214 of file ProposalProcessBase.hpp.


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