Belle II Software light-2406-ragdoll
HelicityVariables.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
32 double cosHelicityAngleMomentum(const Particle* part);
33
39 double cosHelicityAngleMomentumPi0Dalitz(const Particle* part);
40
46 double cosHelicityAngleBeamMomentum(const Particle* mother, const std::vector<double>& index);
47
56 double cosHelicityAngle(const Particle* mother, const std::vector<double>& indices);
57
67 double cosAcoplanarityAngle(const Particle* mother, const std::vector<double>& granddaughters);
68
72 double cosHelicityAnglePrimary(const Particle* part);
73
78 double cosHelicityAngleDaughter(const Particle* part, const std::vector<double>& indices);
79
83 double acoplanarityAngle(const Particle* part);
84
91 double cosHelicityAngleForQuasiTwoBodyDecay(const Particle* mother, const std::vector<double>& indices);
92
96 Manager::FunctionPtr momentaTripleProduct(const std::vector<std::string>& arguments);
97
98 }
100} // Belle2 namespace
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