Loading src/modules/DepositionGeant4/SensitiveDetectorActionG4.cpp +4 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ G4bool SensitiveDetectorActionG4::ProcessHits(G4Step* step, G4TouchableHistory*) // Update current end point with the current last step track_end_[trackID] = detector_->getLocalPosition(static_cast<ROOT::Math::XYZPoint>(postStep->GetPosition())); track_charge_[trackID] += charge; track_deposited_energy_[trackID] += edep; // Add new deposit if the charge is more than zero if(charge == 0) { Loading Loading @@ -149,6 +150,7 @@ void SensitiveDetectorActionG4::clearEventInfo() { track_pdg_.clear(); track_time_.clear(); track_charge_.clear(); track_deposited_energy_.clear(); track_total_energy_start_.clear(); track_kinetic_energy_start_.clear(); Loading Loading @@ -183,6 +185,7 @@ void SensitiveDetectorActionG4::dispatchMessages(Module* module, Messenger* mess auto local_end = track_end_.at(track_id); auto pdg_code = track_pdg_.at(track_id); auto charge = track_charge_.at(track_id); auto deposited_energy = track_deposited_energy_.at(track_id); auto track_time_global = track_time_.at(track_id); auto track_time_local = track_time_global - time_reference; Loading @@ -192,6 +195,7 @@ void SensitiveDetectorActionG4::dispatchMessages(Module* module, Messenger* mess local_begin, global_begin, local_end, global_end, pdg_code, track_time_local, track_time_global); // Count electrons and holes: mc_particles.back().setTotalDepositedCharge(2 * charge); mc_particles.back().setTotalDepositedEnergy(deposited_energy); mc_particles.back().setTrack(track_info_manager_->findMCTrack(track_id)); mc_particles.back().setTotalEnergyStart(track_total_energy_start_.at(track_id)); mc_particles.back().setKineticEnergyStart(track_kinetic_energy_start_.at(track_id)); Loading src/modules/DepositionGeant4/SensitiveDetectorActionG4.hpp +2 −0 Original line number Diff line number Diff line Loading @@ -151,6 +151,8 @@ namespace allpix { std::map<int, double> track_time_; // Total charge by track std::map<int, unsigned int> track_charge_; // Total energy deposited by track std::map<int, double> track_deposited_energy_; // Total energy by track at start point std::map<int, double> track_total_energy_start_; // Kinetic energy by track at start point Loading Loading
src/modules/DepositionGeant4/SensitiveDetectorActionG4.cpp +4 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ G4bool SensitiveDetectorActionG4::ProcessHits(G4Step* step, G4TouchableHistory*) // Update current end point with the current last step track_end_[trackID] = detector_->getLocalPosition(static_cast<ROOT::Math::XYZPoint>(postStep->GetPosition())); track_charge_[trackID] += charge; track_deposited_energy_[trackID] += edep; // Add new deposit if the charge is more than zero if(charge == 0) { Loading Loading @@ -149,6 +150,7 @@ void SensitiveDetectorActionG4::clearEventInfo() { track_pdg_.clear(); track_time_.clear(); track_charge_.clear(); track_deposited_energy_.clear(); track_total_energy_start_.clear(); track_kinetic_energy_start_.clear(); Loading Loading @@ -183,6 +185,7 @@ void SensitiveDetectorActionG4::dispatchMessages(Module* module, Messenger* mess auto local_end = track_end_.at(track_id); auto pdg_code = track_pdg_.at(track_id); auto charge = track_charge_.at(track_id); auto deposited_energy = track_deposited_energy_.at(track_id); auto track_time_global = track_time_.at(track_id); auto track_time_local = track_time_global - time_reference; Loading @@ -192,6 +195,7 @@ void SensitiveDetectorActionG4::dispatchMessages(Module* module, Messenger* mess local_begin, global_begin, local_end, global_end, pdg_code, track_time_local, track_time_global); // Count electrons and holes: mc_particles.back().setTotalDepositedCharge(2 * charge); mc_particles.back().setTotalDepositedEnergy(deposited_energy); mc_particles.back().setTrack(track_info_manager_->findMCTrack(track_id)); mc_particles.back().setTotalEnergyStart(track_total_energy_start_.at(track_id)); mc_particles.back().setKineticEnergyStart(track_kinetic_energy_start_.at(track_id)); Loading
src/modules/DepositionGeant4/SensitiveDetectorActionG4.hpp +2 −0 Original line number Diff line number Diff line Loading @@ -151,6 +151,8 @@ namespace allpix { std::map<int, double> track_time_; // Total charge by track std::map<int, unsigned int> track_charge_; // Total energy deposited by track std::map<int, double> track_deposited_energy_; // Total energy by track at start point std::map<int, double> track_total_energy_start_; // Kinetic energy by track at start point Loading