|
CORSIKA
@c8_version@
The framework to simulate particle cascades for astroparticle physics
|
Electro-magnetic and photon continous losses produced by proposal. It makes use of interpolation tables which are runtime intensive calculation, but can be reused by setting the. More...
#include <ContinuousProcess.hpp>

Public Member Functions | |
| template<typename TEnvironment , typename... TOutputArgs> | |
| ContinuousProcess (TEnvironment const &, TOutputArgs &&...) | |
| Produces the continuous loss calculator for leptons based on nuclear compositions and stochastic description limited by the particle cut. | |
| template<typename TParticle > | |
| void | scatter (Step< TParticle > &, HEPEnergyType const &, GrammageType const &) |
| Multiple Scattering of the lepton. Stochastic deflection is not yet taken into account. Displacment of the track due to multiple scattering is not possible because of the constant referernce. The final direction will be updated anyway. | |
| template<typename TParticle > | |
| ProcessReturn | doContinuous (Step< TParticle > &, bool const limitFlag) |
| Produces the loss and deflection after given distance for the particle. If the particle if below the given energy threshold where it will be considered stochastically, it will be absorbed. More... | |
| template<typename TParticle , typename TTrack > | |
| LengthType | getMaxStepLength (TParticle const &, TTrack const &) |
| Calculates maximal step length of process. | |
| YAML::Node | getConfig () const |
| Provide the config as YAML object to be stored on disk as output. | |
Additional Inherited Members | |
Public Types inherited from corsika::BaseProcess< proposal::ContinuousProcess< TOutput > > | |
| using | process_type = proposal::ContinuousProcess< TOutput > |
| Base processor type for use in other template classes. | |
Static Public Attributes inherited from corsika::BaseProcess< proposal::ContinuousProcess< TOutput > > | |
| static bool const | is_process_sequence |
| static bool const | is_switch_process_sequence |
Protected Types inherited from corsika::proposal::ProposalProcessBase | |
| using | calc_key_t = std::pair< std::size_t, Code > |
Protected Member Functions inherited from corsika::BaseProcess< proposal::ContinuousProcess< TOutput > > | |
| proposal::ContinuousProcess< TOutput > & | getRef () |
| const proposal::ContinuousProcess< TOutput > & | getRef () const |
Protected Member Functions inherited from corsika::proposal::ProposalProcessBase | |
| 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. | |
| 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 inherited from corsika::BaseProcess< proposal::ContinuousProcess< TOutput > > | |
| friend | TDerived |
Protected Attributes inherited from corsika::proposal::ProposalProcessBase | |
| 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. | |
Electro-magnetic and photon continous losses produced by proposal. It makes use of interpolation tables which are runtime intensive calculation, but can be reused by setting the.
| PROPOSAL::InterpolationDef::path_to_tables | variable. |
Definition at line 35 of file ContinuousProcess.hpp.
| ProcessReturn corsika::proposal::ContinuousProcess< TOutput >::doContinuous | ( | Step< TParticle > & | , |
| bool const | limitFlag | ||
| ) |
Produces the loss and deflection after given distance for the particle. If the particle if below the given energy threshold where it will be considered stochastically, it will be absorbed.
| limitFlag | is true, if the track was actually limited by proposal::ContinuousProcess::getMaxStepLength |