Belle II Software development
FEIVariables.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 <vector>
12
13namespace Belle2 {
18 class MCParticle;
19 class Particle;
20
21 namespace Variable {
22 /*
23 * Given a reconstructed B meson candidate e.g. by the FEI the FSP are determined and a relation between reconstructed and generated FSP is drawn.
24 * Afterwards for each FSP the index of the B meson is determined on generator level. The index of the B meson with the most occurrences is returned.
25 * If no B meson found, returns -1.
26 */
27 int mostcommonBTagIndex(const Particle* part);
28 /*
29 Given a MCParticle this function returns the index of the B meson. If now B meson found, returns -1.
30 */
31 int finddescendant(const MCParticle* mcpart);
32 /*
33 Given an index of a B meson candidate, it determines the number of FSP on generator level. These FSP must be stable in the generator and cannot be a radiative particle.
34 */
35 std::vector<int> truthFSPTag(int BTag_index);
36 /*
37 By giving this function a B meson candidate, it will return the percentage of missing particles from the mostcommonBTagIndex.
38 If continuum event this will return -1.
39 */
40 double percentageMissingParticlesBTag(const Particle* part);
41 /*
42 By providing this function with a B meson candidate, it will return the percentage of wrong particles not originating from the mostcommonBTagIndex.
43 If continuum event this will return -1.
44 */
45 double percentageWrongParticlesBTag(const Particle* part);
46 } // Variable namespace
48} // Belle2 namespace
Abstract base class for different kinds of events.