Belle II Software development
EvtB0toKsKK.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#pragma once
9
10#include "EvtGenBase/EvtDecayAmp.hh"
11#include "EvtGenBase/EvtParticle.hh"
12
13#include <fstream>
14
15namespace Belle2 {
21 class EvtB0toKsKK : public EvtDecayAmp {
22
23 public:
24
25 /* Constructor. */
26 //EvtB0toKsKK() {}
27 EvtB0toKsKK() : alpha_kpkmnr(0.0), alpha_kskpnr(0.0), alpha_kskmnr(0.0) {};
28
29 /* Destructor. */
30 virtual ~EvtB0toKsKK();
31
32 std::string getName();
34 EvtDecayBase* clone();
36 void init();
38 void initProbMax();
40 void decay(EvtParticle* p);
42 EvtVector4R umu(const EvtVector4R& p4a, const EvtVector4R& p4b,
43 const EvtVector4R& p4c);
44 EvtVector4R Smu(const EvtVector4R& p4a, const EvtVector4R& p4b,
45 const EvtVector4R& p4c);
46 EvtVector4R Lmu(const EvtVector4R& p4a, const EvtVector4R& p4b,
47 const EvtVector4R& p4c);
48 EvtTensor4C gmunu_tilde(const EvtVector4R& p4a,
49 const EvtVector4R& p4b,
50 const EvtVector4R& p4c);
51 EvtTensor4C Tmunu(const EvtVector4R& p4a, const EvtVector4R& p4b,
52 const EvtVector4R& p4c);
53 EvtTensor4C Multiply(const EvtTensor4C& t1,
54 const EvtTensor4C& t2);
55 EvtTensor4C RaiseIndices(const EvtTensor4C& t);
56 void RaiseIndex(EvtVector4R& vector);
57 EvtTensor4C Mmunu(const EvtVector4R& p4a, const EvtVector4R& p4b,
58 const EvtVector4R& p4c);
59 double BWBF(const double& q, const unsigned int& L);
60 double BWBF(const double& q, const double& q0,
61 const unsigned int& L);
62 EvtComplex BreitWigner(const double& m, const double& m0,
63 const double& Gamma0,
64 const double& q, const double& q0,
65 const unsigned int& L);
66 EvtVector4R Boost(const EvtVector4R& p4,
67 const EvtVector4R& boost);
68 double p(const double& mab, const double& M, const double& mc);
69 double q(const double& mab, const double& ma, const double& mb);
70 EvtComplex Flatte_k(const double& s, const double& m_h);
71 EvtComplex Flatte(const double& m, const double& m0);
73 EvtComplex A_f0ks(const EvtVector4R& p4ks,
74 const EvtVector4R& p4kp, const EvtVector4R& p4km);
75 EvtComplex A_phiks(const EvtVector4R& p4ks,
76 const EvtVector4R& p4kp, const EvtVector4R& p4km);
77 EvtComplex A_fxks(const EvtVector4R& p4ks,
78 const EvtVector4R& p4kp, const EvtVector4R& p4km);
79 EvtComplex A_chic0ks(const EvtVector4R& p4ks,
80 const EvtVector4R& p4kp, const EvtVector4R& p4km);
81 EvtComplex A_kknr(const EvtVector4R& p4k1, const EvtVector4R& p4k2,
82 const double& alpha_kk);
84 private:
85
87 EvtComplex a_f0ks_;
88 EvtComplex a_phiks_;
89 EvtComplex a_fxks_;
90 EvtComplex a_chic0ks_;
91 EvtComplex a_kpkmnr_;
92 EvtComplex a_kskpnr_;
93 EvtComplex a_kskmnr_;
95 EvtComplex abar_f0ks_;
96 EvtComplex abar_phiks_;
97 EvtComplex abar_fxks_;
98 EvtComplex abar_chic0ks_;
99 EvtComplex abar_kpkmnr_;
100 EvtComplex abar_kskpnr_;
101 EvtComplex abar_kskmnr_;
107 std::ofstream debugfile_;
108 };
109
111} // Belle 2 Namespace
Register Decay model EvtB0toKsKK.
Definition: EvtB0toKsKK.h:21
EvtComplex abar_kskpnr_
Variable member abar_kskpnr_
Definition: EvtB0toKsKK.h:100
double alpha_kskmnr
Variable member alpha_kskmnr.
Definition: EvtB0toKsKK.h:105
EvtComplex a_chic0ks_
Variable member a_chic0ks_.
Definition: EvtB0toKsKK.h:90
EvtComplex a_fxks_
Variable member a_fxks_
Definition: EvtB0toKsKK.h:89
std::ofstream debugfile_
debuging stream
Definition: EvtB0toKsKK.h:107
EvtComplex a_f0ks_
<Variable names for form factors
Definition: EvtB0toKsKK.h:87
double alpha_kpkmnr
Variable member alpha_kpkmnr.
Definition: EvtB0toKsKK.h:103
EvtComplex abar_fxks_
Variable member abar_fxks_
Definition: EvtB0toKsKK.h:97
EvtComplex abar_f0ks_
Variable member abar_f0ks_
Definition: EvtB0toKsKK.h:95
double alpha_kskpnr
Variable member alpha_kskpnr.
Definition: EvtB0toKsKK.h:104
EvtComplex abar_chic0ks_
Variable member abar_chic0ks_.
Definition: EvtB0toKsKK.h:98
EvtComplex a_kskmnr_
Variable member a_kskmnr_.
Definition: EvtB0toKsKK.h:93
EvtComplex abar_kskmnr_
Variable member abar_kskmnr_
Definition: EvtB0toKsKK.h:101
EvtComplex a_kpkmnr_
Variable member a_kpkmnr_.
Definition: EvtB0toKsKK.h:91
EvtComplex abar_phiks_
Variable member abar_phiks_.
Definition: EvtB0toKsKK.h:96
EvtComplex a_kskpnr_
Variable member a_kskpnr_.
Definition: EvtB0toKsKK.h:92
EvtComplex a_phiks_
Variable member a_phiks_
Definition: EvtB0toKsKK.h:88
EvtComplex abar_kpkmnr_
Variable member abar_kpkmnr_
Definition: EvtB0toKsKK.h:99
void init()
Initialize standard stream objects
Definition: EvtB0toKsKK.cc:41
EvtVector4R Smu(const EvtVector4R &p4a, const EvtVector4R &p4b, const EvtVector4R &p4c)
Function 4Vector Smu.
Definition: EvtB0toKsKK.cc:370
EvtComplex A_f0ks(const EvtVector4R &p4ks, const EvtVector4R &p4kp, const EvtVector4R &p4km)
A_f0ks is amplitude of f0.
Definition: EvtB0toKsKK.cc:639
EvtComplex A_phiks(const EvtVector4R &p4ks, const EvtVector4R &p4kp, const EvtVector4R &p4km)
A_phiks is amplitude of phi.
Definition: EvtB0toKsKK.cc:695
EvtVector4R umu(const EvtVector4R &p4a, const EvtVector4R &p4b, const EvtVector4R &p4c)
Function 4Vector umu.
Definition: EvtB0toKsKK.cc:360
EvtComplex Flatte(const double &m, const double &m0)
Constant Flatte.
Definition: EvtB0toKsKK.cc:617
double q(const double &mab, const double &ma, const double &mb)
Constants q.
Definition: EvtB0toKsKK.cc:594
EvtTensor4C gmunu_tilde(const EvtVector4R &p4a, const EvtVector4R &p4b, const EvtVector4R &p4c)
Function Tensor gmunu
Definition: EvtB0toKsKK.cc:409
EvtComplex BreitWigner(const double &m, const double &m0, const double &Gamma0, const double &q, const double &q0, const unsigned int &L)
BreitWigner Shape.
Definition: EvtB0toKsKK.cc:521
EvtTensor4C Mmunu(const EvtVector4R &p4a, const EvtVector4R &p4b, const EvtVector4R &p4c)
Function Tensor Mmunu.
Definition: EvtB0toKsKK.cc:468
EvtTensor4C RaiseIndices(const EvtTensor4C &t)
Function RaiseIndices
Definition: EvtB0toKsKK.cc:453
void RaiseIndex(EvtVector4R &vector)
Member function RaiseIndices.
Definition: EvtB0toKsKK.cc:461
EvtDecayBase * clone()
Clone the decay of B0toKsKK.
Definition: EvtB0toKsKK.cc:36
EvtVector4R Lmu(const EvtVector4R &p4a, const EvtVector4R &p4b, const EvtVector4R &p4c)
Function 4Vector Lmu.
Definition: EvtB0toKsKK.cc:390
EvtComplex A_fxks(const EvtVector4R &p4ks, const EvtVector4R &p4kp, const EvtVector4R &p4km)
A_fxks is amplitude of fxks.
Definition: EvtB0toKsKK.cc:770
double p(const double &mab, const double &M, const double &mc)
Constants p
Definition: EvtB0toKsKK.cc:583
EvtComplex Flatte_k(const double &s, const double &m_h)
Constant Flatte_k.
Definition: EvtB0toKsKK.cc:605
EvtComplex A_kknr(const EvtVector4R &p4k1, const EvtVector4R &p4k2, const double &alpha_kk)
A_kknr is amplitude of kknr.
Definition: EvtB0toKsKK.cc:830
void initProbMax()
Initialize standard stream objects for probability function
Definition: EvtB0toKsKK.cc:136
double BWBF(const double &q, const unsigned int &L)
Meson radius
Definition: EvtB0toKsKK.cc:479
EvtTensor4C Tmunu(const EvtVector4R &p4a, const EvtVector4R &p4b, const EvtVector4R &p4c)
Function Tensor Tmunu
Definition: EvtB0toKsKK.cc:423
EvtVector4R Boost(const EvtVector4R &p4, const EvtVector4R &boost)
Parameter for boost frame
Definition: EvtB0toKsKK.cc:538
std::string getName()
Get function Name
Definition: EvtB0toKsKK.cc:31
void decay(EvtParticle *p)
Member of particle in EvtGen.
Definition: EvtB0toKsKK.cc:146
EvtTensor4C Multiply(const EvtTensor4C &t1, const EvtTensor4C &t2)
Function Tensor Multiply
Definition: EvtB0toKsKK.cc:437
EvtComplex A_chic0ks(const EvtVector4R &p4ks, const EvtVector4R &p4kp, const EvtVector4R &p4km)
A_chic0ks is amplitude of chic0ks.
Definition: EvtB0toKsKK.cc:800
Abstract base class for different kinds of events.