Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
Generator
src
Physics
HadronTransport
HAIntranuke2018.h
Go to the documentation of this file.
1
//____________________________________________________________________________
2
/*!
3
4
\class genie::Intranuke
5
6
\brief The INTRANUKE intranuclear hadron transport MC.
7
Is a concrete implementation of the EventRecordVisitorI interface.
8
9
\ref R.Merenyi et al., Phys.Rev.D45 (1992)
10
R.D.Ransome, Nucl.Phys.B 139 (2005)
11
12
Current INTRANUKE development is led by S.Dytman and H.Gallagher.
13
The original INTRANUKE cascade MC was developed (in fortran) for the
14
NeuGEN MC by R.Edgecock, G.F.Pearce, W.A.Mann, R.Merenyi and others.
15
16
\author Steve Dytman <dytman+@pitt.edu>, Pittsburgh University
17
Aaron Meyer <asm58@pitt.edu>, Pittsburgh University
18
Alex Bell, Pittsburgh University
19
Hugh Gallagher <gallag@minos.phy.tufts.edu>, Tufts University
20
Costas Andreopoulos <constantinos.andreopoulos \at cern.ch> STFC, Rutherford Lab
21
22
\created September 20, 2005
23
24
\cpright Copyright (c) 2003-2020, The GENIE Collaboration
25
For the full text of the license visit http://copyright.genie-mc.org
26
27
*/
28
//____________________________________________________________________________
29
30
#ifndef _HA_INTRANUKE_2018_H_
31
#define _HA_INTRANUKE_2018_H_
32
33
#include <TGenPhaseSpace.h>
34
35
#include "
Physics/NuclearState/NuclearModelI.h
"
36
#include "
Framework/Algorithm/AlgFactory.h
"
37
#include "
Framework/EventGen/EventRecordVisitorI.h
"
38
#include "
Physics/HadronTransport/INukeMode.h
"
39
#include "
Physics/HadronTransport/INukeHadroFates2018.h
"
40
#include "
Physics/HadronTransport/Intranuke2018.h
"
41
42
class
TLorentzVector;
43
class
TVector3;
44
45
namespace
genie
{
46
47
class
GHepParticle;
48
class
INukeHadroData2018;
49
class
PDGCodeList;
50
51
class
HAIntranuke2018
:
public
Intranuke2018
{
52
53
friend
class
IntranukeTester
;
54
55
public
:
56
HAIntranuke2018
();
57
HAIntranuke2018
(
string
config
);
58
~HAIntranuke2018
();
59
60
void
ProcessEventRecord
(
GHepRecord
* event_rec)
const
;
61
62
virtual
string
GetINukeMode
()
const
{
return
"hA2018"
;};
63
virtual
string
GetGenINukeMode
()
const
{
return
"hA"
;};
64
65
private
:
66
67
void
LoadConfig
(
void
);
68
69
void
SimulateHadronicFinalState
(
GHepRecord
* ev,
GHepParticle
*
p
)
const
;
70
void
SimulateHadronicFinalStateKinematics
(
GHepRecord
* ev,
GHepParticle
* p)
const
;
71
72
INukeFateHA_t
HadronFateHA
(
const
GHepParticle
* p)
const
;
73
//INukeFateHA_t HadronFateOset (void) const;
74
void
Inelastic
(
GHepRecord
* ev,
GHepParticle
* p,
INukeFateHA_t
fate)
const
;
75
void
ElasHA
(
GHepRecord
* ev,
GHepParticle
* p,
INukeFateHA_t
fate)
const
;
76
void
InelasticHA
(
GHepRecord
* ev,
GHepParticle
* p,
INukeFateHA_t
fate)
const
;
77
double
PiBounce
(
void
)
const
;
78
double
PnBounce
(
void
)
const
;
79
int
HandleCompoundNucleus
(
GHepRecord
* ev,
GHepParticle
* p,
int
mom)
const
;
80
81
mutable
int
nuclA
;
///< value of A for the target nucleus in hA mode
82
mutable
unsigned
int
fNumIterations
;
83
};
84
85
}
// genie namespace
86
87
#endif // _HA_INTRANUKE_2018_H_
genie
THE MAIN GENIE PROJECT NAMESPACE
Definition:
AlgCmp.h:25
genie::HAIntranuke2018::SimulateHadronicFinalState
void SimulateHadronicFinalState(GHepRecord *ev, GHepParticle *p) const
Definition:
HAIntranuke2018.cxx:125
genie::HAIntranuke2018::HandleCompoundNucleus
int HandleCompoundNucleus(GHepRecord *ev, GHepParticle *p, int mom) const
Definition:
HAIntranuke2018.cxx:1512
EventRecordVisitorI.h
genie::HAIntranuke2018::fNumIterations
unsigned int fNumIterations
Definition:
HAIntranuke2018.h:82
genie::HAIntranuke2018::PiBounce
double PiBounce(void) const
Definition:
HAIntranuke2018.cxx:376
genie::HAIntranuke2018::Inelastic
void Inelastic(GHepRecord *ev, GHepParticle *p, INukeFateHA_t fate) const
Definition:
HAIntranuke2018.cxx:739
INukeHadroFates2018.h
genie::HAIntranuke2018::ProcessEventRecord
void ProcessEventRecord(GHepRecord *event_rec) const
Definition:
HAIntranuke2018.cxx:113
genie::HAIntranuke2018::InelasticHA
void InelasticHA(GHepRecord *ev, GHepParticle *p, INukeFateHA_t fate) const
Definition:
HAIntranuke2018.cxx:553
NuclearModelI.h
Intranuke2018.h
genie::HAIntranuke2018::HAIntranuke2018
HAIntranuke2018()
Definition:
HAIntranuke2018.cxx:96
genie::HAIntranuke2018
Definition:
HAIntranuke2018.h:51
genie::HAIntranuke2018::~HAIntranuke2018
~HAIntranuke2018()
Definition:
HAIntranuke2018.cxx:108
config
static Config * config
Definition:
config.cpp:1054
genie::HAIntranuke2018::GetGenINukeMode
virtual string GetGenINukeMode() const
Definition:
HAIntranuke2018.h:63
genie::HAIntranuke2018::GetINukeMode
virtual string GetINukeMode() const
Definition:
HAIntranuke2018.h:62
test.p
p
Definition:
test.py:223
genie::HAIntranuke2018::LoadConfig
void LoadConfig(void)
Definition:
HAIntranuke2018.cxx:1520
genie::HAIntranuke2018::IntranukeTester
friend class IntranukeTester
Definition:
HAIntranuke2018.h:53
genie::HAIntranuke2018::ElasHA
void ElasHA(GHepRecord *ev, GHepParticle *p, INukeFateHA_t fate) const
Definition:
HAIntranuke2018.cxx:481
genie::HAIntranuke2018::PnBounce
double PnBounce(void) const
Definition:
HAIntranuke2018.cxx:428
genie::HAIntranuke2018::SimulateHadronicFinalStateKinematics
void SimulateHadronicFinalStateKinematics(GHepRecord *ev, GHepParticle *p) const
Definition:
HAIntranuke2018.cxx:168
genie::HAIntranuke2018::nuclA
int nuclA
value of A for the target nucleus in hA mode
Definition:
HAIntranuke2018.h:81
AlgFactory.h
genie::GHepRecord
GENIE's GHEP MC event record.
Definition:
GHepRecord.h:45
genie::GHepParticle
STDHEP-like event record entry that can fit a particle or a nucleus.
Definition:
GHepParticle.h:39
INukeMode.h
genie::HAIntranuke2018::HadronFateHA
INukeFateHA_t HadronFateHA(const GHepParticle *p) const
Definition:
HAIntranuke2018.cxx:224
genie::INukeFateHA_t
enum genie::EINukeFateHA_t INukeFateHA_t
genie::Intranuke2018
Definition:
Intranuke2018.h:54
Generated by
1.8.11