CORSIKA8  0.0.0
The framework to simulate particle cascades for astroparticle physics
corsika::ParticleCut Class Reference

simple ParticleCut process. More...

#include <ParticleCut.hpp>

Inheritance diagram for corsika::ParticleCut:

Public Member Functions

 ParticleCut (HEPEnergyType const eEleCut, HEPEnergyType const ePhoCut, HEPEnergyType const eHadCut, HEPEnergyType const eMuCut, bool const inv)
 particle cut with kinetic energy thresholds for electrons, photons, hadrons (including nuclei with energy per nucleon) and muons invisible particles (neutrinos) can be cut or not
 
 ParticleCut (HEPEnergyType const eHadCut, HEPEnergyType const euCut, bool const inv)
 simple cut. hadrons and muons are cut by threshold. EM particles are all discarded.
 
 ParticleCut (HEPEnergyType const eCut, bool const em, bool const inv)
 simplest cut. all particles have same threshold. EM particles can be set to be discarded altogether.
 
 ParticleCut (std::unordered_map< Code const, HEPEnergyType const > const &eCuts, bool const em, bool const inv)
 threshold for specific particles redefined. EM and invisible particles can be set to be discarded altogether.
 
template<typename TStackView >
void doSecondaries (TStackView &)
 
template<typename TParticle , typename TTrajectory >
ProcessReturn doContinuous (TParticle &vParticle, TTrajectory const &vTrajectory, const bool limitFlag=false)
 
template<typename TParticle , typename TTrajectory >
LengthType getMaxStepLength (TParticle const &, TTrajectory const &)
 
void printThresholds ()
 
void showResults ()
 
void reset ()
 
HEPEnergyType getElectronKineticECut () const
 
HEPEnergyType getPhotonKineticECut () const
 
HEPEnergyType getMuonKineticECut () const
 
HEPEnergyType getHadronKineticECut () const
 
HEPEnergyType getInvEnergy () const
 returns total energy of particles that were removed by cut for invisible particles
 
HEPEnergyType getTimeCutEnergy () const
 returns total energy of particles that were removed by cut in time
 
HEPEnergyType getCutEnergy () const
 returns total energy of particles that were removed by cut in kinetic energy
 
HEPEnergyType getEmEnergy () const
 returns total energy of particles that were removed by cut for electromagnetic particles
 
unsigned int getNumberEmParticles () const
 returns number of electromagnetic particles
 
unsigned int getNumberInvParticles () const
 returns number of invisible particles
 

Additional Inherited Members

- Public Types inherited from corsika::BaseProcess< ParticleCut >
using process_type = ParticleCut
 Base processor type for use in other template classes.
 
- Static Public Attributes inherited from corsika::BaseProcess< ParticleCut >
static bool const is_process_sequence
 
static bool const is_switch_process_sequence
 
- Protected Member Functions inherited from corsika::BaseProcess< ParticleCut >
ParticleCutref ()
 
const ParticleCutref () const
 
- Protected Attributes inherited from corsika::BaseProcess< ParticleCut >
friend TDerived
 

Detailed Description

simple ParticleCut process.

Goes through the secondaries of an interaction and removes particles according to their kinetic energy. Particles with a time delay of more than 10ms are removed as well. Invisible particles (neutrinos) can be removed if selected. The threshold value is set to 0 by default but in principle can be configured for each particle. Special constructors for cuts by the following groups are implemented: (electrons,positrons), photons, hadrons and muons.

Definition at line 27 of file ParticleCut.hpp.


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