IAP GITLAB

Skip to content
Snippets Groups Projects

"Need for writing first interaction information"

Closed Alan Coleman requested to merge first_interaction_writer into master
Files
18
@@ -27,6 +27,7 @@
@@ -27,6 +27,7 @@
#include <corsika/framework/utility/SaveBoostHistogram.hpp>
#include <corsika/framework/utility/SaveBoostHistogram.hpp>
#include <corsika/modules/writers/EnergyLossWriter.hpp>
#include <corsika/modules/writers/EnergyLossWriter.hpp>
 
#include <corsika/modules/writers/InteractionWriter.hpp>
#include <corsika/modules/writers/LongitudinalWriter.hpp>
#include <corsika/modules/writers/LongitudinalWriter.hpp>
#include <corsika/modules/writers/PrimaryWriter.hpp>
#include <corsika/modules/writers/PrimaryWriter.hpp>
#include <corsika/modules/writers/SubWriter.hpp>
#include <corsika/modules/writers/SubWriter.hpp>
@@ -218,6 +219,9 @@ int main(int argc, char** argv) {
@@ -218,6 +219,9 @@ int main(int argc, char** argv) {
app.add_flag("--force-interaction", force_interaction,
app.add_flag("--force-interaction", force_interaction,
"Force the location of the first interaction.")
"Force the location of the first interaction.")
->group("Misc.");
->group("Misc.");
 
bool force_decay = false;
 
app.add_flag("--force-decay", force_decay, "Force the primary to immediately decay")
 
->group("Misc.");
bool disable_interaction_hists = false;
bool disable_interaction_hists = false;
app.add_flag("--disable-interaction-histograms", disable_interaction_hists,
app.add_flag("--disable-interaction-histograms", disable_interaction_hists,
"Store interaction histograms")
"Store interaction histograms")
@@ -571,10 +575,14 @@ int main(int argc, char** argv) {
@@ -571,10 +575,14 @@ int main(int argc, char** argv) {
// register ZHS with the output manager
// register ZHS with the output manager
output.add("ZHS", zhs);
output.add("ZHS", zhs);
 
InteractionWriter<setup::Tracking, ParticleWriterParquet> inter_writer(
 
showerAxis, observationLevel);
 
output.add("interactions", inter_writer);
 
// assemble the final process sequence with radio
// assemble the final process sequence with radio
auto sequence = make_sequence(stackInspect, neutrinoPrimaryPythia, hadronSequence,
auto sequence = make_sequence(stackInspect, neutrinoPrimaryPythia, hadronSequence,
decayPythia, emCascade, emContinuous, coreas, zhs,
decayPythia, emCascade, emContinuous, coreas, zhs,
longprof, observationLevel, thinning, cut);
longprof, observationLevel, inter_writer, thinning, cut);
/* === END: SETUP PROCESS LIST === */
/* === END: SETUP PROCESS LIST === */
@@ -627,6 +635,11 @@ int main(int argc, char** argv) {
@@ -627,6 +635,11 @@ int main(int argc, char** argv) {
EAS.forceInteraction();
EAS.forceInteraction();
}
}
 
if (force_decay) {
 
CORSIKA_LOG_INFO("Forcing the primary to decay");
 
EAS.forceDecay();
 
}
 
primaryWriter.recordPrimary(primaryProperties);
primaryWriter.recordPrimary(primaryProperties);
// run the shower
// run the shower
Loading