Belle II Software light-2406-ragdoll
EventShapeCalculatorModule.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 <Math/Vector3D.h>
12
13#include <framework/core/Module.h>
14
15#include <analysis/dataobjects/EventShapeContainer.h>
16
17#include <framework/datastore/StoreObjPtr.h>
18
19namespace Belle2 {
38
39 public:
40
45
50
52 virtual void initialize() override;
53
54
59 virtual void event() override;
60
61
66 int parseParticleLists(std::vector<std::string>);
67
68
69 private:
70
73 std::vector<std::string> m_particleListNames;
74 std::vector<ROOT::Math::PxPyPzEVector>
76 std::vector<ROOT::Math::XYZVector>
79 bool m_enableThrust = true;
81 bool m_enableFW = true;
83 bool m_enableJets = true;
84 bool m_enableSphericity = true;
85 bool m_enableCleoCones = true;
86 bool m_enableAllMoments = false;
87 bool m_checkForDuplicates = false;
89 };
91}
92
Module to compute event shape variables starting from three lists of particle objects (tracks,...
int parseParticleLists(std::vector< std::string >)
Turns the ParticleLists provided as inputs in std::vectors of PxPyPzEVector and B2Vector3D,...
bool m_enableCollisionAxis
Enables the calculation of the quantities related to the collision axis.
virtual void initialize() override
Define the physical parameters.
std::vector< ROOT::Math::XYZVector > m_p3List
vector containing all the 3-momenta of the particles contained in the input lists.
virtual void event() override
Main method, called for each events.
virtual ~EventShapeCalculatorModule()
Default destructor.
bool m_enableHarmonicMoments
Enables the calculation of the Harmonic moments.
std::vector< std::string > m_particleListNames
Names of the ParticleLists (inputs).
bool m_enableAllMoments
Enables the calculation of the FW moments from 5 to 8.
bool m_enableThrust
Enables the calculation of thust-related quantities.
bool m_enableCleoCones
Enables the calculation of the Cleo Cones.
bool m_enableJets
Enables the calculation of the Jet-related quantities.
std::vector< ROOT::Math::PxPyPzEVector > m_p4List
vector containing all the 4-momenta of the particles contained in the input lists.
bool m_enableFW
Enables the calculation of the FW moments.
bool m_checkForDuplicates
Enables the check for the duplicates in the input list.
EventShapeCalculatorModule()
Constructor: Sets the description, the properties and the parameters of the module.
StoreObjPtr< EventShapeContainer > m_eventShapeContainer
event shape container object pointer
bool m_enableSphericity
Enables the calculation of the Sphericity matrix.
Base class for Modules.
Definition: Module.h:72
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.
Definition: ClusterUtils.h:24