3 #include "G4SystemOfUnits.hh" 5 #include "G4ParticleDefinition.hh" 6 #include "G4VParticleChange.hh" 17 if (track.GetPosition() ==
posini)
19 <<
"CMSSQLoopProcess::AlongStepDoIt: CMSSQLoopProcess::AlongStepDoIt MomentumDirection " 20 << track.GetMomentumDirection().eta() <<
" track GetPostion " << track.GetPosition() / cm <<
" trackId " 21 << track.GetTrackID() <<
" parentId: " << track.GetParentID() <<
" GlobalTime " << track.GetGlobalTime() / ns
22 <<
" TotalEnergy: " << track.GetTotalEnergy() /
GeV <<
" Velocity " << track.GetVelocity() /
m / ns
29 if (fabs(track.GetMomentumDirection().eta()) > 999. || fabs(track.GetPosition().z()) > 160 * centimeter) {
30 edm::LogInfo(
"CMSSQLoopProcess::AlongStepDoIt") <<
"Particle getting killed because too large z" << std::endl;
38 G4double previousStepSize,
39 G4double currentMinimumStep,
40 G4double& proposedSafety,
42 return 1. * centimeter;
46 return 1. * centimeter;
virtual G4double GetContinuousStepLimit(const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double ¤tSafety)
virtual G4double AlongStepGetPhysicalInteractionLength(const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)
CMSSQLoopProcess(const G4String &name="SQLooper", G4ProcessType type=fUserDefined)
virtual ~CMSSQLoopProcess()
virtual void StartTracking(G4Track *aTrack)
virtual G4VParticleChange * AlongStepDoIt(const G4Track &, const G4Step &)
G4ParticleChange * fParticleChange