evtgen
is hosted by
Hepforge
,
IPPP Durham
Home
Documentation
Downloads
Repository
Bug tracker
Join the mailing list
Contact the developers
Licence
Acknowledgements
EvtGen
2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
EvtGenModels
EvtBtoKD3P.hh
Go to the documentation of this file.
1
2
/***********************************************************************
3
* Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4
* *
5
* This file is part of EvtGen. *
6
* *
7
* EvtGen is free software: you can redistribute it and/or modify *
8
* it under the terms of the GNU General Public License as published by *
9
* the Free Software Foundation, either version 3 of the License, or *
10
* (at your option) any later version. *
11
* *
12
* EvtGen is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19
***********************************************************************/
20
21
#ifndef EVT_BTOKD3P
22
#define EVT_BTOKD3P
23
24
class
EvtParticle
;
25
#include "
EvtGenBase/EvtComplex.hh
"
26
#include "
EvtGenBase/EvtDecayAmp.hh
"
27
28
// Decay model that does the decay B+ -> K+ D , D -> 3 psudoscalars.
29
//
30
// The B- daughters specified in the decay file should be K-, D0, D0,
31
// where the first D0 is produced via b->c decay and the second via b->u.
32
// In reality, only one D daughter exists, so the first two
33
// daughters must be defined to decay to the same final state using
34
// the EvtPto3P model, but with CP-conjugate amplitudes.
35
//
36
// For a given point in the Pto3P Dalitz plot,
37
// the total amplitude is \propto [A1 + A2 r exp(i(phase))], where
38
//
39
// A1 & A2 are the amplitudes of the D0 and D0bar to decay into that
40
// Dalitz plot point,
41
//
42
// r is the (positive) ratio between the A(B->B0bar K) and A(B->D0 K)
43
// B decay amplitudes,
44
//
45
// phase is the total phase difference (weak phase + strong phase) between
46
// A(B->D0bar K) and A(B->B0 K).
47
//
48
// Note that this model knows nothing about your convention for the
49
// sign of the phase, so when specifying the decay of a B- you need to
50
// change the order of D0 and D0bar and change the total phase so that
51
// the sign of the weak phase flips with respect to the parameters of B+.
52
53
class
EvtBtoKD3P
:
public
EvtDecayAmp
{
54
public
:
55
EvtDecayBase
*
clone
()
override
;
56
57
// Initialize model
58
void
init
()
override
;
59
void
initProbMax
()
override
;
60
void
decay
(
EvtParticle
* p )
override
;
61
62
// we really have two daughters, although three are listed in the .dec file:
63
int
nRealDaughters
()
override
{
return
2; }
64
65
std::string
getName
()
override
;
66
67
protected
:
68
// parameters:
69
double
_r
;
70
EvtComplex
_exp
;
71
72
// other:
73
const
EvtDecayBase
*
_model1
=
nullptr
;
74
const
EvtDecayBase
*
_model2
=
nullptr
;
75
bool
_decayedOnce
=
false
;
76
};
77
78
#endif
EvtBtoKD3P::_exp
EvtComplex _exp
Definition:
EvtBtoKD3P.hh:70
EvtBtoKD3P
Definition:
EvtBtoKD3P.hh:53
EvtBtoKD3P::_decayedOnce
bool _decayedOnce
Definition:
EvtBtoKD3P.hh:75
EvtBtoKD3P::getName
std::string getName() override
Definition:
EvtBtoKD3P.cpp:44
EvtBtoKD3P::_r
double _r
Definition:
EvtBtoKD3P.hh:69
EvtDecayAmp.hh
EvtDecayBase
Definition:
EvtDecayBase.hh:34
EvtBtoKD3P::_model2
const EvtDecayBase * _model2
Definition:
EvtBtoKD3P.hh:74
EvtBtoKD3P::decay
void decay(EvtParticle *p) override
Definition:
EvtBtoKD3P.cpp:77
EvtBtoKD3P::init
void init() override
Definition:
EvtBtoKD3P.cpp:50
EvtDecayAmp
Definition:
EvtDecayAmp.hh:29
EvtBtoKD3P::initProbMax
void initProbMax() override
Definition:
EvtBtoKD3P.cpp:71
EvtBtoKD3P::clone
EvtDecayBase * clone() override
Definition:
EvtBtoKD3P.cpp:38
EvtBtoKD3P::_model1
const EvtDecayBase * _model1
Definition:
EvtBtoKD3P.hh:73
EvtBtoKD3P::nRealDaughters
int nRealDaughters() override
Definition:
EvtBtoKD3P.hh:63
EvtParticle
Definition:
EvtParticle.hh:46
EvtComplex.hh
EvtComplex
Definition:
EvtComplex.hh:29
Generated by
1.8.15