GENIEGenerator
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Framework
Conventions
KinePhaseSpace.h
Go to the documentation of this file.
1
//____________________________________________________________________________
2
/*!
3
4
\class genie::KinePhaseSpace
5
6
\brief Enumeration of kinematical phase spaces
7
8
\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
9
University of Liverpool
10
11
\created May 06, 2004
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
#ifndef _KINEMATIC_PHASE_SPACE_ENUM_H_
19
#define _KINEMATIC_PHASE_SPACE_ENUM_H_
20
21
#include <cassert>
22
#include <string>
23
24
using
std::string;
25
26
namespace
genie {
27
// Note: please attach new phase space enum element to the end of the list .
28
typedef
enum
EKinePhaseSpace
{
29
kPSNull
= 0,
30
kPSfE
,
31
kPSxfE
,
32
kPSlogxfE
,
33
kPSxfEy
,
34
kPSlogxfEy
,
35
kPSyfE
,
36
kPSlogyfE
,
37
kPSyfEx
,
38
kPSlogyfEx
,
39
kPSxyfE
,
40
kPSlogxlogyfE
,
41
kPSQ2fE
,
42
kPSQD2fE
,
43
kPSlogQ2fE
,
44
kPSQ2fEW
,
45
kPSlogQ2fEW
,
46
kPSq2fE
,
47
kPSq2fEW
,
48
kPSWfE
,
49
kPSWfEQ2
,
50
kPSWfEq2
,
51
kPSWQ2fE
,
52
kPSWQD2fE
,
53
kPSW2Q2fE
,
54
kPSWlogQ2fE
,
55
kPSW2logQ2fE
,
56
kPSWq2fE
,
57
kPSW2q2fE
,
58
kPSxytfE
,
59
kPSQ2yfE
,
60
kPSlogQ2logyfE
,
61
kPSTlctl
,
62
kPSElOlOpifE
,
63
kPSElOlTpifE
,
64
kPSTkTlctl
,
65
kPSQ2vfE
,
66
kPSQELEvGen
,
// Phase space used by genie::QELEventGenerator for sampling kinematic variables
67
// TODO: rename this value when the correct variables are identified
68
kPSTAfE
,
69
kPSEgTlOgfE
,
70
kPSDMELEvGen
,
// Equivalent to kPSQELEvGen for Dark Matter scattering
71
kPSxQ2fE
,
72
kPSlog10xlog10Q2fE
,
73
kPSEDNufE
,
// Used for Dark Neutrinos, two body final state
74
kPSn1n2fE
,
75
kPSn1n2n3fE
,
76
kPSWQ2ctpphipfE
,
77
kPSWQ2ctpfE
,
78
kPSQ2vpfE
79
}
KinePhaseSpace_t
;
80
81
class
KinePhaseSpace
82
{
83
public
:
84
//__________________________________________________________________________
85
static
string
AsString
(
KinePhaseSpace_t
kps)
86
{
87
switch
(kps) {
88
89
case
(
kPSNull
) :
90
return
"** Undefined kinematic phase space **"
;
break
;
91
case
(
kPSfE
) :
return
"<|E>"
;
break
;
92
case
(
kPSxfE
) :
return
"<{x}|E>"
;
break
;
93
case
(
kPSlogxfE
) :
return
"<{logx}|E>"
;
break
;
94
case
(
kPSxfEy
) :
return
"<{x}|E,y>"
;
break
;
95
case
(
kPSlogxfEy
) :
return
"<{logx}|E,y>"
;
break
;
96
case
(
kPSyfE
) :
return
"<{y}|E>"
;
break
;
97
case
(
kPSlogyfE
) :
return
"<{logy}|E>"
;
break
;
98
case
(
kPSyfEx
) :
return
"<{y}|E,x>"
;
break
;
99
case
(
kPSlogyfEx
) :
return
"<{logy}|E,x>"
;
break
;
100
case
(
kPSlogxlogyfE
) :
return
"<{logx,logy}|E>"
;
break
;
101
case
(
kPSxyfE
) :
return
"<{x,y}|E>"
;
break
;
102
case
(
kPSxQ2fE
) :
return
"<{x,Q2}|E>"
;
break
;
103
case
(
kPSQ2fE
) :
return
"<{Q2}|E>"
;
break
;
104
case
(
kPSQD2fE
) :
return
"<{QD2}|E>"
;
break
;
105
case
(
kPSlogQ2fE
) :
return
"<{logQ2}|E>"
;
break
;
106
case
(
kPSQ2fEW
) :
return
"<{Q2}|E,W>"
;
break
;
107
case
(
kPSlogQ2fEW
) :
return
"<{logQ2}|E,W>"
;
break
;
108
case
(
kPSq2fE
) :
return
"<{q2}|E>"
;
break
;
109
case
(
kPSq2fEW
) :
return
"<{q2}|E,W>"
;
break
;
110
case
(
kPSWfE
) :
return
"<{W}|E>"
;
break
;
111
case
(
kPSWfEQ2
) :
return
"<{W}|E,Q2>"
;
break
;
112
case
(
kPSWfEq2
) :
return
"<{W}|E,q2>"
;
break
;
113
case
(
kPSWQ2fE
) :
return
"<{W,Q2}|E>"
;
break
;
114
case
(
kPSWQD2fE
) :
return
"<{W,QD2}|E>"
;
break
;
115
case
(
kPSW2Q2fE
) :
return
"<{W2,Q2}|E>"
;
break
;
116
case
(
kPSWlogQ2fE
) :
return
"<{W,logQ2}|E>"
;
break
;
117
case
(
kPSW2logQ2fE
) :
return
"<{W2,logQ2}|E>"
;
break
;
118
case
(
kPSWq2fE
) :
return
"<{W,q2}|E>"
;
break
;
119
case
(
kPSW2q2fE
) :
return
"<{W2,q2}|E>"
;
break
;
120
case
(
kPSxytfE
) :
return
"<{x,y,t}|E>"
;
break
;
121
case
(
kPSQ2yfE
) :
return
"<{Q2,y}|E>"
;
break
;
122
case
(
kPSlogQ2logyfE
):
return
"<{Q2,y}|E>"
;
break
;
123
case
(
kPSTlctl
) :
return
"<{Tl,cos(theta_l)}|E>"
;
break
;
124
case
(
kPSElOlOpifE
) :
return
"<{El,Omega_l,Omega_pi}|E>"
;
break
;
125
case
(
kPSEgTlOgfE
) :
return
"<{Egamma,Theta_l,Omega_gamma}|E>"
;
break
;
126
case
(
kPSElOlTpifE
) :
return
"<{El,Omega_l,Theta_pi}|E>"
;
break
;
127
case
(
kPSTkTlctl
) :
return
"<{Tk,Tl,cos(theta_l)}|E>"
;
break
;
128
case
(
kPSQ2vfE
) :
return
"<{Q2,v}|E>"
;
break
;
129
case
(
kPSQ2vpfE
) :
return
"<{Q2,v,p}|E>"
;
break
;
130
// TODO: update this string when the appropriate kinematic variables are known
131
case
(
kPSQELEvGen
) :
return
"<QELEvGen>"
;
break
;
132
case
(
kPSDMELEvGen
) :
return
"<DMELEvGen>"
;
break
;
133
case
(
kPSTAfE
) :
return
"<{TA}|E>"
;
break
;
134
case
(
kPSlog10xlog10Q2fE
) :
return
"<{log10x,log10Q2}|E>"
;
break
;
135
case
(
kPSEDNufE
) :
return
"<{EDNu}|E>"
;
break
;
136
case
(
kPSn1n2fE
) :
return
"<{n1,n2}|E>"
;
break
;
137
case
(
kPSn1n2n3fE
) :
return
"<{n1,n2,n3}|E>"
;
break
;
138
case
(
kPSWQ2ctpphipfE
):
return
"<{W, Q2, cost(theta_pion), phi_pion}|E>"
;
break
;
139
case
(
kPSWQ2ctpfE
) :
return
"<{W, Q2, cost(theta_pion)}|E>"
;
break
;
140
}
141
return
"** Undefined kinematic phase space **"
;
142
}
143
//__________________________________________________________________________
144
};
145
146
}
// genie namespace
147
148
#endif // _KINEMATIC_PHASE_SPACE_ENUM_H_
genie::kPSQ2fE
Definition:
KinePhaseSpace.h:41
genie::kPSxyfE
Definition:
KinePhaseSpace.h:39
genie::kPSlog10xlog10Q2fE
Definition:
KinePhaseSpace.h:72
genie::kPSxfEy
Definition:
KinePhaseSpace.h:33
genie::kPSWq2fE
Definition:
KinePhaseSpace.h:56
genie::kPSyfE
Definition:
KinePhaseSpace.h:35
genie::kPSWQ2fE
Definition:
KinePhaseSpace.h:51
genie::kPSQ2fEW
Definition:
KinePhaseSpace.h:44
genie::EKinePhaseSpace
EKinePhaseSpace
Definition:
KinePhaseSpace.h:28
genie::kPSn1n2n3fE
Definition:
KinePhaseSpace.h:75
genie::kPSWfEq2
Definition:
KinePhaseSpace.h:50
genie::kPSlogxlogyfE
Definition:
KinePhaseSpace.h:40
genie::kPSDMELEvGen
Definition:
KinePhaseSpace.h:70
genie::kPSxytfE
Definition:
KinePhaseSpace.h:58
genie::KinePhaseSpace_t
enum genie::EKinePhaseSpace KinePhaseSpace_t
genie::kPSQ2yfE
Definition:
KinePhaseSpace.h:59
genie::kPSW2Q2fE
Definition:
KinePhaseSpace.h:53
genie::kPSW2q2fE
Definition:
KinePhaseSpace.h:57
genie::kPSn1n2fE
Definition:
KinePhaseSpace.h:74
genie::kPSlogxfEy
Definition:
KinePhaseSpace.h:34
genie::kPSyfEx
Definition:
KinePhaseSpace.h:37
genie::kPSW2logQ2fE
Definition:
KinePhaseSpace.h:55
genie::kPSlogQ2fE
Definition:
KinePhaseSpace.h:43
genie::kPSfE
Definition:
KinePhaseSpace.h:30
genie::kPSQ2vfE
Definition:
KinePhaseSpace.h:65
genie::kPSEgTlOgfE
Definition:
KinePhaseSpace.h:69
genie::kPSElOlTpifE
Definition:
KinePhaseSpace.h:63
genie::kPSWlogQ2fE
Definition:
KinePhaseSpace.h:54
genie::kPSq2fE
Definition:
KinePhaseSpace.h:46
genie::kPSElOlOpifE
Definition:
KinePhaseSpace.h:62
genie::kPSxQ2fE
Definition:
KinePhaseSpace.h:71
genie::kPSWQ2ctpphipfE
Definition:
KinePhaseSpace.h:76
genie::KinePhaseSpace::AsString
static string AsString(KinePhaseSpace_t kps)
Definition:
KinePhaseSpace.h:85
genie::kPSWfEQ2
Definition:
KinePhaseSpace.h:49
genie::kPSQ2vpfE
Definition:
KinePhaseSpace.h:78
genie::kPSNull
Definition:
KinePhaseSpace.h:29
genie::kPSlogyfE
Definition:
KinePhaseSpace.h:36
genie::kPSQELEvGen
Definition:
KinePhaseSpace.h:66
genie::kPSWQ2ctpfE
Definition:
KinePhaseSpace.h:77
genie::kPSlogxfE
Definition:
KinePhaseSpace.h:32
genie::kPSTAfE
Definition:
KinePhaseSpace.h:68
genie::kPSlogQ2logyfE
Definition:
KinePhaseSpace.h:60
genie::kPSEDNufE
Definition:
KinePhaseSpace.h:73
genie::kPSlogyfEx
Definition:
KinePhaseSpace.h:38
genie::kPSTlctl
Definition:
KinePhaseSpace.h:61
genie::kPSWQD2fE
Definition:
KinePhaseSpace.h:52
genie::kPSq2fEW
Definition:
KinePhaseSpace.h:47
genie::KinePhaseSpace
Enumeration of kinematical phase spaces.
Definition:
KinePhaseSpace.h:81
genie::kPSxfE
Definition:
KinePhaseSpace.h:31
genie::kPSQD2fE
Definition:
KinePhaseSpace.h:42
genie::kPSTkTlctl
Definition:
KinePhaseSpace.h:64
genie::kPSlogQ2fEW
Definition:
KinePhaseSpace.h:45
genie::kPSWfE
Definition:
KinePhaseSpace.h:48
Generated on Wed Jul 17 2024 14:46:42 for GENIEGenerator by
1.8.5