Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
Generator
src
Physics
HadronTransport
HNIntranuke2018.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 _HN_INTRANUKE_2018_H_
31
#define _HN_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/INukeHadroFates.h
"
40
#include "
Physics/HadronTransport/Intranuke2018.h
"
41
42
class
TLorentzVector;
43
class
TVector3;
44
45
namespace
genie
{
46
47
class
GHepParticle;
48
class
INukeHadroData;
49
class
PDGCodeList;
50
51
class
HNIntranuke2018
:
public
Intranuke2018
{
52
53
friend
class
IntranukeTester
;
54
55
public
:
56
HNIntranuke2018
();
57
HNIntranuke2018
(
string
config
);
58
~HNIntranuke2018
();
59
60
void
ProcessEventRecord
(
GHepRecord
* event_rec)
const
;
61
62
virtual
string
GetINukeMode
()
const
{
return
"hN2018"
;};
63
virtual
string
GetGenINukeMode
()
const
{
return
"hN"
;};
64
65
private
:
66
67
void
LoadConfig
(
void
);
68
69
// methods specific to intranuke HN-mode
70
void
SimulateHadronicFinalState
(
GHepRecord
* ev,
GHepParticle
*
p
)
const
;
71
INukeFateHN_t
HadronFateHN
(
const
GHepParticle
* p)
const
;
72
INukeFateHN_t
HadronFateOset
()
const
;
73
double
FateWeight
(
int
pdgc,
INukeFateHN_t
fate)
const
;
74
void
ElasHN
(
GHepRecord
* ev,
GHepParticle
* p,
INukeFateHN_t
fate)
const
;
75
void
AbsorbHN
(
GHepRecord
* ev,
GHepParticle
* p,
INukeFateHN_t
fate)
const
;
76
void
InelasticHN
(
GHepRecord
* ev,
GHepParticle
* p)
const
;
77
void
GammaInelasticHN
(
GHepRecord
* ev,
GHepParticle
* p,
INukeFateHN_t
fate)
const
;
78
bool
HandleCompoundNucleusHN
(
GHepRecord
* ev,
GHepParticle
* p)
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
83
// data members specific to intranuke HN-mode
84
double
fNucQEFac
;
85
86
};
87
88
}
// genie namespace
89
90
#endif // _HN_INTRANUKE_ALT_H_
91
genie::HNIntranuke2018::HNIntranuke2018
HNIntranuke2018()
Definition:
HNIntranuke2018.cxx:96
genie
THE MAIN GENIE PROJECT NAMESPACE
Definition:
AlgCmp.h:25
genie::HNIntranuke2018::~HNIntranuke2018
~HNIntranuke2018()
Definition:
HNIntranuke2018.cxx:108
genie::HNIntranuke2018::GetINukeMode
virtual string GetINukeMode() const
Definition:
HNIntranuke2018.h:62
EventRecordVisitorI.h
genie::HNIntranuke2018::FateWeight
double FateWeight(int pdgc, INukeFateHN_t fate) const
Definition:
HNIntranuke2018.cxx:363
genie::HNIntranuke2018::ElasHN
void ElasHN(GHepRecord *ev, GHepParticle *p, INukeFateHN_t fate) const
Definition:
HNIntranuke2018.cxx:659
genie::HNIntranuke2018::SimulateHadronicFinalState
void SimulateHadronicFinalState(GHepRecord *ev, GHepParticle *p) const
Definition:
HNIntranuke2018.cxx:128
genie::HNIntranuke2018::HandleCompoundNucleusHN
bool HandleCompoundNucleusHN(GHepRecord *ev, GHepParticle *p) const
Definition:
HNIntranuke2018.cxx:945
genie::HNIntranuke2018::ProcessEventRecord
void ProcessEventRecord(GHepRecord *event_rec) const
Definition:
HNIntranuke2018.cxx:113
INukeHadroFates.h
NuclearModelI.h
Intranuke2018.h
genie::HNIntranuke2018::InelasticHN
void InelasticHN(GHepRecord *ev, GHepParticle *p) const
Definition:
HNIntranuke2018.cxx:768
genie::HNIntranuke2018::fNucQEFac
double fNucQEFac
Definition:
HNIntranuke2018.h:84
genie::HNIntranuke2018::IntranukeTester
friend class IntranukeTester
Definition:
HNIntranuke2018.h:53
genie::HNIntranuke2018::HandleCompoundNucleus
int HandleCompoundNucleus(GHepRecord *ev, GHepParticle *p, int mom) const
Definition:
HNIntranuke2018.cxx:905
genie::INukeFateHN_t
enum genie::EINukeFateHN_t INukeFateHN_t
config
static Config * config
Definition:
config.cpp:1054
genie::HNIntranuke2018::HadronFateOset
INukeFateHN_t HadronFateOset() const
Definition:
HNIntranuke2018.cxx:1009
test.p
p
Definition:
test.py:223
genie::HNIntranuke2018::HadronFateHN
INukeFateHN_t HadronFateHN(const GHepParticle *p) const
Definition:
HNIntranuke2018.cxx:208
genie::HNIntranuke2018::GetGenINukeMode
virtual string GetGenINukeMode() const
Definition:
HNIntranuke2018.h:63
genie::HNIntranuke2018::nuclA
int nuclA
value of A for the target nucleus in hA mode
Definition:
HNIntranuke2018.h:81
genie::HNIntranuke2018
Definition:
HNIntranuke2018.h:51
genie::HNIntranuke2018::LoadConfig
void LoadConfig(void)
Definition:
HNIntranuke2018.cxx:951
genie::HNIntranuke2018::GammaInelasticHN
void GammaInelasticHN(GHepRecord *ev, GHepParticle *p, INukeFateHN_t fate) const
Definition:
HNIntranuke2018.cxx:801
genie::HNIntranuke2018::AbsorbHN
void AbsorbHN(GHepRecord *ev, GHepParticle *p, INukeFateHN_t fate) const
Definition:
HNIntranuke2018.cxx:388
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::Intranuke2018
Definition:
Intranuke2018.h:54
Generated by
1.8.11