Geant4-11
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
m
n
p
r
s
t
w
y
Enumerations
a
b
c
d
e
f
g
l
m
p
r
s
t
v
y
z
Enumerator
a
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Enumerations
a
b
c
d
e
f
g
i
l
m
n
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Related Functions
:
a
b
c
d
g
h
i
o
q
r
s
t
Files
File List
Globals
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
x
z
Enumerations
b
c
d
e
f
g
i
j
l
m
n
p
r
s
t
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Macros
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Examples
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
source
processes
hadronic
models
lend
include
G4LENDModel.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
#ifndef G4LENDModel_h
27
#define G4LENDModel_h 1
28
29
// Class Description
30
// Final state production model for a LEND (Low Energy Nuclear Data)
31
// LEND is Geant4 interface for GIDI (General Interaction Data Interface)
32
// which gives a discription of nuclear and atomic reactions, such as
33
// Binary collision cross sections
34
// Particle number multiplicity distributions of reaction products
35
// Energy and angular distributions of reaction products
36
// Derived calculational constants
37
// LEND is developped at Lawrence Livermore National Laboratory
38
// Class Description - End
39
40
// 071025 First implementation done by T. Koi (SLAC/SCCS)
41
// 101118 Name modifications for release T. Koi (SLAC/PPA)
42
43
#include "
G4LENDHeader.hh
"
44
#include "
G4LENDManager.hh
"
45
#include "
G4LENDUsedTarget.hh
"
46
#include "
G4HadronicInteraction.hh
"
47
#include "
globals.hh
"
48
49
extern
"C"
double
MyRNG
(
void
*);
50
51
class
G4LENDModel
:
public
G4HadronicInteraction
52
{
53
54
public
:
55
56
//G4LENDModel();
57
G4LENDModel
(
G4String
name
=
"LENDModel"
);
58
~G4LENDModel
();
59
60
virtual
G4HadFinalState
*
ApplyYourself
(
const
G4HadProjectile
& aTrack,
G4Nucleus
& aTargetNucleus );
61
62
void
ChangeDefaultEvaluation
(
G4String
name
){
default_evaluation
=
name
;
recreate_used_target_map
(); };
63
void
AllowNaturalAbundanceTarget
(){
allow_nat
=
true
;
recreate_used_target_map
(); };
64
void
AllowAnyCandidateTarget
(){
allow_any
=
true
;
recreate_used_target_map
(); };
65
//Same argument to the CrossSectionDataSet
66
void
BuildPhysicsTable
(
const
G4ParticleDefinition
& ){
recreate_used_target_map
(); };
67
void
DumpLENDTargetInfo
(
G4bool
force =
false
);
68
69
private
:
70
71
G4String
default_evaluation
;
72
G4bool
allow_nat
;
73
G4bool
allow_any
;
74
75
protected
:
76
77
void
create_used_target_map
();
78
void
recreate_used_target_map
();
79
G4GIDI_target
*
get_target_from_map
(
G4int
nuclear_code );
80
81
G4HadFinalState
*
returnUnchanged
(
const
G4HadProjectile
& aTrack,
G4HadFinalState
* theResult );
82
83
G4ParticleDefinition
*
proj
;
84
G4LENDManager
*
lend_manager
;
85
std::map< G4int , G4LENDUsedTarget* >
usedTarget_map
;
86
87
G4int
secID
;
// Creator model ID for the secondaries created by this model
88
};
89
90
#endif
G4HadronicInteraction.hh
G4LENDHeader.hh
G4LENDManager.hh
MyRNG
double MyRNG(void *)
Definition:
G4LENDModel.cc:46
G4LENDUsedTarget.hh
G4bool
bool G4bool
Definition:
G4Types.hh:86
G4int
int G4int
Definition:
G4Types.hh:85
G4GIDI_target
Definition:
G4GIDI_target.hh:58
G4HadFinalState
Definition:
G4HadFinalState.hh:46
G4HadProjectile
Definition:
G4HadProjectile.hh:40
G4HadronicInteraction
Definition:
G4HadronicInteraction.hh:64
G4LENDManager
Definition:
G4LENDManager.hh:64
G4LENDModel
Definition:
G4LENDModel.hh:52
G4LENDModel::allow_any
G4bool allow_any
Definition:
G4LENDModel.hh:73
G4LENDModel::usedTarget_map
std::map< G4int, G4LENDUsedTarget * > usedTarget_map
Definition:
G4LENDModel.hh:85
G4LENDModel::ApplyYourself
virtual G4HadFinalState * ApplyYourself(const G4HadProjectile &aTrack, G4Nucleus &aTargetNucleus)
Definition:
G4LENDModel.cc:160
G4LENDModel::AllowAnyCandidateTarget
void AllowAnyCandidateTarget()
Definition:
G4LENDModel.hh:64
G4LENDModel::BuildPhysicsTable
void BuildPhysicsTable(const G4ParticleDefinition &)
Definition:
G4LENDModel.hh:66
G4LENDModel::secID
G4int secID
Definition:
G4LENDModel.hh:87
G4LENDModel::~G4LENDModel
~G4LENDModel()
Definition:
G4LENDModel.cc:69
G4LENDModel::lend_manager
G4LENDManager * lend_manager
Definition:
G4LENDModel.hh:84
G4LENDModel::DumpLENDTargetInfo
void DumpLENDTargetInfo(G4bool force=false)
Definition:
G4LENDModel.cc:277
G4LENDModel::G4LENDModel
G4LENDModel(G4String name="LENDModel")
Definition:
G4LENDModel.cc:48
G4LENDModel::AllowNaturalAbundanceTarget
void AllowNaturalAbundanceTarget()
Definition:
G4LENDModel.hh:63
G4LENDModel::recreate_used_target_map
void recreate_used_target_map()
Definition:
G4LENDModel.cc:79
G4LENDModel::create_used_target_map
void create_used_target_map()
Definition:
G4LENDModel.cc:95
G4LENDModel::allow_nat
G4bool allow_nat
Definition:
G4LENDModel.hh:72
G4LENDModel::ChangeDefaultEvaluation
void ChangeDefaultEvaluation(G4String name)
Definition:
G4LENDModel.hh:62
G4LENDModel::returnUnchanged
G4HadFinalState * returnUnchanged(const G4HadProjectile &aTrack, G4HadFinalState *theResult)
Definition:
G4LENDModel.cc:255
G4LENDModel::proj
G4ParticleDefinition * proj
Definition:
G4LENDModel.hh:83
G4LENDModel::default_evaluation
G4String default_evaluation
Definition:
G4LENDModel.hh:71
G4LENDModel::get_target_from_map
G4GIDI_target * get_target_from_map(G4int nuclear_code)
Definition:
G4LENDModel.cc:269
G4Nucleus
Definition:
G4Nucleus.hh:52
G4ParticleDefinition
Definition:
G4ParticleDefinition.hh:61
G4String
Definition:
G4String.hh:62
globals.hh
G4InuclParticleNames::name
const char * name(G4int ptype)
Definition:
G4InuclParticleNames.hh:76
Generated by
1.9.3