Belle II Software light-2406-ragdoll
EventShapeVariables.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <analysis/VariableManager/Manager.h>
12
13#include <vector>
14#include <string>
15
16namespace Belle2 {
21 class Particle;
22
23 namespace Variable {
24
25
29 double foxWolframR(const Particle*, const std::vector<double>& index);
30
34 double foxWolframH(const Particle*, const std::vector<double>& index);
35
39 Manager::FunctionPtr cleoCone(const std::vector<std::string>& arguments);
40
44 double foxWolframR1(const Particle* particle);
45
49 double foxWolframR2(const Particle* particle);
50
54 double foxWolframR3(const Particle* particle);
55
59 double foxWolframR4(const Particle* particle);
60
61
65 double harmonicMomentThrust0(const Particle* particle);
66
70 double harmonicMomentThrust1(const Particle* particle);
71
75 double harmonicMomentThrust2(const Particle* particle);
76
80 double harmonicMomentThrust3(const Particle* particle);
81
85 double harmonicMomentThrust4(const Particle* particle);
86
87
91 double cleoConeThrust0(const Particle* particle);
92
96 double cleoConeThrust1(const Particle* particle);
97
101 double cleoConeThrust2(const Particle* particle);
102
106 double cleoConeThrust3(const Particle* particle);
107
111 double cleoConeThrust4(const Particle* particle);
112
116 double cleoConeThrust5(const Particle* particle);
117
121 double cleoConeThrust6(const Particle* particle);
122
126 double cleoConeThrust7(const Particle* particle);
127
131 double cleoConeThrust8(const Particle* particle);
132
133
134
138 double sphericity(const Particle* particle);
139
143 double aplanarity(const Particle* particle);
144
148 double thrust(const Particle* particle);
149
150
154 double thrustAxisX(const Particle* particle);
155
159 double thrustAxisY(const Particle* particle);
160
164 double thrustAxisZ(const Particle* particle);
165
169 double thrustAxisCosTheta(const Particle* particle);
170
171
175 double forwardHemisphereMass(const Particle* particle);
176
180 double forwardHemisphereX(const Particle* particle);
181
185 double forwardHemisphereY(const Particle* particle);
186
190 double forwardHemisphereZ(const Particle* particle);
191
195 double forwardHemisphereMomentum(const Particle* particle);
196
200 double forwardHemisphereEnergy(const Particle* particle);
201
202
203
207 double backwardHemisphereMass(const Particle* particle);
208
212 double backwardHemisphereX(const Particle* particle);
213
217 double backwardHemisphereY(const Particle* particle);
218
222 double backwardHemisphereZ(const Particle* particle);
223
227 double backwardHemisphereMomentum(const Particle* particle);
228
232 double backwardHemisphereEnergy(const Particle* particle);
233
234
238 Manager::FunctionPtr useThrustFrame(const std::vector<std::string>& arguments);
239
240 }
242}
std::function< VarVariant(const Particle *)> FunctionPtr
functions stored take a const Particle* and return VarVariant.
Definition: Manager.h:113
Abstract base class for different kinds of events.
Definition: ClusterUtils.h:24