ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4VEmissionProbability.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4VEmissionProbability.hh
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
// Hadronic Process: Nuclear De-excitations
27
// by V. Lara (Oct 1998)
28
//
29
// Modif (03 September 2008) by J. M. Quesada for external choice of inverse
30
// cross section option
31
// JMQ (06 September 2008) Also external choices have been added for
32
// superimposed Coulomb barrier (if useSICB is set true, by default is false)
33
//
34
// V.Ivanchenko general clean-up since 2010
35
//
36
37
#ifndef G4VEmissionProbability_h
38
#define G4VEmissionProbability_h 1
39
40
#include "
globals.hh
"
41
#include "
G4Fragment.hh
"
42
#include <vector>
43
44
class
G4NuclearLevelData
;
45
class
G4Pow
;
46
47
class
G4VEmissionProbability
48
{
49
public
:
50
51
explicit
G4VEmissionProbability
(
G4int
Z
,
G4int
A
);
52
virtual
~G4VEmissionProbability
();
53
54
void
Initialise
();
55
56
virtual
G4double
EmissionProbability
(
const
G4Fragment
& fragment,
57
G4double
anEnergy);
58
59
virtual
G4double
ComputeProbability
(
G4double
anEnergy,
G4double
CB);
60
61
inline
G4int
GetZ
(
void
)
const
{
return
theZ
; }
62
63
inline
G4int
GetA
(
void
)
const
{
return
theA
; }
64
65
// Z, A, rmass are residual parameters
66
// fmass is SCM mass of decaying nucleus
67
// exc is an excitation of emitted fragment
68
inline
void
SetDecayKinematics
(
G4int
Z,
G4int
A,
G4double
rmass,
69
G4double
fmass);
70
71
inline
G4double
GetRecoilExcitation
()
const
{
return
fExcRes
; };
72
73
inline
void
SetEvapExcitation
(
G4double
exc) {
fExc
= exc; };
74
75
inline
G4double
GetProbability
()
const
{
return
pProbability
; };
76
77
inline
void
ResetProbability
() {
pProbability
= 0.0; };
78
79
// this method may be called only if the probability is computed
80
// for given initial fragment and decay channel
81
G4double
SampleEnergy
();
82
83
protected
:
84
85
void
ResetIntegrator
(
size_t
nbin
,
G4double
de,
G4double
eps
);
86
87
G4double
IntegrateProbability
(
G4double
elow,
G4double
ehigh,
G4double
CB);
88
89
G4int
OPTxs
;
90
G4int
pVerbose
;
91
G4int
theZ
;
92
G4int
theA
;
93
G4int
resZ
;
94
G4int
resA
;
95
96
G4double
pMass
;
// initial fragment
97
G4double
pEvapMass
;
98
G4double
pResMass
;
99
G4double
pProbability
;
100
101
G4NuclearLevelData
*
pNuclearLevelData
;
102
G4Pow
*
pG4pow
;
103
104
private
:
105
106
G4double
FindRecoilExcitation
(
G4double
e
);
107
108
G4VEmissionProbability
(
const
G4VEmissionProbability
&
right
);
109
const
G4VEmissionProbability
&
operator
=
110
(
const
G4VEmissionProbability
&
right
);
111
G4bool
operator==
(
const
G4VEmissionProbability
&
right
)
const
;
112
G4bool
operator!=
(
const
G4VEmissionProbability
&
right
)
const
;
113
114
size_t
length
;
115
size_t
nbin
;
116
117
G4double
fExc
;
118
G4double
fExcRes
;
119
120
G4double
emin
;
121
G4double
emax
;
122
G4double
elimit
;
123
G4double
eCoulomb
;
124
G4double
accuracy
;
125
G4double
probmax
;
126
127
G4bool
fFD
;
128
};
129
130
inline
void
131
G4VEmissionProbability::SetDecayKinematics
(
G4int
Z
,
G4int
A
,
G4double
rmass,
132
G4double
fmass)
133
{
134
resZ
=
Z
;
135
resA
=
A
;
136
pMass
= fmass;
137
pResMass
= rmass;
138
}
139
140
#endif
geant4
tree
geant4-10.6-release
source
processes
hadronic
models
de_excitation
management
include
G4VEmissionProbability.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:42
using
1.8.2 with
ECCE GitHub integration