NuclearModel.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::NuclearModel
5 
6 \brief Encapsulates an enumeration of nuclear model types
7 
8 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
9  University of Liverpool & STFC Rutherford Appleton Laboratory
10 
11 \created Jun 09, 2009
12 
13 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15 
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _NUCL_MODEL_TYPE_H_
20 #define _NUCL_MODEL_TYPE_H_
21 
22 #ifndef ROOT_Rtypes
23 #include "Rtypes.h"
24 #endif
25 
26 namespace genie {
27 
28 typedef enum ENuclearModel {
29 
35 
37 
44 
45 class NuclearModel {
46 
47 public:
48  static const char * AsString(NuclearModel_t nucmod) {
49  switch (nucmod) {
50  case kNucmUndefined: return "Undefined nuclear model"; break;
51  case kNucmFermiGas: return "Fermi gas model"; break;
52  case kNucmLocalFermiGas: return "Local Fermi gas model"; break;
53  case kNucmSpectralFunc: return "Spectral function model"; break;
54  case kNucmEffSpectralFunc: return "Effective spectral function model"; break;
55  default: break;
56  }
57  return " ";
58  }
59 
60 };
61 
62 }
63 #endif
static const char * AsString(NuclearModel_t nucmod)
Definition: NuclearModel.h:48
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
enum genie::EFermiMoverInteractionType FermiMoverInteractionType_t
enum genie::ENuclearModel NuclearModel_t
Encapsulates an enumeration of nuclear model types.
Definition: NuclearModel.h:45
ENuclearModel
Definition: NuclearModel.h:28
EFermiMoverInteractionType
Definition: NuclearModel.h:38