51 G4double edep = aStep->GetTotalEnergyDeposit()/
CLHEP::MeV;
53 if (edep == 0.)
return false;
55 const int electronsperMeV= 10000;
56 int nrelec=(
int)round(edep*electronsperMeV);
57 if (aStep->GetTrack()->GetDynamicParticle()->GetCharge() == 0)
return false;
59 G4SteppingManager* fpSteppingManager = G4EventManager::GetEventManager()
60 ->GetTrackingManager()->GetSteppingManager();
61 G4StepStatus stepStatus = fpSteppingManager->GetfStepStatus();
62 if (stepStatus != fAtRestDoItProc) {
63 G4ProcessVector* procPost = fpSteppingManager->GetfPostStepDoItVector();
64 size_t MAXofPostStepLoops = fpSteppingManager->GetMAXofPostStepLoops();
65 for (
size_t i3 = 0; i3 < MAXofPostStepLoops; i3++) {
72 if ((*procPost)[i3]->GetProcessName() ==
"Scintillation") {
73 G4Scintillation* proc1 = (G4Scintillation*) (*procPost)[i3];
74 photons += proc1->GetNumPhotons();
79 aStep->GetPreStepPoint()->GetPosition().x()/
CLHEP::cm,
80 aStep->GetPreStepPoint()->GetPosition().y()/
CLHEP::cm,
81 aStep->GetPreStepPoint()->GetPosition().z()/
CLHEP::cm);
83 aStep->GetPostStepPoint()->GetPosition().x()/
CLHEP::cm,
84 aStep->GetPostStepPoint()->GetPosition().y()/
CLHEP::cm,
85 aStep->GetPostStepPoint()->GetPosition().z()/
CLHEP::cm);
92 aStep->GetPreStepPoint()->GetGlobalTime() /
CLHEP::ns,
93 aStep->GetPostStepPoint()->GetGlobalTime() /
CLHEP::ns,
94 aStep->GetTrack()->GetTrackID(),
95 aStep->GetTrack()->GetParticleDefinition()->GetPDGEncoding() );
static constexpr double cm
end
while True: pbar.update(maxval-len(onlies[E][S])) #print iS, "/", len(onlies[E][S]) found = False for...
sim::SimEnergyDepositCollection hitCollection
static constexpr double MeV
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
Energy deposition in the active material.