Geant4
9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4NeutronHPorLEInelastic.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
//
27
// 05-11-21 NeutronHP or Low Energy Parameterization Models
28
// Implemented by T. Koi (SLAC/SCCS)
29
// If NeutronHP data do not available for an element, then Low Energy
30
// Parameterization models handle the interactions of the element.
31
//
32
33
//
34
// Hadronic Process: High Precision low E neutron tracking
35
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
36
// Builds and has the Cross-section data for one material.
37
38
#ifndef G4NeutronHPorLEInelastic_h
39
#define G4NeutronHPorLEInelastic_h 1
40
41
// Class Description
42
// Final state production model for a high precision (based on evaluated data
43
// libraries) description of neutron elastic scattering below 20 MeV;
44
// To be used in your physics list in case you need this physics.
45
// In this case you want to register an object of this class with
46
// the corresponding process.
47
// Class Description - End
48
49
#include "
G4NeutronHPorLEInelasticData.hh
"
50
51
#include "
globals.hh
"
52
#include "
G4NeutronHPChannel.hh
"
53
#include "
G4NeutronHPChannelList.hh
"
54
#include "
G4HadronicInteraction.hh
"
55
56
#include "
G4NeutronHP2AInelasticFS.hh
"
57
#include "
G4NeutronHP2N2AInelasticFS.hh
"
58
#include "
G4NeutronHP2NAInelasticFS.hh
"
59
#include "
G4NeutronHP2NDInelasticFS.hh
"
60
#include "
G4NeutronHP2NInelasticFS.hh
"
61
#include "
G4NeutronHP2NPInelasticFS.hh
"
62
#include "
G4NeutronHP2PInelasticFS.hh
"
63
#include "
G4NeutronHP3AInelasticFS.hh
"
64
#include "
G4NeutronHP3NAInelasticFS.hh
"
65
#include "
G4NeutronHP3NInelasticFS.hh
"
66
#include "
G4NeutronHP3NPInelasticFS.hh
"
67
#include "
G4NeutronHP4NInelasticFS.hh
"
68
#include "
G4NeutronHPAInelasticFS.hh
"
69
#include "
G4NeutronHPD2AInelasticFS.hh
"
70
#include "
G4NeutronHPDAInelasticFS.hh
"
71
#include "
G4NeutronHPDInelasticFS.hh
"
72
#include "
G4NeutronHPHe3InelasticFS.hh
"
73
#include "
G4NeutronHPN2AInelasticFS.hh
"
74
#include "
G4NeutronHPN2PInelasticFS.hh
"
75
#include "
G4NeutronHPN3AInelasticFS.hh
"
76
#include "
G4NeutronHPNAInelasticFS.hh
"
77
#include "
G4NeutronHPND2AInelasticFS.hh
"
78
#include "
G4NeutronHPNDInelasticFS.hh
"
79
#include "
G4NeutronHPNHe3InelasticFS.hh
"
80
#include "
G4NeutronHPNInelasticFS.hh
"
81
#include "
G4NeutronHPNPAInelasticFS.hh
"
82
#include "
G4NeutronHPNPInelasticFS.hh
"
83
#include "
G4NeutronHPNT2AInelasticFS.hh
"
84
#include "
G4NeutronHPNTInelasticFS.hh
"
85
#include "
G4NeutronHPNXInelasticFS.hh
"
86
#include "
G4NeutronHPPAInelasticFS.hh
"
87
#include "
G4NeutronHPPDInelasticFS.hh
"
88
#include "
G4NeutronHPPInelasticFS.hh
"
89
#include "
G4NeutronHPPTInelasticFS.hh
"
90
#include "
G4NeutronHPT2AInelasticFS.hh
"
91
#include "
G4NeutronHPTInelasticFS.hh
"
92
93
#include <set>
94
95
class
G4NeutronHPorLEInelastic
:
public
G4HadronicInteraction
96
{
97
public
:
98
99
G4NeutronHPorLEInelastic
();
100
101
~G4NeutronHPorLEInelastic
();
102
103
G4HadFinalState
*
ApplyYourself
(
const
G4HadProjectile
& aTrack,
G4Nucleus
& aTargetNucleus);
104
105
virtual
const
std::pair<G4double, G4double>
GetFatalEnergyCheckLevels
()
const
;
106
107
//G4int GetNiso() {return theInelastic[0].GetNiso();}
108
109
private
:
110
G4NeutronHP2AInelasticFS
the2AFS;
111
G4NeutronHP2N2AInelasticFS
the2N2AFS;
112
G4NeutronHP2NAInelasticFS
the2NAFS;
113
G4NeutronHP2NDInelasticFS
the2NDFS;
114
G4NeutronHP2NInelasticFS
the2NFS;
115
G4NeutronHP2NPInelasticFS
the2NPFS;
116
G4NeutronHP2PInelasticFS
the2PFS;
117
G4NeutronHP3AInelasticFS
the3AFS;
118
G4NeutronHP3NAInelasticFS
the3NAFS;
119
G4NeutronHP3NInelasticFS
the3NFS;
120
G4NeutronHP3NPInelasticFS
the3NPFS;
121
G4NeutronHP4NInelasticFS
the4NFS;
122
G4NeutronHPAInelasticFS
theAFS;
123
G4NeutronHPD2AInelasticFS
theD2AFS;
124
G4NeutronHPDAInelasticFS
theDAFS;
125
G4NeutronHPDInelasticFS
theDFS;
126
G4NeutronHPHe3InelasticFS
theHe3FS;
127
G4NeutronHPN2AInelasticFS
theN2AFS;
128
G4NeutronHPN2PInelasticFS
theN2PFS;
129
G4NeutronHPN3AInelasticFS
theN3AFS;
130
G4NeutronHPNAInelasticFS
theNAFS;
131
G4NeutronHPND2AInelasticFS
theND2AFS;
132
G4NeutronHPNDInelasticFS
theNDFS;
133
G4NeutronHPNHe3InelasticFS
theNHe3FS;
134
G4NeutronHPNInelasticFS
theNFS;
135
G4NeutronHPNPAInelasticFS
theNPAFS;
136
G4NeutronHPNPInelasticFS
theNPFS;
137
G4NeutronHPNT2AInelasticFS
theNT2AFS;
138
G4NeutronHPNTInelasticFS
theNTFS;
139
G4NeutronHPNXInelasticFS
theNXFS;
140
G4NeutronHPPAInelasticFS
thePAFS;
141
G4NeutronHPPDInelasticFS
thePDFS;
142
G4NeutronHPPInelasticFS
thePFS;
143
G4NeutronHPPTInelasticFS
thePTFS;
144
G4NeutronHPT2AInelasticFS
theT2AFS;
145
G4NeutronHPTInelasticFS
theTFS;
146
147
G4double
* xSec;
148
G4NeutronHPChannelList
* theInelastic;
149
G4String
dirName;
150
G4int
numEle;
151
152
public
:
153
G4bool
IsThisElementOK
(
G4String
);
154
private
:
155
std::set< G4String > unavailable_elements;
156
157
public
:
158
G4VCrossSectionDataSet
*
GiveXSectionDataSet
() {
return
theDataSet; };
159
private
:
160
G4NeutronHPorLEInelasticData
* theDataSet;
161
void
createXSectionDataSet();
162
};
163
164
#endif
G4HadronicInteraction.hh
G4NeutronHP2AInelasticFS.hh
G4NeutronHP2N2AInelasticFS.hh
G4NeutronHP2NAInelasticFS.hh
G4NeutronHP2NDInelasticFS.hh
G4NeutronHP2NInelasticFS.hh
G4NeutronHP2NPInelasticFS.hh
G4NeutronHP2PInelasticFS.hh
G4NeutronHP3AInelasticFS.hh
G4NeutronHP3NAInelasticFS.hh
G4NeutronHP3NInelasticFS.hh
G4NeutronHP3NPInelasticFS.hh
G4NeutronHP4NInelasticFS.hh
G4NeutronHPAInelasticFS.hh
G4NeutronHPChannelList.hh
G4NeutronHPChannel.hh
G4NeutronHPD2AInelasticFS.hh
G4NeutronHPDAInelasticFS.hh
G4NeutronHPDInelasticFS.hh
G4NeutronHPHe3InelasticFS.hh
G4NeutronHPN2AInelasticFS.hh
G4NeutronHPN2PInelasticFS.hh
G4NeutronHPN3AInelasticFS.hh
G4NeutronHPNAInelasticFS.hh
G4NeutronHPND2AInelasticFS.hh
G4NeutronHPNDInelasticFS.hh
G4NeutronHPNHe3InelasticFS.hh
G4NeutronHPNInelasticFS.hh
G4NeutronHPNPAInelasticFS.hh
G4NeutronHPNPInelasticFS.hh
G4NeutronHPNT2AInelasticFS.hh
G4NeutronHPNTInelasticFS.hh
G4NeutronHPNXInelasticFS.hh
G4NeutronHPPAInelasticFS.hh
G4NeutronHPPDInelasticFS.hh
G4NeutronHPPInelasticFS.hh
G4NeutronHPPTInelasticFS.hh
G4NeutronHPT2AInelasticFS.hh
G4NeutronHPTInelasticFS.hh
G4NeutronHPorLEInelasticData.hh
G4double
double G4double
Definition:
G4Types.hh:64
G4int
int G4int
Definition:
G4Types.hh:66
G4bool
bool G4bool
Definition:
G4Types.hh:67
G4HadFinalState
Definition:
G4HadFinalState.hh:46
G4HadProjectile
Definition:
G4HadProjectile.hh:40
G4HadronicInteraction
Definition:
G4HadronicInteraction.hh:64
G4NeutronHP2AInelasticFS
Definition:
G4NeutronHP2AInelasticFS.hh:42
G4NeutronHP2N2AInelasticFS
Definition:
G4NeutronHP2N2AInelasticFS.hh:42
G4NeutronHP2NAInelasticFS
Definition:
G4NeutronHP2NAInelasticFS.hh:42
G4NeutronHP2NDInelasticFS
Definition:
G4NeutronHP2NDInelasticFS.hh:42
G4NeutronHP2NInelasticFS
Definition:
G4NeutronHP2NInelasticFS.hh:42
G4NeutronHP2NPInelasticFS
Definition:
G4NeutronHP2NPInelasticFS.hh:42
G4NeutronHP2PInelasticFS
Definition:
G4NeutronHP2PInelasticFS.hh:42
G4NeutronHP3AInelasticFS
Definition:
G4NeutronHP3AInelasticFS.hh:42
G4NeutronHP3NAInelasticFS
Definition:
G4NeutronHP3NAInelasticFS.hh:42
G4NeutronHP3NInelasticFS
Definition:
G4NeutronHP3NInelasticFS.hh:42
G4NeutronHP3NPInelasticFS
Definition:
G4NeutronHP3NPInelasticFS.hh:42
G4NeutronHP4NInelasticFS
Definition:
G4NeutronHP4NInelasticFS.hh:42
G4NeutronHPAInelasticFS
Definition:
G4NeutronHPAInelasticFS.hh:42
G4NeutronHPChannelList
Definition:
G4NeutronHPChannelList.hh:46
G4NeutronHPD2AInelasticFS
Definition:
G4NeutronHPD2AInelasticFS.hh:38
G4NeutronHPDAInelasticFS
Definition:
G4NeutronHPDAInelasticFS.hh:42
G4NeutronHPDInelasticFS
Definition:
G4NeutronHPDInelasticFS.hh:42
G4NeutronHPHe3InelasticFS
Definition:
G4NeutronHPHe3InelasticFS.hh:42
G4NeutronHPN2AInelasticFS
Definition:
G4NeutronHPN2AInelasticFS.hh:42
G4NeutronHPN2PInelasticFS
Definition:
G4NeutronHPN2PInelasticFS.hh:42
G4NeutronHPN3AInelasticFS
Definition:
G4NeutronHPN3AInelasticFS.hh:42
G4NeutronHPNAInelasticFS
Definition:
G4NeutronHPNAInelasticFS.hh:42
G4NeutronHPND2AInelasticFS
Definition:
G4NeutronHPND2AInelasticFS.hh:42
G4NeutronHPNDInelasticFS
Definition:
G4NeutronHPNDInelasticFS.hh:42
G4NeutronHPNHe3InelasticFS
Definition:
G4NeutronHPNHe3InelasticFS.hh:42
G4NeutronHPNInelasticFS
Definition:
G4NeutronHPNInelasticFS.hh:42
G4NeutronHPNPAInelasticFS
Definition:
G4NeutronHPNPAInelasticFS.hh:42
G4NeutronHPNPInelasticFS
Definition:
G4NeutronHPNPInelasticFS.hh:42
G4NeutronHPNT2AInelasticFS
Definition:
G4NeutronHPNT2AInelasticFS.hh:42
G4NeutronHPNTInelasticFS
Definition:
G4NeutronHPNTInelasticFS.hh:42
G4NeutronHPNXInelasticFS
Definition:
G4NeutronHPNXInelasticFS.hh:42
G4NeutronHPPAInelasticFS
Definition:
G4NeutronHPPAInelasticFS.hh:42
G4NeutronHPPDInelasticFS
Definition:
G4NeutronHPPDInelasticFS.hh:42
G4NeutronHPPInelasticFS
Definition:
G4NeutronHPPInelasticFS.hh:42
G4NeutronHPPTInelasticFS
Definition:
G4NeutronHPPTInelasticFS.hh:42
G4NeutronHPT2AInelasticFS
Definition:
G4NeutronHPT2AInelasticFS.hh:38
G4NeutronHPTInelasticFS
Definition:
G4NeutronHPTInelasticFS.hh:42
G4NeutronHPorLEInelasticData
Definition:
G4NeutronHPorLEInelasticData.hh:57
G4NeutronHPorLEInelastic
Definition:
G4NeutronHPorLEInelastic.hh:96
G4NeutronHPorLEInelastic::ApplyYourself
G4HadFinalState * ApplyYourself(const G4HadProjectile &aTrack, G4Nucleus &aTargetNucleus)
Definition:
G4NeutronHPorLEInelastic.cc:134
G4NeutronHPorLEInelastic::IsThisElementOK
G4bool IsThisElementOK(G4String)
Definition:
G4NeutronHPorLEInelastic.cc:180
G4NeutronHPorLEInelastic::GiveXSectionDataSet
G4VCrossSectionDataSet * GiveXSectionDataSet()
Definition:
G4NeutronHPorLEInelastic.hh:158
G4NeutronHPorLEInelastic::GetFatalEnergyCheckLevels
virtual const std::pair< G4double, G4double > GetFatalEnergyCheckLevels() const
Definition:
G4NeutronHPorLEInelastic.cc:194
G4NeutronHPorLEInelastic::G4NeutronHPorLEInelastic
G4NeutronHPorLEInelastic()
Definition:
G4NeutronHPorLEInelastic.cc:41
G4NeutronHPorLEInelastic::~G4NeutronHPorLEInelastic
~G4NeutronHPorLEInelastic()
Definition:
G4NeutronHPorLEInelastic.cc:126
G4Nucleus
Definition:
G4Nucleus.hh:51
G4String
Definition:
G4String.hh:105
G4VCrossSectionDataSet
Definition:
G4VCrossSectionDataSet.hh:72
globals.hh
geant4-v9.6.0
source
processes
hadronic
models
neutron_hp
include
G4NeutronHPorLEInelastic.hh
Generated by
1.9.6