CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
corsika::ZHS< TRadioDetector, TPropagator > Class Template Referencefinal

A concrete implementation of the ZHS algorithm. More...

#include <ZHS.hpp>

Inheritance diagram for corsika::ZHS< TRadioDetector, TPropagator >:

Public Member Functions

template<typename... TArgs>
 ZHS (TRadioDetector &detector, TArgs &&... args)
 Construct a new ZHS instance. More...
 
template<typename Particle >
ProcessReturn simulate (Step< Particle > const &step)
 Simulate the radio emission from a particle across a track. More...
 
- Public Member Functions inherited from corsika::RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator >
 RadioProcess (TRadioDetector &antennas, TPropagator &propagator)
 Construct a new RadioProcess.
 
ProcessReturn doContinuous (Step< Particle > const &step, bool const)
 Perform the continuous process (radio emission). More...
 
LengthType getMaxStepLength (Particle const &vParticle, Track const &vTrack) const
 Return the maximum step length for this particle and track. More...
 
void startOfLibrary (boost::filesystem::path const &directory) final override
 Called at the start of each library.
 
virtual void endOfShower (unsigned int const) final override
 Called at the end of each shower.
 
void endOfLibrary () final override
 Called at the end of each library.
 
YAML::Node getConfig () const final
 Get the configuration of this output.
 
- Public Member Functions inherited from corsika::BaseOutput
virtual void startOfShower (unsigned int const)
 Called at the start of each event/shower. More...
 
bool isInit () const
 Flag to indicate readiness.
 
virtual YAML::Node getSummary () const
 Provide YAML Summary for this BaseOutput.
 

Static Public Attributes

static constexpr auto algorithm = "ZHS"
 
static constexpr auto emConstant_
 
- Static Public Attributes inherited from corsika::BaseProcess< RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator > >
static bool const is_process_sequence
 
static bool const is_switch_process_sequence
 

Additional Inherited Members

- Public Types inherited from corsika::RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator >
using axistype = std::vector< long double >
 
- Public Types inherited from corsika::BaseProcess< RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator > >
using process_type = RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator >
 Base processor type for use in other template classes.
 
- Protected Member Functions inherited from corsika::BaseProcess< RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator > >
RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator > & getRef ()
 
const RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator > & getRef () const
 
- Protected Member Functions inherited from corsika::BaseOutput
void setInit (bool const v)
 Set init flag.
 
- Protected Attributes inherited from corsika::RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator >
TRadioDetector & antennas_
 The radio antennas we store into.
 
TPropagator propagator_
 The propagator implementation.
 
unsigned int showerId_
 The current event ID.
 
ParquetStreamer output_
 The parquet streamer for this process.
 
- Protected Attributes inherited from corsika::BaseProcess< RadioProcess< TRadioDetector, ZHS< TRadioDetector, TPropagator >, TPropagator > >
friend TDerived
 

Detailed Description

template<typename TRadioDetector, typename TPropagator>
class corsika::ZHS< TRadioDetector, TPropagator >

A concrete implementation of the ZHS algorithm.

Definition at line 20 of file ZHS.hpp.

Constructor & Destructor Documentation

◆ ZHS()

template<typename TRadioDetector , typename TPropagator >
template<typename... TArgs>
corsika::ZHS< TRadioDetector, TPropagator >::ZHS ( TRadioDetector &  detector,
TArgs &&...  args 
)
inline

Construct a new ZHS instance.

This forwards the detector and other arguments to the RadioProcess parent.

Definition at line 35 of file ZHS.hpp.

Member Function Documentation

◆ simulate()

template<typename TRadioDetector , typename TPropagator >
template<typename Particle >
ProcessReturn corsika::ZHS< TRadioDetector, TPropagator >::simulate ( Step< Particle > const &  step)

Simulate the radio emission from a particle across a track.

This must be provided by the TRadioImpl.

Parameters
particleThe current particle.
trackThe current track.

Member Data Documentation

◆ emConstant_

template<typename TRadioDetector , typename TPropagator >
constexpr auto corsika::ZHS< TRadioDetector, TPropagator >::emConstant_
static
Initial value:
{1.0 / (4.0 * M_PI) / (constants::epsilonZero) /
constants::c}

Definition at line 49 of file ZHS.hpp.


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