GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MuELProcess.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::mueloss::MuELProcess
5 
6 \brief Enumeration of muon energy loss processes
7 
8 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
9  University of Liverpool
10 
11 \created December 10, 2003
12 
13 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15 
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _MUELOSS_PROCESS_H_
20 #define _MUELOSS_PROCESS_H_
21 
23 
24 using namespace genie::constants;
25 
26 namespace genie {
27 namespace mueloss {
28 
29 typedef enum EMuELProcess {
30 
37 
39 
41 {
42 public:
43  //__________________________________________________________________________
44  static const char * AsString(MuELProcess_t p) {
45  switch(p) {
46  case eMupIonization : return "ionization"; break;
47  case eMupPairProduction : return "direct e+e- pair production"; break;
48  case eMupBremsstrahlung : return "bremsstrahlung"; break;
49  case eMupNuclearInteraction: return "nuclear interaction"; break;
50  case eMupSum : return "all"; break;
51  case eMupUndefined:
52  default:
53  return "undefined process"; break;
54  }
55  return "undefined process";
56  }
57  //__________________________________________________________________________
58  static double Threshold(MuELProcess_t p) {
59  switch(p) {
60  case eMupIonization : return kMuonMass; break;
61  case eMupPairProduction : return kMuonMass+2*kElectronMass; break;
62  case eMupBremsstrahlung : return kMuonMass; break;
63  case eMupNuclearInteraction: return kMuonMass; break;
64  case eMupSum : return kMuonMass; break;
65  case eMupUndefined:
66  default:
67  return 999999999; break;
68  }
69  return 99999999;
70  }
71  //__________________________________________________________________________
72 };
73 
74 } // mueloss namespace
75 } // genie namespace
76 
77 #endif // _MUELOSS_PROCESS_H_
static const double kElectronMass
static double Threshold(MuELProcess_t p)
Definition: MuELProcess.h:58
Enumeration of muon energy loss processes.
Definition: MuELProcess.h:40
static const char * AsString(MuELProcess_t p)
Definition: MuELProcess.h:44
enum genie::mueloss::EMuELProcess MuELProcess_t