Geant4 VMC
Version 6.8
Toggle main menu visibility
Loading...
Searching...
No Matches
source
physics
src
TG4SpecialCuts.cxx
Go to the documentation of this file.
1
//------------------------------------------------
2
// The Geant4 Virtual Monte Carlo package
3
// Copyright (C) 2007 - 2014 Ivana Hrivnacova
4
// All rights reserved.
5
//
6
// For the licensing terms see geant4_vmc/LICENSE.
7
// Contact: root-vmc@cern.ch
8
//-------------------------------------------------
9
14
15
#include "
TG4SpecialCuts.h
"
16
#include "
TG4Limits.h
"
17
18
//
19
// Class TG4SpecialCutsForChargedHadron implementation
20
//
21
22
//_____________________________________________________________________________
23
TG4SpecialCutsForChargedHadron::TG4SpecialCutsForChargedHadron
(
24
const
G4String& processName)
25
:
TG4VSpecialCuts
(processName)
26
{
28
}
29
30
//_____________________________________________________________________________
31
TG4SpecialCutsForChargedHadron::~TG4SpecialCutsForChargedHadron
()
32
{
34
}
35
36
//_____________________________________________________________________________
37
G4double
TG4SpecialCutsForChargedHadron::GetMinEkine
(
38
const
TG4Limits
& limits,
const
G4Track& track)
const
39
{
41
// ---
42
43
return
limits.
GetMinEkineForChargedHadron
(track);
44
}
45
46
//
47
// Class TG4SpecialCutsForElectron implementation
48
//
49
50
//_____________________________________________________________________________
51
TG4SpecialCutsForElectron::TG4SpecialCutsForElectron
(
52
const
G4String& processName)
53
:
TG4VSpecialCuts
(processName)
54
{
56
}
57
58
//_____________________________________________________________________________
59
TG4SpecialCutsForElectron::~TG4SpecialCutsForElectron
()
60
{
62
}
63
64
//_____________________________________________________________________________
65
G4double
TG4SpecialCutsForElectron::GetMinEkine
(
66
const
TG4Limits
& limits,
const
G4Track& track)
const
67
{
69
70
return
limits.
GetMinEkineForElectron
(track);
71
}
72
73
//
74
// Class TG4SpecialCutsForGamma implementation
75
//
76
77
//_____________________________________________________________________________
78
TG4SpecialCutsForGamma::TG4SpecialCutsForGamma
(
const
G4String& processName)
79
:
TG4VSpecialCuts
(processName)
80
{
82
}
83
84
//_____________________________________________________________________________
85
TG4SpecialCutsForGamma::~TG4SpecialCutsForGamma
()
86
{
88
}
89
90
//_____________________________________________________________________________
91
G4double
TG4SpecialCutsForGamma::GetMinEkine
(
92
const
TG4Limits
& limits,
const
G4Track& track)
const
93
{
95
96
return
limits.
GetMinEkineForGamma
(track);
97
}
98
99
//
100
// Class TG4SpecialCutsForMuon implementation
101
//
102
103
//_____________________________________________________________________________
104
TG4SpecialCutsForMuon::TG4SpecialCutsForMuon
(
const
G4String& processName)
105
:
TG4VSpecialCuts
(processName)
106
{
108
}
109
110
//_____________________________________________________________________________
111
TG4SpecialCutsForMuon::~TG4SpecialCutsForMuon
()
112
{
114
}
115
116
//_____________________________________________________________________________
117
G4double
TG4SpecialCutsForMuon::GetMinEkine
(
118
const
TG4Limits
& limits,
const
G4Track& track)
const
119
{
121
122
return
limits.
GetMinEkineForMuon
(track);
123
}
124
125
//
126
// Class TG4SpecialCutsForNeutralHadron implementation
127
//
128
129
//_____________________________________________________________________________
130
TG4SpecialCutsForNeutralHadron::TG4SpecialCutsForNeutralHadron
(
131
const
G4String& processName)
132
:
TG4VSpecialCuts
(processName)
133
{
135
}
136
137
//_____________________________________________________________________________
138
TG4SpecialCutsForNeutralHadron::~TG4SpecialCutsForNeutralHadron
()
139
{
141
}
142
143
//_____________________________________________________________________________
144
G4double
TG4SpecialCutsForNeutralHadron::GetMinEkine
(
145
const
TG4Limits
& limits,
const
G4Track& track)
const
146
{
148
149
return
limits.
GetMinEkineForNeutralHadron
(track);
150
}
151
152
//
153
// Class TG4SpecialCutsForNeutralHadron implementation
154
//
155
156
//_____________________________________________________________________________
157
TG4SpecialCutsForNeutron::TG4SpecialCutsForNeutron
(
const
G4String& processName)
158
:
TG4VSpecialCuts
(processName)
159
{
161
}
162
163
//_____________________________________________________________________________
164
TG4SpecialCutsForNeutron::~TG4SpecialCutsForNeutron
()
165
{
167
}
168
169
//_____________________________________________________________________________
170
G4double
TG4SpecialCutsForNeutron::GetMinEkine
(
171
const
TG4Limits
& limits,
const
G4Track& track)
const
172
{
174
175
return
limits.
GetMinEkineForNeutralHadron
(track);
176
}
177
178
//_____________________________________________________________________________
179
G4VParticleChange*
TG4SpecialCutsForNeutron::PostStepDoIt
(
180
const
G4Track& track,
const
G4Step&
/*step*/
)
181
{
184
185
aParticleChange.Initialize(track);
186
aParticleChange.ProposeEnergy(0.);
187
aParticleChange.ProposeLocalEnergyDeposit(track.GetKineticEnergy());
188
aParticleChange.ProposeTrackStatus(fStopAndKill);
189
190
return
&aParticleChange;
191
}
TG4Limits.h
Definition of the TG4Limits class.
TG4SpecialCuts.h
Definition of the TG4SpecialCutsFor* classes.
TG4Limits
Extended G4UserLimits class.
Definition
TG4Limits.h:38
TG4Limits::GetMinEkineForNeutralHadron
G4double GetMinEkineForNeutralHadron(const G4Track &track) const
Definition
TG4Limits.cxx:317
TG4Limits::GetMinEkineForMuon
G4double GetMinEkineForMuon(const G4Track &track) const
Definition
TG4Limits.cxx:328
TG4Limits::GetMinEkineForElectron
G4double GetMinEkineForElectron(const G4Track &track) const
Definition
TG4Limits.cxx:295
TG4Limits::GetMinEkineForGamma
G4double GetMinEkineForGamma(const G4Track &track) const
Definition
TG4Limits.cxx:284
TG4Limits::GetMinEkineForChargedHadron
G4double GetMinEkineForChargedHadron(const G4Track &track) const
Definition
TG4Limits.cxx:306
TG4SpecialCutsForChargedHadron::TG4SpecialCutsForChargedHadron
TG4SpecialCutsForChargedHadron(const G4String &processName="specialCutForChargedHadron")
Definition
TG4SpecialCuts.cxx:23
TG4SpecialCutsForChargedHadron::GetMinEkine
virtual G4double GetMinEkine(const TG4Limits &limits, const G4Track &track) const
Return the kinetic energy limit.
Definition
TG4SpecialCuts.cxx:37
TG4SpecialCutsForChargedHadron::~TG4SpecialCutsForChargedHadron
virtual ~TG4SpecialCutsForChargedHadron()
Definition
TG4SpecialCuts.cxx:31
TG4SpecialCutsForElectron::~TG4SpecialCutsForElectron
virtual ~TG4SpecialCutsForElectron()
Definition
TG4SpecialCuts.cxx:59
TG4SpecialCutsForElectron::TG4SpecialCutsForElectron
TG4SpecialCutsForElectron(const G4String &processName="specialCutForElectron")
Definition
TG4SpecialCuts.cxx:51
TG4SpecialCutsForElectron::GetMinEkine
virtual G4double GetMinEkine(const TG4Limits &limits, const G4Track &track) const
Return the kinetic energy limit.
Definition
TG4SpecialCuts.cxx:65
TG4SpecialCutsForGamma::TG4SpecialCutsForGamma
TG4SpecialCutsForGamma(const G4String &processName="specialCutForGamma")
Definition
TG4SpecialCuts.cxx:78
TG4SpecialCutsForGamma::GetMinEkine
virtual G4double GetMinEkine(const TG4Limits &limits, const G4Track &track) const
Return the kinetic energy limit.
Definition
TG4SpecialCuts.cxx:91
TG4SpecialCutsForGamma::~TG4SpecialCutsForGamma
virtual ~TG4SpecialCutsForGamma()
Definition
TG4SpecialCuts.cxx:85
TG4SpecialCutsForMuon::TG4SpecialCutsForMuon
TG4SpecialCutsForMuon(const G4String &processName="specialCutForMuon")
Definition
TG4SpecialCuts.cxx:104
TG4SpecialCutsForMuon::~TG4SpecialCutsForMuon
virtual ~TG4SpecialCutsForMuon()
Definition
TG4SpecialCuts.cxx:111
TG4SpecialCutsForMuon::GetMinEkine
virtual G4double GetMinEkine(const TG4Limits &limits, const G4Track &track) const
Return the kinetic energy limit.
Definition
TG4SpecialCuts.cxx:117
TG4SpecialCutsForNeutralHadron::TG4SpecialCutsForNeutralHadron
TG4SpecialCutsForNeutralHadron(const G4String &processName="specialCutForNeutralHadron")
Definition
TG4SpecialCuts.cxx:130
TG4SpecialCutsForNeutralHadron::~TG4SpecialCutsForNeutralHadron
virtual ~TG4SpecialCutsForNeutralHadron()
Definition
TG4SpecialCuts.cxx:138
TG4SpecialCutsForNeutralHadron::GetMinEkine
virtual G4double GetMinEkine(const TG4Limits &limits, const G4Track &track) const
Return the kinetic energy limit.
Definition
TG4SpecialCuts.cxx:144
TG4SpecialCutsForNeutron::~TG4SpecialCutsForNeutron
virtual ~TG4SpecialCutsForNeutron()
Definition
TG4SpecialCuts.cxx:164
TG4SpecialCutsForNeutron::PostStepDoIt
virtual G4VParticleChange * PostStepDoIt(const G4Track &track, const G4Step &)
Definition
TG4SpecialCuts.cxx:179
TG4SpecialCutsForNeutron::GetMinEkine
virtual G4double GetMinEkine(const TG4Limits &limits, const G4Track &track) const
Return the kinetic energy limit.
Definition
TG4SpecialCuts.cxx:170
TG4SpecialCutsForNeutron::TG4SpecialCutsForNeutron
TG4SpecialCutsForNeutron(const G4String &processName="specialCutForNeutron")
Definition
TG4SpecialCuts.cxx:157
TG4VSpecialCuts::TG4VSpecialCuts
TG4VSpecialCuts(const G4String &processName)
Definition
TG4VSpecialCuts.cxx:29
Generated on
for Geant4 VMC by
1.17.0