segfault in 1TeV electron shower
arguments to corsika.cpp were: -E 1000 -p 11 -N 1 -s 1 --emcut=0.0001 --hadcut=1 --mucut=0.5 --emthin=0 --wmax=1.e4 --observation-level=1400
- thinnning is included but deactivated (threshold is 0eV).
- the particle cut was moved after thinning (no reason).
- track writer was included
Last words:
[corsika:info (StackInspector.inl:80)] StackInspector: time=18:38:16, running=7334.111156622 seconds ( 82.1%), nStep=6030000, stackSize=25, Estack=178.6960669812845 GeV, ETA=18:38:16
[corsika:info (StackInspector.inl:80)] StackInspector: time=18:38:22, running=7340.890997247 seconds ( 82.2%), nStep=6040000, stackSize=23, Estack=178.3048567447155 GeV, ETA=18:38:22
Program received signal SIGSEGV, Segmentation fault.
0x000000000055e463 in corsika::VectorStackImpl::getPID (this=0x7ffffff8b068, i=415508416) at /home/felix/ngcorsika/corsika/corsika/stack/VectorStack.hpp:206
206 Code getPID(size_t i) const { return dataPID_[i]; }
The crash seems to originate in EMThinning
..
f 2 is:
#2 0x00000000006eeee4 in corsika::EMThinning::doSecondaries<corsika::SecondaryView<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::VectorStackImpl, corsika::node::GeometryData<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > > >, corsika::weights::WeightData>, corsika::history::HistoryData<corsika::history::Event> >, corsika::setup::detail::StackGenerator<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > >::StackWithHistoryInterface, corsika::history::HistorySecondaryProducer> > (this=0x7fffffffb440, view=...)
at /home/felix/ngcorsika/corsika/corsika/detail/modules/thinning/EMThinning.inl:36
36 if (!is_em(particle1.getPID()) || !is_em(particle2.getPID())) { return; }
locals in EMThinning:
Esum = {m_value = 8.3991159793011913e-323}
p1 = 1.4113329537210359e-316
p2 = 1000000000
w1 = 1.4113329537210359e-316
w2 = 6.9533557839933725e-310
maxWeightFactor = 1000000000
The view that is passed to EMThinning is
(corsika::SecondaryView<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::VectorStackImpl, corsika::node::GeometryData<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > > >, corsika::weights::WeightData>, corsika::history::HistoryData<corsika::history::Event> >, corsika::setup::detail::StackGenerator<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > >::StackWithHistoryInterface, corsika::history::HistorySecondaryProducer> &) @0x7ffffff8a510: {<corsika::Stack<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::VectorStackImpl, corsika::node::GeometryData<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > > >, corsika::weights::WeightData>, corsika::history::HistoryData<corsika::history::Event> >&, corsika::setup::detail::StackGenerator<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > >::StackWithHistoryInterface, corsika::history::HistorySecondaryProducer>> = {nDeleted_ = 1, data_ = @0x7ffffff8b068, deleted_ = std::vector<bool> of length 30, capacity 64 = {false, false,
false, false, false, false, false, false, false, false, false, false, false, false, false, false, false,
false, false, false, false, false, false, false, false, false, false, false, false,
false}}, <corsika::history::HistorySecondaryProducer<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::CombinedStackImpl<corsika::VectorStackImpl, corsika::node::GeometryData<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > > >, corsika::weights::WeightData>, corsika::history::HistoryData<corsika::history::Event> >, corsika::setup::detail::StackGenerator<corsika::Environment<corsika::IMediumPropertyModel<corsika::IMagneticFieldModel<corsika::IMediumModel> > > >::StackWithHistoryInterface>> = {
event_ = std::shared_ptr<corsika::history::Event> (use count 3, weak count 0) = {get() = 0x17a89650}},
inner_stack_ = @0x7ffffff8b060, projectile_index_ = 29, indices_ = std::vector of length 2, capacity 2 = {30, 31}}
however particle2 seems to not exist