Loading src/modules/PulseTransfer/PulseTransferModule.cpp +12 −10 Original line number Diff line number Diff line Loading @@ -111,6 +111,7 @@ void PulseTransferModule::run(Event* event) { auto position = propagated_charge.getLocalPosition(); if(collect_from_implant_) { std::call_once(first_event_flag_, [&]() { if(model->getImplants().empty()) { throw InvalidValueError( config_, Loading @@ -121,6 +122,7 @@ void PulseTransferModule::run(Event* event) { throw ModuleError( "Charge collection from implant region should not be used with linear electric fields."); } }); // Ignore if outside the implant region: if(!model->isWithinImplant(position)) { Loading src/modules/PulseTransfer/PulseTransferModule.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ namespace allpix { double max_depth_distance_{}; bool collect_from_implant_{}; std::once_flag first_event_flag_; // Output histograms Histogram<TH1D> h_total_induced_charge_, h_induced_pixel_charge_; Loading Loading
src/modules/PulseTransfer/PulseTransferModule.cpp +12 −10 Original line number Diff line number Diff line Loading @@ -111,6 +111,7 @@ void PulseTransferModule::run(Event* event) { auto position = propagated_charge.getLocalPosition(); if(collect_from_implant_) { std::call_once(first_event_flag_, [&]() { if(model->getImplants().empty()) { throw InvalidValueError( config_, Loading @@ -121,6 +122,7 @@ void PulseTransferModule::run(Event* event) { throw ModuleError( "Charge collection from implant region should not be used with linear electric fields."); } }); // Ignore if outside the implant region: if(!model->isWithinImplant(position)) { Loading
src/modules/PulseTransfer/PulseTransferModule.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ namespace allpix { double max_depth_distance_{}; bool collect_from_implant_{}; std::once_flag first_event_flag_; // Output histograms Histogram<TH1D> h_total_induced_charge_, h_induced_pixel_charge_; Loading