Determines the applicability of the fast sim model to this particular track.
62{
63
64 #ifdef FATRASG4_DEBUG
65 G4cout<<"[FatrasG4::ModelTrigger] Got particle with " <<"\n"
66 <<" pdg=" <<fastTrack.GetPrimaryTrack() -> GetDefinition()->GetPDGEncoding() <<"\n"
67 <<" Ekin="<<fastTrack.GetPrimaryTrack() -> GetKineticEnergy() <<"\n"
68 <<" p=" <<fastTrack.GetPrimaryTrack() -> GetMomentum().mag() <<"\n"
69 <<" x=" <<fastTrack.GetPrimaryTrack() -> GetPosition().x() <<"\n"
70 <<" y=" <<fastTrack.GetPrimaryTrack() -> GetPosition().y() <<"\n"
71 <<" z=" <<fastTrack.GetPrimaryTrack() -> GetPosition().z() <<"\n"
72 <<" r=" <<fastTrack.GetPrimaryTrack() -> GetPosition().perp() <<"\n"
73 <<" eta=" <<fastTrack.GetPrimaryTrack() -> GetMomentum().eta() <<"\n"
74 <<" phi=" <<fastTrack.GetPrimaryTrack() -> GetMomentum().phi() <<"\n"
75 <<G4endl;
76 #endif
77
78 const G4ParticleDefinition * G4Particle = fastTrack.GetPrimaryTrack() -> GetDefinition();
79
80
81 bool isPhoton = G4Particle == G4Gamma::Definition();
82 bool isElectron = G4Particle == G4Electron::Definition();
83 bool isPositron = G4Particle == G4Positron::Definition();
84
85
87 #ifdef FATRASG4_DEBUG
88 G4cout<<"[FatrasG4::ModelTrigger] Photons, electrons or positron. Model triggered."<<G4endl;
89 #endif
90 return true;
91 }
92 else return false;
93
94}