Geant4
9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4DiscreteGammaTransition.hh
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
// $Id$
27
//
28
// -------------------------------------------------------------------
29
// GEANT 4 class file
30
//
31
// CERN, Geneva, Switzerland
32
//
33
// File name: G4DiscreteGammaTransition
34
//
35
// Author: Maria Grazia Pia (
[email protected]
)
36
//
37
// Creation date: 23 October 1998
38
//
39
// Modifications:
40
//
41
// 8 March 2002, Fan Lei (
[email protected]
)
42
// added
43
// 1) SetRDM () to switch on/off IC process
44
// 2) GetOrbitNumber () to return the CE oribit number
45
// 3) GetBondEnergy() for the converted e-
46
// 4) IsaGamma() to separate CE from gamma
47
//
48
// 21 Nov. 2001, Fan Lei (
[email protected]
)
49
// i) added G4int _nucleusZ initialise it through the constructor
50
// ii) modified SelectGamma() to allow the generation of conversion electrons
51
// iii) added #include G4AtomicShells.hh
52
//
53
// 15 April 1999, Alessandro Brunengo (
[email protected]
)
54
// Added creation time evaluation for products of evaporation
55
//
56
//
57
// 19 April 2010, J. M. Quesada.
58
// Corrections added for taking into account mismatch between tabulated
59
// gamma energies and level energy differences (fake photons eliminated)
60
//
61
// 6 October 2010, M. Kelsey
62
// Store NuclearLevel as const-reference, not as copied value.
63
//
64
// 5 May 2011, V.Ivanchenko removed unused constructor
65
//
66
// -------------------------------------------------------------------
67
68
#ifndef G4DiscreteGammaTransition_hh
69
#define G4DiscreteGammaTransition_hh
70
71
#include "
globals.hh
"
72
#include "
G4VGammaTransition.hh
"
73
74
class
G4NuclearLevel
;
75
//JMQ 180410
76
class
G4NuclearLevelManager
;
77
78
79
class
G4DiscreteGammaTransition
:
public
G4VGammaTransition
80
{
81
public
:
82
83
//JMQ 180410
84
G4DiscreteGammaTransition
(
const
G4NuclearLevel
& level,
G4int
Z,
G4int
A);
85
86
// Destructor
87
virtual
~G4DiscreteGammaTransition
();
88
89
// Functions
90
91
public
:
92
93
virtual
void
SetEnergyFrom
(
G4double
energy);
94
virtual
G4double
GetGammaEnergy
();
95
virtual
G4double
GetGammaCreationTime
();
96
virtual
void
SelectGamma
();
97
98
inline
void
SetICM
(
G4bool
ic) { _icm = ic; };
99
inline
G4bool
GetICM
()
const
{
return
_icm;};
100
inline
G4double
GetBondEnergy
() {
return
_bondE;};
101
inline
G4int
GetOrbitNumber
() {
return
_orbitE;};
102
inline
G4bool
IsAGamma
() {
return
_aGamma;};
103
104
private
:
105
106
G4int
_nucleusZ;
107
G4int
_orbitE;
108
G4double
_bondE;
109
G4bool
_aGamma;
110
G4bool
_icm;
111
112
G4double
_gammaEnergy;
113
const
G4NuclearLevel
& _level;
114
G4double
_excitation;
115
G4double
_gammaCreationTime;
116
//JMQ 180410
117
G4int
_A;
118
G4int
_Z;
119
G4NuclearLevelManager
* _levelManager;
120
//JMQ 190410
121
G4double
_tolerance;
122
};
123
124
125
#endif
126
G4double
double G4double
Definition:
G4Types.hh:64
G4int
int G4int
Definition:
G4Types.hh:66
G4bool
bool G4bool
Definition:
G4Types.hh:67
G4VGammaTransition.hh
G4DiscreteGammaTransition
Definition:
G4DiscreteGammaTransition.hh:80
G4DiscreteGammaTransition::GetOrbitNumber
G4int GetOrbitNumber()
Definition:
G4DiscreteGammaTransition.hh:101
G4DiscreteGammaTransition::IsAGamma
G4bool IsAGamma()
Definition:
G4DiscreteGammaTransition.hh:102
G4DiscreteGammaTransition::GetBondEnergy
G4double GetBondEnergy()
Definition:
G4DiscreteGammaTransition.hh:100
G4DiscreteGammaTransition::SetICM
void SetICM(G4bool ic)
Definition:
G4DiscreteGammaTransition.hh:98
G4DiscreteGammaTransition::~G4DiscreteGammaTransition
virtual ~G4DiscreteGammaTransition()
Definition:
G4DiscreteGammaTransition.cc:86
G4DiscreteGammaTransition::SetEnergyFrom
virtual void SetEnergyFrom(G4double energy)
Definition:
G4DiscreteGammaTransition.cc:237
G4DiscreteGammaTransition::SelectGamma
virtual void SelectGamma()
Definition:
G4DiscreteGammaTransition.cc:89
G4DiscreteGammaTransition::GetGammaEnergy
virtual G4double GetGammaEnergy()
Definition:
G4DiscreteGammaTransition.cc:227
G4DiscreteGammaTransition::GetGammaCreationTime
virtual G4double GetGammaCreationTime()
Definition:
G4DiscreteGammaTransition.cc:232
G4DiscreteGammaTransition::GetICM
G4bool GetICM() const
Definition:
G4DiscreteGammaTransition.hh:99
G4NuclearLevelManager
Definition:
G4NuclearLevelManager.hh:66
G4NuclearLevel
Definition:
G4NuclearLevel.hh:66
G4VGammaTransition
Definition:
G4VGammaTransition.hh:53
globals.hh
geant4-v9.6.0
source
processes
hadronic
models
de_excitation
photon_evaporation
include
G4DiscreteGammaTransition.hh
Generated by
1.9.6