Belle II Software  release-08-01-10
GeneratorPreselectionLeptonicModule.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 
10 #pragma once
11 
12 #include <framework/core/Module.h>
13 #include <framework/datastore/StoreArray.h>
14 #include <framework/datastore/StoreObjPtr.h>
15 #include <framework/dataobjects/MCInitialParticles.h>
16 #include <mdst/dataobjects/MCParticle.h>
17 #include <Math/Vector3D.h>
18 #include <string>
19 
20 namespace Belle2 {
33  public:
34 
39 
41  void initialize() override;
42 
44  void event() override;
45 
46  protected:
48  void checkParticle(const MCParticle& mc);
49 
50  std::string m_particleList;
54  private:
55  int m_nSignalLepton = 0;
56  int m_nTauLepton = 0;
58  double m_missingPx = 0.0;
59  double m_missingPy = 0.0;
60  double m_missingPz = 0.0;
61  double m_missingE = 0.0;
63  ROOT::Math::XYZVector m_signalLeptonPVec;
64  std::vector<ROOT::Math::XYZVector> m_tauLeptonPVecs;
65  double m_signalLeptonZ = 0.0;
66  std::vector<double> m_tauLeptonZs;
71  double m_tauLeptonPMin;
72  double m_tauLeptonPMax;
73  double m_projectionMin;
74  double m_projectionMax;
75  double m_angleMin;
76  double m_angleMax;
77  double m_zDiffMin;
78  double m_zDiffMax;
79  double m_UMin;
80  double m_UMax;
81  };
83 }
double m_projectionMin
Minimum value for projection of tau lepton onto signal lepton momentum (in CMS)
double m_signalLeptonPMax
Maximum momentum (CMS) for signal lepton.
double m_zDiffMax
Maximum value for difference between production vertex z-component for signal and tau leptons.
double m_tauLeptonPMin
Minimum momentum (CMS) for tau lepton.
void initialize() override
Initialise the parameters.
std::vector< ROOT::Math::XYZVector > m_tauLeptonPVecs
Vector of momentum vectors for tau leptons.
double m_signalLeptonZ
Storing the production vertex z-component for signal lepton.
StoreArray< MCParticle > m_mcparticles
Store array for the MCParticles.
double m_missingPz
Sum of pz components for neutrinos in event.
double m_UMin
Minimum value of U = E - p (calculated using vector sum of momenta and energy for neutrinos in CMS)
double m_UMax
Maximum value of U = E - p (calculated using vector sum of momenta and energy for neutrinos in CMS)
double m_angleMax
Maximum value for the cosine of the angle between the tau and signal lepton momentum vectors (in CMS)
std::vector< double > m_tauLeptonZs
Vector of production vertex z-components for tau leptons.
double m_missingE
Sum of energy for neutrinos in event.
void checkParticle(const MCParticle &mc)
Called for each particle, performs basic cut checks.
double m_missingPx
Sum of px components for neutrinos in event.
StoreObjPtr< MCInitialParticles > m_initial
Pointer to the actual beam parameters.
std::string m_particleList
The name of the MCParticle collection.
double m_tauLeptonPMax
Maximum momentum (CMS) for tau lepton.
double m_missingPy
Sum of py components for neutrinos in event.
GeneratorPreselectionLeptonicModule()
Constructor: Sets the description, the properties and the parameters of the module.
double m_projectionMax
Maximum value for projection of tau lepton onto signal lepton momentum (in CMS)
double m_angleMin
Minimum value for the cosine of the angle between the tau and signal lepton momentum vectors (in CMS)
double m_zDiffMin
Minimum value for difference between production vertex z-component for signal and tau leptons.
ROOT::Math::XYZVector m_signalLeptonPVec
Vector storing momentum components of signal lepton.
double m_signalLeptonPMin
Minimum momentum (CMS) for signal lepton.
A Class to store the Monte Carlo particle information.
Definition: MCParticle.h:32
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.