ATLAS Offline Software
Loading...
Searching...
No Matches
EvtPHSPBMix.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/COPYRIGHT
9// Copyright (C) 2002 INFN-Pisa
10//
11// Module: EvtPHSPBMix.cc
12//
13// Description:
14// Routine to decay vector-> particle particle with B0 mixing, coherent B0B0-like mixing if any.
15// EvtPHSPBBMix: handle states with two neutral B
16// EvtPHSPBMix : handles states with only one neutral B
17// Phase-space kinematics, CP conservation, deltaGamma=0, p/q=1
18//
19// Based on EvtVSSBMixCPT
20//
21// Modification history:
22//
23// R. Louvot, EPFL, 2010/03/09
24// C. MacQueen, 2016/10/03 Adapted to Belle II
25//
26//------------------------------------------------------------------------
27
28#ifndef EVTPHSPBMIX_HH
29#define EVTPHSPBMIX_HH
30
31#include "EvtGenBase/EvtDecayAmp.hh"
32#include "EvtGenBase/EvtParticle.hh"
33#include "EvtGenBase/EvtComplex.hh"
34
37class EvtPHSPBBMix: public EvtDecayAmp {
38
39public:
40
43
45 virtual ~EvtPHSPBBMix();
46
48 std::string getName();
49
51 EvtDecayBase* clone();
52
54 void decay(EvtParticle* p);
55
57 void init();
58
61
64
65private:
66
68 void prlp(int)const;
69
71 EvtComplex Amplitude(const double& t1, const double& t2, bool B1_is_B0, bool B2_is_B0) const;
72
74 double m_freq{0}; //
75
77 double m_C{0}; //
78
80 bool m_BBpipi{0};
81
82};
83
86class EvtPHSPBMix : public EvtDecayAmp {
87
88public:
89
92
94 virtual ~EvtPHSPBMix();
95
97 std::string getName();
98
100 EvtDecayBase* clone();
101
103 void decay(EvtParticle* p);
104
106 void init();
107
110
113
114private:
115
117 double m_freq{0};
118
119};
120
121#endif
std::string getName()
Get function Name.
double m_C
C eigenvalue, 0= incoherent.
Definition EvtPHSPBMix.h:77
virtual ~EvtPHSPBBMix()
Default destructor.
EvtDecayBase * clone()
Clone the decay.
bool m_BBpipi
Is BBpipi?
Definition EvtPHSPBMix.h:80
double m_freq
mixing frequency in hbar/mm
Definition EvtPHSPBMix.h:74
void initProbMax()
Init maximal prob.
int nRealDaughters()
Number of real daughters.
EvtComplex Amplitude(const double &t1, const double &t2, bool B1_is_B0, bool B2_is_B0) const
Calculate amplitude.
void prlp(int) const
Number of real daughters.
void init()
Init function.
void decay(EvtParticle *p)
Decay function.
EvtPHSPBBMix()
Default constructor.
Definition EvtPHSPBMix.h:42
virtual ~EvtPHSPBMix()
Default destructor.
EvtDecayBase * clone()
Clone the decay.
std::string getName()
Get function Name.
void init()
Init function.
void initProbMax()
Init maximal prob.
double m_freq
mixing frequency in hbar/mm
int nRealDaughters()
Number of real daughters.
EvtPHSPBMix()
Default constructor.
Definition EvtPHSPBMix.h:91
void decay(EvtParticle *p)
Decay function.