10 #include "G4Geantino.hh"
11 #include "G4ChargedGeantino.hh"
12 #include "G4MuonPlus.hh"
13 #include "G4MuonMinus.hh"
22 , m_trackRecordCollection(
"CosmicPerigee")
23 , m_hasBeenSaved(false)
59 if (aStep->GetPreStepPoint()->GetStepStatus() ==
fUndefined)
66 if (aStep->GetTrack()->GetDefinition() != G4MuonPlus::Definition() &&
67 aStep->GetTrack()->GetDefinition() != G4MuonMinus::Definition() &&
68 ( aStep->GetPostStepPoint()->GetPosition().rho() >
m_idR ||
69 aStep->GetPostStepPoint()->GetPosition().z() >
m_idZ ||
70 aStep->GetPostStepPoint()->GetPosition().z() < -
m_idZ ) ){
81 if ( aStep->GetTrack()->GetMomentum().x() * aStep->GetPostStepPoint()->GetPosition().x() +
82 aStep->GetTrack()->GetMomentum().y() * aStep->GetPostStepPoint()->GetPosition().y() < 0)
return;
89 G4StepPoint* preStep = aStep->GetPreStepPoint();
90 G4StepPoint* postStep = aStep->GetPostStepPoint();
91 G4StepPoint* theStep = preStep;
92 if ( fabs( preStep->GetMomentumDirection().x() * preStep->GetPosition().x() +
93 preStep->GetMomentumDirection().y() * preStep->GetPosition().y() ) >
94 fabs( postStep->GetMomentumDirection().x() * postStep->GetPosition().x() +
95 postStep->GetMomentumDirection().y() * postStep->GetPosition().y() ) )
103 int pdgcode = aStep->GetTrack()->GetDefinition()->GetPDGEncoding();
104 double ener = theStep->GetTotalEnergy();
105 G4ThreeVector
pos = theStep->GetPosition();
106 G4ThreeVector
mom = theStep->GetMomentum();
107 double time = theStep->GetGlobalTime();
108 G4VPhysicalVolume *preVol = theStep->GetPhysicalVolume();
110 if (aStep->GetTrack()->GetDefinition() == G4Geantino::Definition() ) pdgcode=999;
111 if (aStep->GetTrack()->GetDefinition() == G4ChargedGeantino::Definition() ) pdgcode=998;