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
G4INCLCrossSectionsMultiPions.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4INCLCrossSectionsMultiPions.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
// INCL++ intra-nuclear cascade model
27
// Alain Boudard, CEA-Saclay, France
28
// Joseph Cugnon, University of Liege, Belgium
29
// Jean-Christophe David, CEA-Saclay, France
30
// Pekka Kaitaniemi, CEA-Saclay, France, and Helsinki Institute of Physics, Finland
31
// Sylvie Leray, CEA-Saclay, France
32
// Davide Mancusi, CEA-Saclay, France
33
//
34
#define INCLXX_IN_GEANT4_MODE 1
35
36
#include "
globals.hh
"
37
45
#ifndef G4INCLCROSSSECTIONSMULTIPIONS_HH
46
#define G4INCLCROSSSECTIONSMULTIPIONS_HH
47
48
#include "
G4INCLICrossSections.hh
"
49
#include "
G4INCLHornerFormEvaluator.hh
"
50
51
namespace
G4INCL {
53
54
class
CrossSectionsMultiPions
:
public
ICrossSections
{
55
public
:
56
CrossSectionsMultiPions
();
57
59
virtual
G4double
elastic
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
60
62
virtual
G4double
total
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
63
65
virtual
G4double
NDeltaToNN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
66
68
virtual
G4double
NNToNDelta
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
69
71
virtual
G4double
piNToDelta
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
72
74
virtual
G4double
piNToxPiN
(
const
G4int
xpi,
Particle
const
*
const
p1,
Particle
const
*
const
p2);
75
77
virtual
G4double
NNToxPiNN
(
const
G4int
xpi,
Particle
const
*
const
p1,
Particle
const
*
const
p2);
78
86
virtual
G4double
calculateNNAngularSlope
(
G4double
energyCM,
G4int
iso);
87
89
virtual
G4double
piNToEtaN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
90
virtual
G4double
piNToOmegaN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
91
virtual
G4double
piNToEtaPrimeN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
92
94
virtual
G4double
etaNToPiPiN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
95
virtual
G4double
omegaNToPiPiN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
96
98
virtual
G4double
etaNToPiN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
99
virtual
G4double
omegaNToPiN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
100
virtual
G4double
etaPrimeNToPiN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
101
103
virtual
G4double
NNToNNEta
(
Particle
const
*
const
particle1,
Particle
const
*
const
particle2);
104
106
virtual
G4double
NNToNNEtaExclu
(
Particle
const
*
const
particle1,
Particle
const
*
const
particle2);
107
109
virtual
G4double
NNToNNEtaxPi
(
const
G4int
xpi,
Particle
const
*
const
p1,
Particle
const
*
const
p2);
110
112
virtual
G4double
NNToNDeltaEta
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
113
115
virtual
G4double
NNToNNOmega
(
Particle
const
*
const
particle1,
Particle
const
*
const
particle2);
116
118
virtual
G4double
NNToNNOmegaExclu
(
Particle
const
*
const
particle1,
Particle
const
*
const
particle2);
119
121
virtual
G4double
NNToNNOmegaxPi
(
const
G4int
xpi,
Particle
const
*
const
p1,
Particle
const
*
const
p2);
122
124
virtual
G4double
NNToNDeltaOmega
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
125
126
128
virtual
G4double
NYelastic
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
129
virtual
G4double
NKbelastic
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
130
virtual
G4double
NKelastic
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
131
133
virtual
G4double
NNToNLK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
134
virtual
G4double
NNToNSK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
135
virtual
G4double
NNToNLKpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
136
virtual
G4double
NNToNSKpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
137
virtual
G4double
NNToNLK2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
138
virtual
G4double
NNToNSK2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
139
virtual
G4double
NNToNNKKb
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
140
141
virtual
G4double
NNToMissingStrangeness
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
142
144
virtual
G4double
NDeltaToNLK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
145
virtual
G4double
NDeltaToNSK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
146
virtual
G4double
NDeltaToDeltaLK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
147
virtual
G4double
NDeltaToDeltaSK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
148
149
virtual
G4double
NDeltaToNNKKb
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
150
152
virtual
G4double
NpiToLK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
153
virtual
G4double
NpiToSK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
154
virtual
G4double
p_pimToSzKz
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
155
virtual
G4double
p_pimToSmKp
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
156
virtual
G4double
p_pizToSzKp
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
157
virtual
G4double
NpiToLKpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
158
virtual
G4double
NpiToSKpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
159
virtual
G4double
NpiToLK2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
160
virtual
G4double
NpiToSK2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
161
virtual
G4double
NpiToNKKb
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
162
163
virtual
G4double
NpiToMissingStrangeness
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
164
166
virtual
G4double
NLToNS
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
167
virtual
G4double
NSToNL
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
168
virtual
G4double
NSToNS
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
169
171
virtual
G4double
NKToNK
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
172
virtual
G4double
NKToNKpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
173
virtual
G4double
NKToNK2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
174
176
virtual
G4double
NKbToNKb
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
177
virtual
G4double
NKbToSpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
178
virtual
G4double
NKbToLpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
179
virtual
G4double
NKbToS2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
180
virtual
G4double
NKbToL2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
181
virtual
G4double
NKbToNKbpi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
182
virtual
G4double
NKbToNKb2pi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
183
184
185
protected
:
187
static
const
G4int
nMaxPiNN
;
188
190
static
const
G4int
nMaxPiPiN
;
191
193
const
HornerC7
s11pzHC
;
195
const
HornerC8
s01ppHC
;
197
const
HornerC4
s01pzHC
;
199
const
HornerC4
s11pmHC
;
201
const
HornerC5
s12pmHC
;
203
const
HornerC3
s12ppHC
;
205
const
HornerC4
s12zzHC
;
207
const
HornerC4
s02pzHC
;
209
const
HornerC6
s02pmHC
;
211
const
HornerC4
s12mzHC
;
212
214
static
const
G4double
s11pzOOT
;
216
static
const
G4double
s01ppOOT
;
218
static
const
G4double
s01pzOOT
;
220
static
const
G4double
s11pmOOT
;
222
static
const
G4double
s12pmOOT
;
224
static
const
G4double
s12ppOOT
;
226
static
const
G4double
s12zzOOT
;
228
static
const
G4double
s02pzOOT
;
230
static
const
G4double
s02pmOOT
;
232
static
const
G4double
s12mzOOT
;
233
235
G4double
NNElastic
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
236
238
G4double
NNElasticFixed
(
const
G4double
s
,
const
G4int
i);
239
241
G4double
NNTot
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
242
244
G4double
NNTotFixed
(
const
G4double
s
,
const
G4int
i);
245
247
G4double
NNInelasticIso
(
const
G4double
ener,
const
G4int
iso);
248
250
virtual
G4double
NNOnePiOrDelta
(
const
G4double
ener,
const
G4int
iso,
const
G4double
xsiso);
252
virtual
G4double
NNTwoPi
(
const
G4double
ener,
const
G4int
iso,
const
G4double
xsiso);
254
virtual
G4double
NNThreePi
(
const
G4double
ener,
const
G4int
iso,
const
G4double
xsiso,
const
G4double
xs1pi,
const
G4double
xs2pi);
255
257
virtual
G4double
NNOnePi
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
259
virtual
G4double
NNOnePiOrDelta
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
261
virtual
G4double
NNTwoPi
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
263
virtual
G4double
NNThreePi
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
265
virtual
G4double
NNFourPi
(
Particle
const
*
const
part1,
Particle
const
*
const
part2);
266
268
G4double
spnPiPlusPHE
(
const
G4double
x
);
270
G4double
spnPiMinusPHE
(
const
G4double
x
);
271
G4double
piNIne
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
272
G4double
piNTot
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
273
G4double
piNTopiN
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
274
G4double
piPluspIne
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
275
G4double
piMinuspIne
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
276
G4double
piPluspOnePi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
277
G4double
piMinuspOnePi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
278
G4double
piPluspTwoPi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
279
G4double
piMinuspTwoPi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
280
282
virtual
G4double
piNOnePi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
283
285
virtual
G4double
piNTwoPi
(
Particle
const
*
const
p1,
Particle
const
*
const
p2);
286
287
288
};
289
}
290
291
#endif
geant4
tree
geant4-10.6-release
source
processes
hadronic
models
inclxx
incl_physics
include
G4INCLCrossSectionsMultiPions.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:44
using
1.8.2 with
ECCE GitHub integration