GENIEGenerator
Loading...
Searching...
No Matches
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 <c.andreopoulos \at cern.ch> STFC, Rutherford Lab
21
22\created September 20, 2005
23
24\cpright Copyright (c) 2003-2025, 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
41
42class TLorentzVector;
43class TVector3;
44
45namespace genie {
46
47class GHepParticle;
49class PDGCodeList;
50
52
53friend class IntranukeTester;
54
55public :
57 HAIntranuke2018(string config);
59
60 void ProcessEventRecord(GHepRecord * event_rec) const;
61
62 virtual string GetINukeMode() const {return "hA2018";};
63 virtual string GetGenINukeMode() const {return "hA";};
64
65private:
66
67 void LoadConfig (void);
68
71
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_
STDHEP-like event record entry that can fit a particle or a nucleus.
GENIE's GHEP MC event record.
Definition GHepRecord.h:45
void SimulateHadronicFinalStateKinematics(GHepRecord *ev, GHepParticle *p) const
int nuclA
value of A for the target nucleus in hA mode
void ElasHA(GHepRecord *ev, GHepParticle *p, INukeFateHA_t fate) const
double PnBounce(void) const
void SimulateHadronicFinalState(GHepRecord *ev, GHepParticle *p) const
void InelasticHA(GHepRecord *ev, GHepParticle *p, INukeFateHA_t fate) const
double PiBounce(void) const
int HandleCompoundNucleus(GHepRecord *ev, GHepParticle *p, int mom) const
void Inelastic(GHepRecord *ev, GHepParticle *p, INukeFateHA_t fate) const
INukeFateHA_t HadronFateHA(const GHepParticle *p) const
virtual string GetGenINukeMode() const
virtual string GetINukeMode() const
void ProcessEventRecord(GHepRecord *event_rec) const
A list of PDG codes.
Definition PDGCodeList.h:32
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::EINukeFateHA_t INukeFateHA_t