GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
NucDeExcitationSim.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::NucDeExcitationSim
5 
6 \brief Generates nuclear de-excitation gamma rays
7 
8 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
9  University of Liverpool
10 
11 \ref 16O:
12  H.Ejiri,Phys.Rev.C48,1442(1993);
13  K.Kobayashi et al., Nucl.Phys.B (proc Suppl) 139 (2005)
14 
15 \created March 05, 2008
16 
17 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
18  For the full text of the license visit http://copyright.genie-mc.org
19 */
20 //____________________________________________________________________________
21 
22 #ifndef _NUCLEAR_DEEXCITATION_H_
23 #define _NUCLEAR_DEEXCITATION_H_
24 
25 #include <TLorentzVector.h>
26 
28 
29 namespace genie {
30 
32 
33 public :
35  NucDeExcitationSim(string config);
37 
38  void Configure( const Registry& config ) override;
39  void Configure( std::string config ) override;
40 
41  //-- implement the EventRecordVisitorI interface
42  void ProcessEventRecord (GHepRecord * evrec) const override;
43 
44 private:
45  void OxygenTargetSim (GHepRecord * evrec) const;
46  void CarbonTargetSim (GHepRecord * evrec) const;
47  void ArgonTargetSim (GHepRecord * evrec) const;
48  void AddPhoton (GHepRecord * evrec, double E0, double t) const;
49  double PhotonEnergySmearing (double E0, double t) const;
50  TLorentzVector Photon4P (double E) const;
51 
52  void LoadConfig();
53 
54  // Configuration flags that enable/disable de-excitations for specific nuclei
55  bool fDoCarbon = false;
56  bool fDoArgon = false;
57 };
58 
59 } // genie namespace
60 #endif // _NUCLEAR_DEEXCITATION_H_
Generates nuclear de-excitation gamma rays.
double PhotonEnergySmearing(double E0, double t) const
Defines the EventRecordVisitorI interface. Concrete implementations of this interface use the &#39;Visito...
TLorentzVector Photon4P(double E) const
void AddPhoton(GHepRecord *evrec, double E0, double t) const
void ArgonTargetSim(GHepRecord *evrec) const
void OxygenTargetSim(GHepRecord *evrec) const
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
void CarbonTargetSim(GHepRecord *evrec) const
GENIE&#39;s GHEP MC event record.
Definition: GHepRecord.h:45
void ProcessEventRecord(GHepRecord *evrec) const override
void Configure(const Registry &config) override