CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
corsika::dEdX_output Namespace Reference

The energy loss writer can be used to pool several energy loss processes into one output file/stream. More...

Typedefs

typedef std::array< HEPEnergyType, NColumnsProfile
 Data type to store column data.
 

Enumerations

enum  ProfileIndex { Total, Entries }
 Definition of longitudinal profile columns.
 

Variables

size_t constexpr NColumns = static_cast<int>(ProfileIndex::Entries)
 Number of columns (static).
 

Detailed Description

The energy loss writer can be used to pool several energy loss processes into one output file/stream.

Typically many processes/modules can lead to energy losses in the shower. The EnergyLossWriter can be used in combination with the SubWriter class to collect all of them into a single output stream:

# showerAxis must be a ShowerAxis object
# the X binning can be specified.
EnergyLossWriter dEdX{showerAxis, 10_g / square(1_cm), 200};
# add to OutputManager:
output.add("energyloss", dEdX);
# add SubWriters, e.g. Bethe-Bloch:
BetheBlochPDG<SubWriter<decltype(dEdX)>> eLoss{dEdX};
...

The EnergyLossWriter processes data on single-particle-level. The final output writer, e.g. EnergyLossWriterParquet, processes data on profile-level (bins in X). The default output option is parquet format.

Template Parameters
TOutputLocal helper namespace to store number and names of dEdX profile columns.