Belle II Software  release-06-00-14
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 <TVector3.h>
12 
13 #include <framework/core/Module.h>
14 
15 #include <analysis/dataobjects/EventShapeContainer.h>
16 
17 #include <framework/datastore/StoreObjPtr.h>
18 
19 namespace 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<TLorentzVector> m_p4List;
75  std::vector<TVector3> m_p3List;
77  bool m_enableThrust = true;
78  bool m_enableCollisionAxis = true;
79  bool m_enableFW = true;
81  bool m_enableJets = true;
82  bool m_enableSphericity = true;
83  bool m_enableCleoCones = true;
84  bool m_enableAllMoments = false;
85  bool m_checkForDuplicates = false;
87  };
89 }
90 
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 TLorentzVector and TVector3,...
bool m_enableCollisionAxis
Enables the calculation of the quantities related to the collision axis.
virtual void initialize() override
Define the physical parameters.
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< TLorentzVector > m_p4List
vector containing all the 4-momenta of the particles contained in the input lists.
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.
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.
std::vector< TVector3 > m_p3List
vector containing all the 3-momenta of the particles contained in the input lists.
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:95
Abstract base class for different kinds of events.